生活随笔
收集整理的這篇文章主要介紹了
Uboot启动流程分析
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Uboot是嵌入式系統中最常用的bootloader,這里我們以s3c2410為例分析一下uboot的啟動流程。首先通過uboot的鏈接文件,我們可以看到uboot運行是執行的第一段代碼在start.S中。
ENTRY(_start)
????????SECTIONS
????????{
????????????????. = 0x00000000;
????????. = ALIGN(4);
????????????????.text :
????????????????{
????????????????????????cpu/arm920t/start.o (.text)
????????????????????????*(.text)
????????????????}
????????. = ALIGN(4);
????????????????.rodata : { *(.rodata) }
????????. = ALIGN(4);
????????????????.data : { *(.data) }
????????. = ALIGN(4);
????????????????.got : { *(.got) }
????????. = .;
????????????????__u_boot_cmd_start = .;
????????????????.u_boot_cmd : { *(.u_boot_cmd) }
????????????????__u_boot_cmd_end = .;
????????. = ALIGN(4);
???????????????? __bss_start = .;
????????????????.bss : { *(.bss) }
????????????????_end = .;
????????}
我們找到這個文件,以這個文件為起點看uboot的啟動流程。這里我們通過一個圖來說明這個過程。
最后我們把整個uboot在執行過程中,代碼的搬移籍內存的使用情況通過一個圖,來說明一下。
總結
以上是生活随笔為你收集整理的Uboot启动流程分析的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。