Linux核心小梳理

2021-10-20 22:53:37 字數 1146 閱讀 7662

q:什麼是核心?

核心作為應用連線硬體裝置的橋梁,應用程式只需關心與核心互動,不用關心硬體的細節。

q:核心是起什麼作用的呢?

核心一般提供4個基本能力:

1. 程序排程: 管理程序、執行緒、決定哪個程序、執行緒使用cpu

2. 記憶體管理: 管理記憶體,決定記憶體的分配和**

3. 硬體通訊能力: 為程序與硬體裝置之間提供通訊能力

4. 提供系統呼叫: 當應用程式要執行更高許可權執行的服務,就要有系統呼叫。

q:核心是怎麼工作的?

大多數作業系統,把記憶體分成兩個區域:

1. 核心空間,這個記憶體空間僅核心程式可以訪問。

2. 使用者空間,這個記憶體空間專門給應用程式使用。

當程式使用使用者空間時,這程式就在使用者態執行,當程式使用核心空間時,這程式就在核心態執行。

應用程式如果需要進入核心空間,就需要通過【系統呼叫】

q:linux的設計理念是什麼?

linux核心設計的理念主要有這幾個點:

1. mutitask: 多工

2. smp: 對稱多工

3. elf: 可執行檔案鏈結格式

4. monolithic kernel: 單核心

mutitask ,意思是多工,linux畢竟是乙個多工的作業系統嘛

smp, 意思是對稱多工,代表每個cpu的地位是相等的,對資源的使用許可權也是相同的,多個cpu共享同乙個記憶體,每個cpu都可以訪問完整的記憶體和硬體資源。

elf,意思是可執行檔案鏈結格式,是linux作業系統中可執行檔案的儲存格式。

q:elf檔案是怎麼生成的呢?

q:elf檔案是怎麼被執行的呢?

monolithic kernel(單核心)

Linux核心梳理

提供乙個最小的通用模型,使得這個模型支援的功能是所有檔案系統的最小交集 提供乙個盡量大的通用模型,使得這個模型包含所有檔案系統功能的合集。linux採用第二種策略來實現vfs,因此vfs封裝了底層檔案系統的所有功能和抽象,vfs負責把應用層的請求 給特定的檔案系統。在處理檔案時,應用空間和核心空間使...

linux 核心相關學習梳理

1 strace跟蹤程序的系統呼叫 strace 命令 輸出程序執行過程中產生的系統呼叫 輸出的一條記錄表示一條系統呼叫 引數 c 對系統呼叫進行統計 t 記錄系統呼叫花費的時間 2 c 開發安裝相關命令 configure 命令表示對編譯平台進行檢查和編譯選項的配置,生成make file檔案 m...

Linux 核心知識梳理 12 記憶體的分類

sdram synchronous dynamic random access memory 同步動態隨機儲存器,sdram的一些引數 主要應用於fpga 記憶體中 sram static random access memory 即靜態隨機訪問儲存器。它是一種具有靜止訪問功能的記憶體,不需要重新整...