(x86)有關bootloader 過渡到kernel之間的一些資料紀錄

原來

bzImage 是由setup.bin 跟 vmlinux.bin 綁起來製作而成的
可以使用以下關鍵字查詢更詳細的資料
google://"bzImage" "vmlinux.bin" "setup.bin"



vmlinux.bin 就是整個linux kernel 的壓縮實體.setup.bin 則是負責在配置一些在執行vmlinux.bin之間該要做的硬體環境設定.沒錯,setup.bin的角色很像u-boot的一部分功能



Grub or Lilo 這類bootloader ,都會聰明的把setup.bin 跟vmlinux 分開,setup.bin 放在0x90000處,vmlinux.bin放在0x100000位置.詳細的分開知識,可以查詢
google://"grub" "0x90000" "0x100000"




setup.bin 的實際工作內容,可以查詢
google://"header.S" "setup.ld"

對於要開發bootloader 的地球人來說,以上都是必備知識


留言

這個網誌中的熱門文章

[C語言]宣告陣列的大小是0 ???

利用net-snmp 的mib2c,由一個MIB檔產出一個可執行的AgentX 程式

ubuntu 16.04開機遇到 flip_done timed out 的問題