国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

一文了解虛擬機Linux系統的幾大組件

如意 ? 來源:百家號 ? 作者:51CTO ? 2020-07-03 15:20 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

本文概述了Linux系統的幾大組件,描述了這些組件之間的關系。文章解釋了術語,并描述看似很基礎的細節。

每個Linux系統都有許多主要組件。其中一個組件(引導加載程序)從技術上講是Linux之外的,常常不被談論。其余組件都是共同打造整個Linux系統的所有軟件元素。這些組件是:

引導加載程序

內核

根文件系統

服務

應用程序/程序

引導加載程序

計算機通電、執行一些初始設置后,它會加載引導加載程序到內存中并運行該代碼。引導加載程序的主要工作是找到操作系統的二進制程序,將該二進制程序加載到內存中,然后運行操作系統。本文指Linux內核。

引導加載程序此時已完成,內存中的所有代碼和數據通常都被操作系統覆蓋。引導加載程序不會再次運行,直到計算機再次重置或重啟。

嵌入式系統中的引導加載程序不同于典型的筆記本電腦、臺式機或服務器計算機。典型的PC通常先加載進入到所謂的BIOS,然后運行Grub這個引導加載程序。嵌入式Linux系統使用Das-UBoot或U-Boot來進行引導。

內核

一旦引導加載程序將Linux內核加載到內存中并運行,內核將開始運行其啟動代碼。該啟動代碼將初始化硬件、初始化系統關鍵數據結構、初始化調度程序、初始化所有硬件驅動程序、初始化文件系統驅動程序、掛載第一個文件系統,并啟動第一個程序等。

Linux內核的主要工作是啟動應用程序,并為這些應用程序(或Linux中通常所稱的程序)之間提供協調。Linux內核不知道應該運行的所有程序。因此,Linux內核僅啟動一個程序,并讓該程序啟動所需的所有其他程序。這第一個程序名為init程序,有時簡稱“ init”。注意,這第一個程序不需要放在名為“ init”的文件中,但常常放在該文件中。

如果內核找不到init程序,內核的用途不復存在,因而崩潰。

用于嵌入式系統的Linux內核的主要區別在于,它是為了在不同的CPU架構上運行而構建的。否則,內核的運行方式與典型的PC相一致,這是其優點之一。

文件系統

在Linux中,內核將程序分別加載到內存中,內核要求這些程序存儲在組織成文件和目錄的某種介質上。文件和目錄的這種組織稱為文件系統。與許多操作系統一樣,Linux擁有介質上的文件系統(數據實際存儲在存儲介質上)和文件系統驅動程序——代碼知道如何在解釋和更新介質上的文件系統數據。

在Linux中,該介質常常是硬盤。然而,嵌入式系統常常沒有硬盤,因此介質可能是其他硬件設備,比如SD卡、閃存甚至內存。

與Windows不同,Linux文件系統與目錄而不是與驅動器號相關聯。文件系統可以與任何目錄相關聯,甚至可以與路徑中下幾層的目錄相關聯。將文件系統與目錄相關聯的這個過程名為“掛載”。Linux先從一個名為/(斜杠)的空目錄開始。在Linux啟動期間,最頂層的文件系統與該目錄相關聯(即掛載到該目錄),該文件系統的所有內容都顯示在/下。這個最頂層的文件系統名為根文件系統。

Linux系統要求以某種方式部署根文件系統。因此,該文件系統很特殊,不能只是某種隨機組合的目錄和文件。bin和sbin等更多目錄來自這個地方。

此處的要點是Linux尋找駐留在文件系統中的這第一個程序(即init程序)。需要事先創建根文件系統,然后將其掛載到“/”,之后內核才能啟動init程序。

由于嵌入式系統有不同的硬件限制,因此Linux嵌入式系統常常使用特殊的文件系統格式,而不是臺式機或便攜式計算機上使用的典型的EXT3、EXT4、btrfs或xfs。

服務

