說明:
這篇檔案來源與網絡上,至于作者是誰就不知道了,不過确實是非常精簡,是以這裡就再釋出,以作為自己收藏,同時也希望可以幫助到大家。
一.linux 核心簡介
linux 是最受歡迎的自由電腦作業系統核心。它是一個用c 語言寫成,符合posix标準的類unix 作業系統。linux 最早是由芬蘭黑客linus torvalds 為嘗試在英特爾x86架構上提供自由免費的類unix 作業系統而開發的。該計劃開始于1991年,這裡有一份linus torvalds 當時在usenet 新聞討論區comp.os.minix 所登載的貼子,這份著名的貼子标志着linux 計劃的正式開始。
在計劃的早期有一些minix 黑客提供了協助,而今天全球無數程式員正在為該計
劃無償提供幫助。
技術上說linux 是一個核心。“核心”指的是一個提供硬體抽象層、磁盤及檔案系統控制、多任務等功能的系統軟體。一個核心不是一套完整的作業系統。一套基于linux 核心的完整作業系統叫作linux 作業系統,或是gnu/linux。
linux 是一個宏核心(monolithic kernel)系統。裝置驅動程式可以完全通路硬體。linux 内的裝置驅動程式可以友善地以子產品化(modularize)的形式設定,并在系統運作期間可直接裝載或解除安裝。
linux 核心組成部分:
程序管理(process management)、定時器(timer)、中斷管理(interrupt management)、記憶體管理(memory management)、子產品管理(module management)、虛拟檔案系統接口(vfs layer)、檔案系統(file system)、裝置驅動程式(device driver)、程序間通信(inter-process communication)、網絡管理(network management)、系統啟動(system init)等作業系統功能的實作。
二.linux 核心版本号
1.第一種方式
核心是一個用來和硬體打交道并為使用者程式提供一個有限服務集的低級支撐軟體。一個計算機系統是一個硬體和軟體的共生體,它們互相依賴,不可分割。
linux 的版本号分為兩部分,即核心版本與發行版本。核心版本号由3個數字組成:r.x.y。各數字含義如下:
r:目前釋出的核心主版本。
x:偶數表示穩定版本;奇數表示開發中版本。
y:錯誤修補的次數。
一般來說,x 位為偶數的版本是一個可以使用的穩定版本,如2.4.4;x 位為奇數的版本一般加入了一些新的内容,不一定很穩定,是測試版本,如2.1.111。
2.第二種方式
major.minor.patch-build.desc
2.26.35-rc5
說明如下:
major
minor
patch
build
desc
表示主版本号,有結構性變化時才變更
表示次版本号,新增功能時才發生變化;一般奇數表示測試版,偶數
表示生産版
表示對次版本的修訂次數或更新檔包數
表示編譯(或建構)的次數,每次編譯可能對少量程式做優化或修改,但一般沒有大的(可控的)功能變化
用來描述目前的版本特殊資訊;其資訊由編譯時指定,具有較大的随意性,但也有一些描述辨別是常用的
對于desc的說明如下:
rc
smp
pp
el
mm
fc
(有時也用一個字母r),表示候選版本(release candidate),rc 後的數字表示該正式版本的第幾個候選版本,多數情況下,各候選版本之間數字越大越接近
正式版
表示對稱多處理器(symmetric multiprocessing)
在red hat linux 中常用來表示測試版本(pre-patch)
在red hat linux 中用來表示企業版linux(enterprise linux)
表示專門用來測試新的技術或新功能的版本
在red hat linux 中表示fedora core
如果在生産機上,最好不要安裝小版本号是奇數的核心。同樣,pre-patch 的核心
版本也不建議安裝在生産機上。
三、linux核心的釋出曆史
核心是linux 系統的重要組成部分,每一次核心新版本的釋出都受到linux 愛好
者的關注,下面表格中列出了linux 核心的重要發展事件。
核心版本号
時間
核心發展史
0.00
1991.2-4
兩個程序分别顯示aaa bbb
0.01
1991.9
第一個正式向外公布的linux 核心版本
0.02
1991.10.5
linus torvalds 将當時最初的0.02核心版本釋出到了minix 新
聞組,很快就得到了反應。linus torvalds 在這種簡單的任務
切換機制上進行擴充,并在很多熱心支援者的幫助下開發和推出了linux 的第一個穩定的工作版本。
0.03
0.10
1991.10
linux0.10版本核心釋出,0.11版本随後在1991年12月推出,當
時它被釋出在internet 上,供人們免費使用。
0.11
1991.12.8
基本可以正常運作的核心版本
0.12
1992.1.15
主要加入對數學協處理器的軟體模拟程式
0.95(0.13)
1992.3.8
開始加入虛拟檔案系統思想的核心版本
0.96
1992.5.12
開始加入網絡支援和虛拟檔案系統
0.97
1992.8.1
0.98
1992.9.29
0.99
1992.12.13
1.0
1994.3.14
linux1.0版本核心釋出,使用它的使用者越來越多,而且linux 系統的核心開發隊伍也建起來了。
1.2
1995.3.7
2.0
1996.2.9
2.2
1991.1.26
2.4
2001.1.4
linux2.4.0版本核心釋出。
2.6
2003.12.17
linux2.6版本核心釋出,與2.4核心版本相比,它在很多方面進
行了改進,如支援多處理器配置和64位計算,它還支援實作高效率線和處理的本機posix 線程庫(nptl)。實際上,性能、安全性和驅動程式的改進是整個2.6.x 核心的關鍵。
2.6.15
2006
linux2.6.15版本核心釋出。它對ipv6的支援在這個核心中有了
很大的改進。powerpc 使用者現在有了一個用于64 位和32 位
powerpc 的泛型樹,它使這兩種架構上的核心編輯成為可能。
2.6.30
2009.6
改善了檔案系統、加入了完整性檢驗更新檔、tomoyo linux 安全
子產品、可靠的資料報套接字(datagram socket)協定支援、對象儲存設備支援、fs-cache 檔案系統緩存層、nilfs 檔案系統、線程中斷處理支援等等。
2.6.32
2009.12
增添了虛拟化記憶體de-duplicacion、重寫了writeback 代碼、
改進了btrfs 檔案系統、添加了ati r600/r700 3d 和kms 支援、cfq 低傳輸延遲時間模式、perf timechart 工具、記憶體控制器支援soft limits、支援s+core 架構、支援intel moorestown 及其新的固件接口、支援運作時電源管理、以及新的驅動。
2.6.34
2010.5
添加了ceph 和logfs 兩個新的檔案系統,其中前者為分布式的
檔案系統,後者是适用于flash 裝置的檔案系統。linux kernel 2.6.34的其他特性包括新的vhost net、改進了btrfs 檔案系統、對kprobes jump 進行了優化、新的perf 功能、rcu lockdep、generalized ttl security mechanism (rfc 5082)及privatevlan proxy arp (rfc 3069)支援、asynchronous 挂起恢複等等。
2.6.36
2010.10
tilera 處理器架構支援、新的檔案通知接口fanotify、intel
顯示卡上實作kms 和kdb 的整合、并行管理工作隊列、intel i3/5平台上内置顯示卡和cpu 的智能電源管理、cifs 檔案系統本地緩存、改善虛拟記憶體的層級結構,提升桌面操作響應速度、改善虛拟記憶體溢出終結器的算法、整合了apparmor 安全模型(注:與selinux 基于檔案的标注不同,apparmor 是基于路徑的)。