1. 程式人生 > >Linux體系結構

Linux體系結構

為便於更好的瞭解Linux系統的體系結構,先介紹常用的windows系統的體系結構。

       Windows系列作業系統採用微核心體系結構,模組化設計,將物件分為使用者模式層和內和模式層。使用者模式層由一組組價(子系統)構成,將與核心模式元件有關的必要資訊與其終端使用者和應用程式隔離開來。核心模式層有權訪問系統資料和硬體,能直接訪問記憶體,並在被保護的記憶體區域中執行。

Linux

         Linux作業系統是採用單核心模式的作業系統,核心程式碼結構緊湊,執行速度快。核心是Linux作業系統的主要部分,它可實現程序管理、記憶體管理、檔案系統、裝置驅動和網路系統等功能,為核外的所有程式提供執行環境。

        Linux採用分層設計,它包括4個層次。每層只能與它相鄰的層通訊,層次間具有從上到下的依賴關係,靠上的層依賴於靠下的層,但靠下的層並不依賴於靠上的層。各層系統介紹如下。

  • 使用者應用程式層:

           位於整個系統的最頂層,是Linux系統上執行的應用程式集合,常見的使用者應用程式有字處理應用程式、多媒體處理應用程式、網路應用程式等。
  • 作業系統服務:

           位於使用者應用程式與系統核心之間,主要是指那些為使用者提供服務且執行作業系統部分功能的程式,為應用程式提供系統核心的呼叫介面。X視窗系統、Shell命令解釋系統、核心程式設計介面等就屬於作業系統服務子系統。這一部分也稱為系統程式。
  • Linux核心:

            靠近硬體的是核心,即Linux作業系統常駐記憶體部分。Linux核心是整個作業系統的核心,由它實現對硬體資源的抽象和訪問排程。它為上層呼叫提供了一個統一的虛擬機器器介面,在編寫上層程式的時候不需要考慮計算機使用何種型別的物理硬體,也不需要考慮臨界資源問題。每個上層程序執行時就像它是計算機上的唯一程序,獨佔了系統的所有記憶體和其他硬體資源。但實際上,系統可以同時執行多個程序,由Linux核心保證和程序對臨界資源的安全使用。所有執行在核心之上的程式可分為系統程式和使用者程式兩大類,但他們統統執行在使用者模式之下。核心之外的所有程式必須通過系統呼叫才能進入作業系統的核心。
  • 硬體系統:

            包含Linux所使用的所有物理裝置,如CPU、記憶體、硬碟和網路裝置等。