Linux核心的整體框架

2022-06-15 20:06:10 字數 1243 閱讀 6442

參考: 蝸窩科技

1、linux核心整體框架

根據linux核心的核心功能,linux核心提出五個基本系統:

①、process scheduler,也稱作程序管理、程序排程。負責管理cpu資源,讓各個程序可以盡可能公平的方式訪問cpu。

②、memory manager,記憶體管理。負責管理memory(記憶體)資源,以便讓各個程序可以安全地共享機器的記憶體資源。另外,記憶體管理會提供虛擬記憶體的機制,該機制可以讓程序使用多於系統可用memory的記憶體,不用的記憶體會通過檔案系統儲存在外部非易失儲存器中,需要使用的時候,再取回到記憶體中。

③、vfs(virtual file system),虛擬檔案系統。linux核心將不同功能的外部裝置,例如disk裝置(硬碟、磁碟、nand flash、nor flash等)、輸入輸出裝置、顯示裝置等等,抽象為可以通過統一的檔案操作介面(open、close、read、write等)來訪問。這就是linux系統「一切皆是檔案」的體現。

④、network,網路子系統。負責管理系統的網路裝置,並實現多種多樣的網路標準。

⑤、ipc(inter-process communication),程序間通訊。ipc不管理任何的硬體,它主要負責linux系統中程序之間的通訊。

引用"蝸窩"的文章解釋 虛擬檔案系統,這個解釋太易懂了!

虛擬檔案系統(virtual file system)

傳統意義上的檔案系統,是一種儲存和組織計算機資料的方法。它用易懂、人性化的方法(檔案和目錄結構),抽象計算機磁碟、硬碟等裝置上冰冷的資料塊,從而使對它們的查詢和訪問變得容易。因而檔案系統的實質,就是「儲存和組織資料的方法」,檔案系統的表現形式,就是「從某個裝置中讀取資料和向某個裝置寫入資料」。

隨著計算機技術的進步,儲存和組織資料的方法也是在不斷進步的,從而導致有多種型別的檔案系統,例如fat、fat32、ntfs、ext2、ext3等等。而為了相容,作業系統或者核心,要以相同的表現形式,同時支援多種型別的檔案系統,這就延伸出了虛擬檔案系統(vfs)的概念。vfs的功能就是管理各種各樣的檔案系統,遮蔽它們的差異,以統一的方式,為使用者程式提供訪問檔案的介面。

我們可以從磁碟、硬碟、nand flash等裝置中讀取或寫入資料,因而最初的檔案系統都是構建在這些裝置之上的。這個概念也可以推廣到其它的硬體裝置,例如記憶體、顯示器(lcd)、鍵盤、串列埠等等。我們對硬體裝置的訪問控制,也可以歸納為讀取或者寫入資料,因而可以用統一的檔案操作介面訪問。linux核心就是這樣做的,除了傳統的磁碟檔案系統之外,它還抽象出了裝置檔案系統、記憶體檔案系統等等。這些邏輯,都是由vfs子系統實現。

Linux核心時鐘框架

逢山開路 遇水架橋,今天想自己寫個adc的驅動,發現不清楚系統各個模組的系統時鐘如何使用。總不能自己想怎麼弄,就怎麼弄吧,還是學學框架吧 使用時鐘的框架。adc clock clk get null,adc if adc clock clk use adc clock clk enable adc ...

GIS 整體框架介紹

gis 整體框架介紹 arcgis server是乙個發布企業級gis應用程式的綜合平台,提供了建立和配置gis應用程式和服務的框架,可以滿足各種客戶端的各種需求,這是對 arcgis server乙個抽象的描述,那麼arcgis server在gis應用中具體扮演什麼樣的角色呢?使用過arcgis...

linux 核心移植(基本框架)

一 獲得linux原始碼 二 解壓系統原始碼 解壓命令 gzip v rootfile 壓縮乙個檔案rootfile gunzip rootfile.gz 解壓縮乙個檔案 tar命令 既可以壓縮檔案也可以解壓縮檔案,決定於tar命令後面所跟引數 a將檔案新增到現有的tar包 c表示建立新的tar包 ...