<pre id="yvc9s"><tt id="yvc9s"><noscript id="yvc9s"></noscript></tt></pre>
    1. <label id="yvc9s"><button id="yvc9s"></button></label>

      <address id="yvc9s"><var id="yvc9s"><ruby id="yvc9s"></ruby></var></address>

        <label id="yvc9s"><button id="yvc9s"></button></label>

        <dfn id="yvc9s"></dfn>

        <address id="yvc9s"><ul id="yvc9s"><source id="yvc9s"></source></ul></address>
      • 赤峰 鼎好職業(yè)技術(shù)學(xué)校--專注計算機教育27年官方網(wǎng)站!

        赤峰鼎好職業(yè)技術(shù)學(xué)校

        赤峰鼎好職業(yè)技術(shù)學(xué)校


        CHIFENG DINGHAO ZHIYE JISHU XUEXIAO

        全國咨詢熱線
        0476-2892015
        赤峰鼎好職業(yè)技術(shù)學(xué)校,赤峰計算機學(xué)校!
        當(dāng)前位置:首頁 > 教育教學(xué)> 實戰(zhàn)課

        軟件測試Linux系統(tǒng)啟動流程探討

        人氣:   發(fā)表時間:2017-04-12 14:39:50   【

        linux系統(tǒng)啟動流程:

          linux系統(tǒng)啟動流程,按層次分的話,可以分為內(nèi)核空間的啟動與用戶空間的啟動。

          下面先說說內(nèi)核空間的啟動流程。

          一個linux要跑起來,在最簡陋的情況下,必須有:kernel , lib ,application

          kernel功能:加載驅(qū)動程序,內(nèi)存管理,進(jìn)程管理,文件系統(tǒng),網(wǎng)絡(luò)管理,安全管理,glibc

          庫: 是一個函數(shù)的集合,每個庫文件是一個依賴于其他應(yīng)用程序才能運行起來的代碼片段。

          庫頭文件:一個庫中有多少函數(shù),不同函數(shù)之差接受的參數(shù),類型不同,這些特點需要有一個文件來對其進(jìn)行描述,這種對庫中的函數(shù)的描述性文件就稱為庫文件。

          application:就是平時我們用的二進(jìn)制程序了

          要了解linux的啟動流程,就要先了解下面的幾個概念。

          內(nèi)核的設(shè)計流派:

          單內(nèi)核:緊密,效率高,牽一發(fā)而動全身。一個小的故障全局崩潰。

          微內(nèi)核:離散設(shè)計,效率相對低,子系統(tǒng)故障不會影響全局。

          linux為單內(nèi)核。

          雖是單內(nèi)核,但卻充分吸引微內(nèi)核設(shè)計思想,將能選擇的功能,統(tǒng)統(tǒng)做成功能模塊。即使是內(nèi)核,自己也被做成模塊。一般為.ko結(jié)尾的文件。ko即kernel object。 用戶空間的功能模塊稱為share object,以.so結(jié)尾

          支持模塊的在線裝卸。

          內(nèi)核組成部分:

          1:核心文件:/boot/vmlinuz-version-release

          2: 模塊文件: /lib/modules/version-release

          ramdisk: 基于內(nèi)存的磁盤。將硬盤中的mbr載入內(nèi)存,得到文件系統(tǒng)驅(qū)動程序,加載grub。進(jìn)入grub菜單。

          內(nèi)核空間系統(tǒng)啟動流程解析:

          post –> bios –> bootloader(引導(dǎo)從哪塊硬盤加載) –> mbr –> 加載stage2中的grub —> kernel –> init

          post: poweron self test  加電自檢。自檢的過程由主板上的rom芯片自己定義。rom芯片就是傳說中的cmos。

          bios : base input output system. 也是裝在rom中的一個簡單的程序,主要作用就是按用戶設(shè)置的引導(dǎo)順序,從指定的設(shè)備加載寫有bootloader的設(shè)備。

          mbr:加載指定的設(shè)備后,根據(jù)mbr內(nèi)容中的stage1的指向,得知stage2的位置,并且加載stage1_5到內(nèi)存中,得到stage2所在硬件設(shè)備的驅(qū)動程序,加載驅(qū)動后能讀到stage2的內(nèi)容,即grub。

          grub: grand uniform bootloader 。統(tǒng)一加載器。grub會提供一個菜單,給用戶選擇要啟動的操作系統(tǒng)的kernel。

          kernel: kernel加載到內(nèi)存中后,自解壓,自初始化,探測各硬件后裝載硬件的驅(qū)動程序,以只讀方式掛載根文件系統(tǒng),并啟動init進(jìn)程。

          至此,內(nèi)核空間的啟動完成了。剩下的就是用戶空間的啟動了


        赤峰鼎好計算機學(xué)校版權(quán)聲明書:
        本網(wǎng)站的所有內(nèi)容版權(quán)歸赤峰鼎好計算機學(xué)校所有,不允許復(fù)制及其他任何形式使用。
        對未經(jīng)許可擅自使用者,本校保留追究其法律責(zé)任的權(quán)利。

        在線客服

        招生咨詢
        點擊這里給我發(fā)消息
        其他咨詢
        點擊這里給我發(fā)消息
        亚洲成人在线中文字幕AV_欧美一级 片内射欧美A999_韩国A级一片永久免费_香蕉久久夜色精品
        <pre id="yvc9s"><tt id="yvc9s"><noscript id="yvc9s"></noscript></tt></pre>
        1. <label id="yvc9s"><button id="yvc9s"></button></label>

          <address id="yvc9s"><var id="yvc9s"><ruby id="yvc9s"></ruby></var></address>

            <label id="yvc9s"><button id="yvc9s"></button></label>

              <dfn id="yvc9s"></dfn>

              <address id="yvc9s"><ul id="yvc9s"><source id="yvc9s"></source></ul></address>