流程圖
power on -> BIOS -> boot loader -> Linux kernel & initrd
-> init scripts -> system
* initrd(init ram disk)補充 *
initrd簡單的說就是將電腦的記憶體(ram)模擬成硬碟。
initrd要包含有
1. a linuxrc script
2. The kernel modules that are needed
boot loader 會將 initrd 和 kernel 載入記憶體。然後 kernel 會偵測現
有的 initrd ,將他解壓縮並掛載成臨時的 root filesystem 。最後開始
執行 linuxrc script。
linuxrc 這個程式會載入所有被需要的模組,(並不是全部模組呀~)
然後掛載真正的 root filesystem(你的硬碟分割區 "/")並執行
pivot_root 。
這個動作是轉換 initrd 這個臨時 root filesystem 到真正的 root 上。
一直到正確的 root filesystem被掛載後 linuxrc才能夠繼續將開機流程
遞交給 init (/sbin/init) program
個人心情和 Linux / FreeBSD 等技術
沒有留言:
張貼留言