內核簡介
本篇簡單介紹內核相關的基本概念。
主要內容:
- 單內核和微內核
- 內核版本號
1. 單內核和微內核
原理 |
優勢 |
劣勢 |
|
單內核 |
整個內核都在一個大內核地址空間上運行。 | 1. 簡單。 2. 高效:所有內核都在一個大的地址空間上,所以內核各個功能之間的調用和調用函數類似,幾乎沒有性能開銷。 |
一個功能的崩潰會導致整個內核無法使用。 |
微內核 |
內核按功能被劃分成各個獨立的過程。每個過程獨立的運行在自己的地址空間上。 | 1. 安全:內核的各種服務獨立運行,一種服務掛了不會影響其他服務。 | 內核各個服務之間的調用涉及進程間的通信,比較複雜且效率低。 |
Linux的內核雖然是基於單內核的,但是經過這麼多年的發展,也具備微內核的一些特徵。(體現了Linux實用至上的原則)
主要有以下特徵:
支持動態加載內核模塊
支持對稱多處理(SMP)
內核可以搶佔(preemptive),允許內核運行的任務有優先執行的能力
不區分線程和進程
2. 內核版本號
內核的版本號主要有四個數組組成。比如版本號:2.6.26.1 其中,
2 - 主版本號
6 - 從版本號或副版本號
26 - 修訂版本號
1 - 穩定版本號
副版本號表示這個版本是穩定版(偶數
)還是開發版(奇數
),上面例子中的版本號是穩定版。
穩定的版本可用於企業級環境。
修訂版本號的升級包括BUG修正,新的驅動以及新的特性的追加。
穩定版本號主要是一些關鍵性BUG的修改。