<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                2.1 引導 這是Linux系列文章第二篇,我們看一下linux系統是怎么引導的,相對與windows的解讀,Linux還是有些不一樣的地方。 2.2 init進程 這是系統的最先啟動進程,在硬件引導完成將控制權交給系統內核的時候,這個進程產生。并且他的PID號總是1。 當由BIOS確定從那個硬件設備引導后,讀取MBR,確定第二引導程序,這個引導程序主要作用是加載內核,執行一系列的引導過程,當檢測完硬件之后,內核產生init進程,init進程創建其他守護進程的方式是調用SHELL腳本,而這些啟動腳本大多數是以RC文件,比如RC0.D等,這下明白這些文件是干什么用的了把,rc是run command的簡寫。是操作系統發展的遺留痕跡。 2.3 ?引導過程 大體上分為6個階段: ? ? ? ? ? ? ? ? ?加載初始化內核; ? ? ? ? ? ? ? ? ?檢測硬件; ? ? ? ? ? ? ? ? ?創建內核進程; ? ? ? ? ? ? ? ? ?操作員干預(假如); ? ? ? ? ? ? ? ? ?執行系統啟動腳本; ? ? ? ? ? ? ? ? ?多用戶模式運行; 內核是一個二進制的鏡像,位置在/boot/vmlinuz,或者/vmlinuz下,linux系統是單內核結構,所以整個內核都在內存中。內核首先要做的往往是檢測硬件的情況,驅動程序由內核加載。 在內核初始化后,會有幾個自發的進程被創建,他們并不是由fork來創建的,我們在ps命令中看到的一些進程名字被中括號包起來,并且PID號都比較小的,往往都是內核創建的,其實是內核的組成部分,裝扮一下更像進程罷了。 列舉幾個: ? ? ? ? ? ? ? ? ? ? ? kjournald ? ? ? ? ? ? ? ? ? ? ? kswapd ? ? ? ? ? ? ? ? ? ? ? kreclaimd ? ? ? ? ? ? ? ? ? ? ? ksoftirqd ![](https://box.kancloud.cn/2016-05-17_573adb4f64f2f.png) 可以看到PID號都很小,在執行啟動腳本之后,生成getty進程,好讓用戶登錄進來。 引導涉及GRUP程序,這是目前很流行的引導加載程序,在多系統的時候尤為重要,不涉及了,有興趣的可以自己查查資料。 這里面提及一下單用戶模式,在linux啟動的時,可以人工干預,變為單用戶登錄,目前我所應用的就是忘了root密碼,選擇這個登錄去修改密碼。 2.4 啟動腳本 說到啟動腳本,必須提及init進程,這里面涉及一個運行級的概念 ? ? ? ? ? ? ? ? ? ? ? ? 0級:完全關閉系統; ? ? ? ? ? ? ? ? ? ? ? ? 1級:單用戶模式; ? ? ? ? ? ? ? ? ? ? ? ? 2-5級:多用戶模式; ? ? ? ? ? ? ? ? ? ? ? ? 6級:重新引導; 0級和6級,系統是不能停留在這兩個級別中的,當計算機啟動的時候,從0運行級,逐步提升運行等級,目前大多數Linux發行版默認是5級,這個是有init進程完成這個運行級的提示過程。 在/etc/init.d文件夾下,存放著很多守護進程的啟動腳本,我們也經常從這里啟動進程。不過init進程在將系統帶入一個新的運行級別的時候,是通過rc0.d,rc1.d....等目錄去尋找當前運行級的啟動腳本。當然目錄下的是符號鏈接,指向的還是/etc/init.d文件夾下的腳本。 未完待續。。。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看