本節書摘來自異步社群《linux核心修煉之道》一書中的第1章,第1.2節,作者:華清遠見嵌入式教育訓練中心 任橋偉著,更多章節内容可以通路雲栖社群“異步社群”公衆号檢視
linux核心修煉之道
很多年來,linux核心的版本都是以x.y.z這3個數字的形式設定的,偶數y代表穩定版,奇數y代表不穩定的開發版。所謂的穩定版本是指核心的特性已經固定,代碼運作穩定可靠,不再增加新的特性,要改進也隻是修改代碼中的錯誤。而不穩定版本是指相對于上一個穩定版本增加了新的特性,還處于發展之中,代碼運作不大可靠。
z的遞增表示個别的修正版釋出。“穩定”的1.0.0核心在1994年3月釋出,随後釋出了“不穩定”的1.1.z分支,直到1995年3月釋出了新的穩定版1.2.0。x數字從1跳躍到2是在1996年6月,正式推出穩定版2.0,之後又有不穩定版2.1 分支,然後是“穩定”的2.2、2.4和2.6。
1.2.6.x核心
這些版本都是linus釋出的基礎穩定版(basic stable),如果發現了沖突或嚴重的瑕疵,以基礎穩定版為基礎,新的穩定的修正版本2.6.x.y就會被釋出出來。
2.2.6.x.y核心
這些版本也是穩定的,它們包含了對2.6.x核心的一些問題的修複。對于那些想要最近的穩定核心,且對于測試開發中的實驗性版本沒有興趣的使用者來說,可以使用這些版本。
3.-rc核心
這些是候選的釋出核心,是當linus認為目前的git(linus為了幫助管理linux核心而開發的一個開放源碼的版本控制軟體)核心樹處于一個健全的穩定狀态,足以用于測試的時候,而釋出的核心。
這些核心是不穩定的,如果試着運作它們可能會不時出現問題,但是它們最終會變成下一個穩定的核心,是以,有更多的人來測試它就顯得非常重要。
4.-git核心
這些核心是linus的核心樹快照(在一個git倉庫中管理着,是以而得名)。-git核心通常每天都釋出,且代表了linus的核心樹的目前狀态。
5.-mm核心
這些核心是andrew morton釋出的實驗性版本,作為一個新特性和實驗性更新檔的試驗場而存在,一旦一個更新檔在-mm核心中經過一段時間被證明有價值,為了使其包含在主流核心中,andrew就會把它推薦給linus。
雖然鼓勵通過-mm核心把更新檔推薦給linus,但有時子系統的維護者或者個人會直接把更新檔推給linus,盡管它們有些時候并沒有在-mm中得到測試。通常情況下,你應該盡力使自己的更新檔通過-mm核心中最大程度的測試後,再合并到主流核心中。
-mm核心是最具實驗性的核心分支,在運作中要比其他任何分支都可能承擔更大的風險,它的目的就是為了在新的改變被加到主流核心之前,消除各種bug。
6.未來的版本号
目前2.6核心的釋出已經持續了很長時間,那麼什麼時候推出2.7呢?linus的回答是,不會有2.7,他不會再遵循舊的模式,新的模式更好,不值得重複過去。他表示正在考慮新的編号方式,一種基于時間的版本号。比如用2008.7取代2.6.26,中間第二個數字代表年,2008年就是2.8,2009年的第一個版本就是2.9.1,之後2010年是3.0,等等。但他又表示“大而無意義的數字是令人不快的,26已經夠大了”。