inside uboot (二) 启动流程
1. S3C6410 啟動流程
1). 6410上電后,首先執行片內iROM的程序(BL0),初始化時鐘和看門狗等外圍器件。
2). 然后把flash中頭4K(BL1)的內容加載到片內的SRAM中執行。
3). 在SRAM中執行的BL1,初始化主內存后,將BL2加載到主內存,然后跳轉到主內存中執行。
4). 最后BL2來加載kernal和rootfs到主內存中。
總結:從上面的流程圖可以看到,uboot被分成了BL1和BL2兩個部分,6410在片內給了一塊叫做墊腳石的SRAM讓我們可以
執行我們的BL1,在BL1中我們可以對外部的內存芯片進行初始化并加載BL2來執行,因為外部內存芯片容量很大,因此我們
可以把uboot主要功能都放在BL2中來做,最后加載kernel和rootfs到內存中,以完成操作系統的啟動。
? ? ? ?實際在6410的uboot,BL1和BL2是一個程序,在uboot程序開頭會判斷自己是SRAM中運行還是在主內存中運行,如果是
在SRAM中則執行頭4K的即BL1的內容,如果是在主內存中運行則會直接跳轉到4K以后即BL2中運行。
2. S5PV210?啟動流程
1. BL0的作用和6410一樣
2. BL1被加載到片內的SRAM中執行。
3. S5PV210的片內SRAM被增大到了96KB,從圖上看出,三星希望BL1把BL2也加載到片內的SRAM中執行。
4. 最后BL2來加載kernel和rootfs到外部內存中執行,來完成操作系統的啟動。
總結:從上面的流程來看,唯一不同的是,BL1和BL2都被加載到了片內的 SRAM中執行。但是片內的SRAM只有96K,
雖然比6410要大,但是還是有局限性,所以uboot并沒有按照210官方手冊方式進行處理,依然是和6410一樣將BL2加載
到了外部內存中執行。
總結
以上是生活随笔為你收集整理的inside uboot (二) 启动流程的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 豆瓣8.6分!神片《疯狂的麦克斯4》前传
- 下一篇: 男子骑车撞上路边宝马X5 转身就跑 !网