ubuntu 10 04以及10 10啟動流程分析

2021-05-27 09:29:21 字數 1151 閱讀 4859

標籤: 

ubuntu

啟動流程

2011-02-14 15:53

ubuntu10.04以及10.10啟動流程與以前的版本相比,啟動流程有所不同。我也是初學,琢磨了乙個下午,才理清他的工作流程。至於裡面詳細的指令碼檔案,簡單的能看的懂,複雜的我也不太想去分析,我的目標是驅動程式的編寫。

1.加電自檢,bios找出儲存裝置中的mbr,加在mbr中的引導程式。

2.找出1-62扇區中的引導程式,並執行他。或者找出mbr中的磁碟分割槽表,找出活動的磁碟分割槽。載入並執行位於/或者/boot分割槽中的第二階段引導程式

3.讀取/boot/grub/grub.cfg配置檔案,根據裡面的配置,此時在控制台上會出現乙個啟動選單。如果是雙系統的話,此時讓你選擇啟動windows還是linux。

4.根據使用者的選擇,載入系統核心檔案和磁碟記憶體映像檔案,將控制權交給核心

5.解壓磁碟記憶體映像檔案到/dev/ram0裝置中。釋放磁碟記憶體映像占有的記憶體空間

6.安裝/dev/ram0裝置,把初始記憶體映像檔案安裝成乙個臨時/檔案系統。

7.系統檢查硬體環境,配置硬體驅動程式。根據需要載入各種驅動模組。

8.如果系統存在/linuxrc檔案,以超級使用者執行他。

9.解除安裝臨時/檔案系統,釋放記憶體空間,安裝實際的/檔案系統。

10.訪問/檔案系統。執行/sbin/init程式,把引導控制權交給init程序。有init程序完成系統的生成過程。

11.init檢索/etc/init目錄,找出並執行其中的rc-sysinit.conf檔案。設定預設的執行水平為2.在這裡我們要根據倒數最後兩行的指令碼檔案即:||etc/init.d/rcs這一句。以及下面的切換到預設的執行水平。我們可以看到在rcs指令碼中只有一句命令:exec /etc/init.d/rc  s.執行/init.d中的rc指令碼檔案,引數為s。

13:執行完後,執行rc-sysinit.conf中的最後一句,即排程執行telinit程式。切換到預設執行水平

14:根據/etc/init/rc.conf指令碼來執行相應執行水平的系統呼叫etc/init.d/rc  $runlevel

注:這是我結合以前的書籍,以自己的理解琢磨的,中間可能有誤,等將來相關書籍出現以後,再進行修改。對於這個流程,現在只是進行乙個直觀的認識。對於下一步的嵌入式linux學習,有乙個直觀的概念。以後在進行深入。

ubuntu10 04使用小結

最近由於要學習linux下的c和c 程式設計,我選擇了比較好安裝的桌面版的linux發行版本ubuntu10.04 lts ubuntu 10.04 desktop i386.iso 並採用wubi安裝,像在window下安裝普通軟體一樣就能安裝,無需複雜的分割槽和資料備份就可以成功安裝,這個版本對...

ubuntu10 04使用小結

最近由於要學習linux下的c和c 程式設計,選擇了比較好安裝的ubuntu10.04 lts版本,這個採用wubi安裝,像在window下安裝普通軟體一樣就能安裝,無需複雜的分割槽和資料備份就可以成功安裝,這個版本對於我個人學習linux程式設計已經不錯了!但是使用windows習慣了,對於lin...

Ubuntu 10 04正式發布

在進行了3個alpha 試版本 2個beta測試版本以及1個rc候選版本後,ubuntu 10.04 lst正式發布了,作為長期支援版本 lst 其桌面支援週期為3年,伺服器版本主流支援週期為5年。ubuntu 10.04 lst採用gnome 2.30.0桌面環境,基於linux核心2.6.32....