在多數計算機上,從Linux啟動到進入系統的命令行或者圖形界面時間并不長。嵌入式Linux啟動過程中都做了什么工作,會展現出一個功能強大的系統,本文分析Linux系統啟動過程。學習和掌握Linux啟動的過程對了解Linux內核工作流程有很大幫助。Linux系統初始化可以分成兩大部分:內核初始化和系統初始化。本文分析從打開電源開關到進入用戶界面Linux系統的工作過程。
嵌入式linux啟動過程
1、嵌入式linux啟動第一步--加載BIOS
當你打開計算機電源,計算機會首先加載BIOS信息,BIOS信息是如此的重要,以至于計算機必須在最開始就找到它。這是因為BIOS中包含了CPU的相關信息、設備啟動順序信息、硬盤信息、內存信息、時鐘信息、PnP特性等等。
2、嵌入式linux啟動第二步--讀取MBR
眾所周知,硬盤上第0磁道第一個扇區被稱為MBR,也就是Master Boot Record,即主引導記錄,它的大小是512字節,里面存放了預啟動信息、分區表信息。系統找到BIOS所指定的硬盤的MBR后,就會將其復制到0×7c00地址所在的物理內存中。其實被復制到物理內存的內容就是Boot Loader,而具體到電腦,就是lilo或者grub了。
3、嵌入式linux系統啟動第三步--Boot Loader
Boot Loader 就是在操作系統內核運行之前運行的一段小程序。通過這段小程序,我們可以初始化硬件設備、建立內存空間的映射圖,從而將系統的軟硬件環境帶到一個合適的狀態,以便為最終調用操作系統內核做好一切準備。系統讀取內存中的grub配置信息(一般為menu.lst或grub.lst),并依照此配置信息來啟動不同的操作系統。
4、嵌入式linux啟動第四步--加載內核
| 歡迎光臨 (http://m.raoushi.com/bbs/) | Powered by Discuz! X3.1 |