這是我見過的最詳細的Linux系統結構講解!

老男孩IT教育機構發表於2022-03-25

  對於每個Linux學習者來說,除了掌握常用的工具和命令之外,瞭解Linux作業系統的目錄結構,也是學好Linux至關重要的一步,小編為大家整理了這篇文章,相信一定會對你有所幫助,請看下文:

  Linux作業系統有4個部分:核心、shell、檔案系統和應用程式。

  其中,核心、shell和檔案系統一起形成了基本的作業系統結構,因此使用者可以執行程式、管理檔案並使用系統。

  1、Linux核心

  核心是作業系統的核心,具有很多最基本的功能,負責管理系統的程式、記憶體、裝置驅動程式、檔案和網路系統,決定著系統的效能和穩定性。

  2、記憶體管理

  對任何一臺計算機而言,其記憶體以及其它資源都是有限的。為了讓有限的實體記憶體滿足應用程式對記憶體的大需求量,Linux採用了稱為“虛擬記憶體”的記憶體管理方式。Linux將記憶體劃分為容易處理的“記憶體頁”(對於大部分體系結構來說都是4KB)。Linux包括了管理可用記憶體的方式,以及物理和虛擬對映所使用的硬體機制。

  不過記憶體管理要管理的可不止4KB緩衝區。Linux提供了對4KB緩衝區的抽象,例如slab分配器。這種記憶體管理模式使用4KB緩衝區為基數,然後從中分配結構,並跟蹤記憶體頁使用情況,比如哪些記憶體頁是滿的,哪些頁面沒有完全使用,哪些頁面為空。這樣就允許該模式根據系統需要來動態調整記憶體使用。

  為了支援多個使用者使用記憶體,有時會出現可用記憶體被消耗光的情況。由於這個原因,頁面可以移出記憶體並放入磁碟中。這個過程稱為交換,因為頁面會被從記憶體交換到硬碟上。記憶體管理的原始碼可以在./linux/mm中找到。

  3、程式管理

  程式實際是某特定應用程式的一個執行實體。在Linux系統中,能夠同時執行多個程式,Linux透過在短的時間間隔內輪流執行這些程式而實現“多工”。這一短的時間間隔稱為“時間片”,讓程式輪流執行的方法稱為“程式排程” ,完成排程的程式稱為排程程式。

  程式排程控制程式對CPU的訪問。當需要選擇下一個程式執行時,由排程程式選擇最值得執行的程式。可執行程式實際上是僅等待CPU資源的程式,如果某個程式在等待其它資源,則該程式是不可執行程式。Linux使用了比較簡單的基於優先順序的程式排程演算法選擇新的程式。

  4、檔案系統

  和DOS等作業系統不同,Linux作業系統中單獨的檔案系統並不是由驅動器號或驅動器名稱(如A: 或 C:等)來標識的。相反,和UNIX作業系統一樣,Linux作業系統將獨立的檔案系統組合成了一個層次化的樹形結構,並且由一個單獨的實體代表這一檔案系統。Linux將新的檔案系統透過一個稱為“掛裝”或“掛上”的操作將其掛裝到某個目錄上,從而讓不同的檔案系統結合成為一個整體。

  Linux作業系統的一個重要特點是它支援許多不同型別的檔案系統。Linux中最普遍使用的檔案系統是Ext2,它也是Linux土生土長的檔案系統。但Linux也能夠支援FAT、VFAT、FAT32、MINIX等不同型別的檔案系統,從而可以方便地和其它作業系統交換資料。由於Linux支援許多不同的檔案系統,並且將它們組織成了一個統一的虛擬檔案系統。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69952527/viewspace-2884054/,如需轉載,請註明出處,否則將追究法律責任。

相關文章