內核尋找、加載并運行init程序時,該程序隨后負責啟動系統的其余部分。這時,內核不再處于活動狀態,而是繼續協調這項任務:在所有運行中的程序之間共享硬件。

有許多不同的init程序可用。無論選擇哪個init程序,該程序都會啟動系統發揮用途的所有必需的服務和應用程序。這套服務包括設置網絡、掛載額外文件系統和創建圖形環境等。

在Linux下,服務只是在后臺運行的程序。傳統上,Linux人士將這些服務稱為守護程序,不過如今我很少看到這個術語。

應用程序/程序

init程序還負責啟動常規程序。這些程序確實與用戶交互。嵌入式系統常常只有幾個用戶程序,有時就只有一個。在嵌入式系統中,這組程序使設備能夠執行應該做的事情,例如顯示地圖和航點、收聽麥克風或顯示錄制電視節目的列表,用途無限。

摘要

因此總之,嵌入式計算機啟動時,Linux系統將執行以下步驟:

跳入到引導加載程序

跳入到內核

掛載根文件系統

加載并運行init

加載并運行后臺服務(或守護程序)

加載并運行應用程序

這每一個步驟都調用系統中所需的組件。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • Linux
    +關注

    關注

    88

    文章

    11758

    瀏覽量

    219009
  • 虛擬機
    +關注

    關注

    1

    文章

    972

    瀏覽量

    30466
  • 組件
    +關注

    關注

    1

    文章

    572

    瀏覽量

    19017
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    虛擬機數據恢復—虛擬機vmdk文件被刪除的數據恢復案例

    本次數據恢復涉及臺R710系列服務器和臺MD3200系列存儲,上層是ESXI5.5版本的虛擬機虛擬文件。因客戶機房非正常斷電,虛擬機
    的頭像 發表于 02-10 17:05 ?184次閱讀
    <b class='flag-5'>虛擬機</b>數據恢復—<b class='flag-5'>虛擬機</b>vmdk文件被刪除的數據恢復案例

    虛擬機數據恢復—異常斷電致ESXI存儲失聯?這份實戰數據恢復案例請收好

    服務器存儲數據恢復環境: 臺服務器上部署esxi虛擬化平臺。上層采用通過FreeNAS構建的iSCSI方式FCSAN功能,FreeNAS層采用UFS2文件系統。 esxi虛擬
    的頭像 發表于 11-11 14:11 ?260次閱讀

    蜂鳥e203在虛擬機unbuntu上面驗證時報錯的可能原因及解決措施

    內容:蜂鳥e203在虛擬機unbuntu上面驗證時報錯的可能原因 現象: 解決措施: 蜂鳥e203在虛擬機unbuntu上面驗證時不要重復輸入命令: make install make compile SIM=iverilog 只需輸入
    發表于 10-24 08:27

    搭建自己的ubuntu系統之創建ubuntu虛擬機

    點擊“下步”完成。指定磁盤文件,這里默認即可。默認點擊“完成”即可。至此,虛擬機創建完成。下小節中我們介紹系統虛擬機中的安裝,其在真
    發表于 09-25 09:39

    ubuntu系統安裝之使用提供的ubuntu系統

    對于零基礎的初學者,建議先使用資料包中提供的開發環境來進行ubuntu系統的基本操作,在對Linux系統有了基本了解之后再搭建屬于自己的ubuntu
    發表于 09-22 16:28

    創龍 瑞芯微 RK3562 國產 2GHz 四核A53 工業開發板—Linux開發環境搭建

    虛擬系統是指通過虛擬機軟件,在已有的物理計算機下,模擬出具有完整的硬件功能,而且完全獨立的虛擬計算機
    的頭像 發表于 07-01 10:27 ?606次閱讀
    創龍 瑞芯微 RK3562 國產 2GHz 四核A53 工業開發板—<b class='flag-5'>Linux</b>開發環境搭建

    中軟國際鴻云虛擬機安裝指南

    鴻蒙電腦作為新代分布式計算平臺,憑借其卓越的多端協同能力和智能化特性,為高效辦公提供了新選擇。針對專業軟件兼容性這核心痛點,中軟國際的鴻云虛擬機解決方案提供了務實的技術路徑。作為專為鴻蒙生態打造
    的頭像 發表于 06-23 16:31 ?4197次閱讀

    TECS OpenStack資源池虛擬機網絡二層地址無法互通的問題處理

    某運營商TECS OpenStack使用主機overlay SDN方案組網,運維人員在創建虛擬機測試虛擬機網絡狀態時發現問題:在其中臺主機上創建兩臺同網段虛擬機,
    的頭像 發表于 06-12 09:28 ?879次閱讀
    TECS OpenStack資源池<b class='flag-5'>虛擬機</b>網絡二層地址無法互通的問題處理

    全志T536 4核A55 ARM+RISC-V+NPU 17路UART 工業開發板—Linux開發環境搭建

    本章節安裝的虛擬機軟件VMware版本為16.2.5,主要提供在虛擬機上安裝Linux發行版Ubuntu20.04.6的方法。
    的頭像 發表于 06-05 14:57 ?1860次閱讀
    全志T536 4核A55 ARM+RISC-V+NPU 17路UART 工業開發板—<b class='flag-5'>Linux</b>開發環境搭建

    Vsan數據恢復——Vsan分布式文件系統虛擬機不可用的數據恢復

    臺采用VsSAN分布式文件系統的存儲設備由于未知原因關機重啟。管理員發現上層的虛擬機不可用,存儲內的數據丟失。
    的頭像 發表于 05-15 17:42 ?571次閱讀
    Vsan數據恢復——Vsan分布式文件<b class='flag-5'>系統</b>上<b class='flag-5'>虛擬機</b>不可用的數據恢復

    如何在Centos系統中部署KVM虛擬化平臺

    KVM 通過將 Linux 內核轉換為個裸機(bare-metal)管理程序(hypervisor),使得用戶可以在單物理主機上運行多個虛擬機(VM),每個
    的頭像 發表于 05-09 13:40 ?911次閱讀
    如何在Centos<b class='flag-5'>系統</b>中部署KVM<b class='flag-5'>虛擬</b>化平臺

    Linux內核編譯失敗?移動硬盤和虛擬機的那些事兒

    Linux開發中,編譯內核是項常見任務,但不少開發者在移動硬盤或虛擬機環境下嘗試時會遭遇失敗。本文將簡要探討這些問題的成因,并介紹虛擬機
    的頭像 發表于 04-11 11:36 ?992次閱讀
    <b class='flag-5'>Linux</b>內核編譯失敗?移動硬盤和<b class='flag-5'>虛擬機</b>的那些事兒

    服務器數據恢復—raid5陣列中硬盤壞道導致陣列崩潰的數據恢復案例

    服務器存儲數據恢復環境: 某品牌DS3512存儲中有組由6塊SAS磁盤組建的raid5陣列。劃分個lun分配給Linux系統服務器,并格式化成ocfs2
    的頭像 發表于 03-28 13:25 ?741次閱讀
    服務器數據恢復—raid5陣列中硬盤壞道導致陣列崩潰的數據恢復案例

    Linux 5.15.52_2.1.0 (Yocto) 是否支持Xen虛擬機管理程序?

    我正在使用 Yocto 和 i.MX8QM 板,我對 Xen 支持有幾個問題: Linux 5.15.52_2.1.0 (Yocto) 是否支持 Xen 虛擬機管理程序? If yes
    發表于 03-27 06:17

    【貝啟科技BQ3568HM開源鴻蒙開發板深度試用報告】3-ubuntu18.04虛擬機開發環境搭建

    安裝鏡像: 點擊確定即可。 開始運行: 選擇安裝即可 選擇繼續 默認安裝即可 默認即可 時區選擇,自己隨意 密碼用戶名,自己設設置 等待安裝即可 安裝完成重啟,即可 重啟后,需要密碼登錄 首次進行系統后 試下上網功能 確認OK 看看命令行
    發表于 03-18 11:28