內核簡介

本篇簡單介紹內核相關的基本概念。

主要內容:

  • 單內核和微內核
  • 內核版本號

1. 單內核和微內核

 

原理

優勢

劣勢

單內核

整個內核都在一個大內核地址空間上運行。 1. 簡單。
2. 高效:所有內核都在一個大的地址空間上,所以內核各個功能之間的調用和調用函數類似,幾乎沒有性能開銷。
一個功能的崩潰會導致整個內核無法使用。

微內核

內核按功能被劃分成各個獨立的過程。每個過程獨立的運行在自己的地址空間上。 1. 安全:內核的各種服務獨立運行,一種服務掛了不會影響其他服務。 內核各個服務之間的調用涉及進程間的通信,比較複雜且效率低。

Linux的內核雖然是基於單內核的,但是經過這麼多年的發展,也具備微內核的一些特徵。(體現了Linux實用至上的原則)

主要有以下特徵:

支持動態加載內核模塊
支持對稱多處理(SMP)
內核可以搶佔(preemptive),允許內核運行的任務有優先執行的能力
不區分線程和進程

2. 內核版本號

內核的版本號主要有四個數組組成。比如版本號:2.6.26.1 其中,

2 - 主版本號

6 - 從版本號或副版本號

26 - 修訂版本號

1 - 穩定版本號

副版本號表示這個版本是穩定版(偶數)還是開發版(奇數),上面例子中的版本號是穩定版。

穩定的版本可用於企業級環境。

修訂版本號的升級包括BUG修正,新的驅動以及新的特性的追加。

穩定版本號主要是一些關鍵性BUG的修改。


书籍推荐