史上最大一次的核心改版Linux 4.9

linux-kernel-4.9-640x356

Linux 25壽星生日,並釋出了史上最大一次的核心(kernel)改版- Linux 4.9新版 (X’mas gift),Google發展了三年的模組化手機專案Project Ara雖然夭折,反而成了在這次4.9新版中貢獻了大量程式碼。Linux之父Linus Torvalds在12月11日釋出了4.9版,並在發布郵件中興奮地說:「I’m pretty sure this is the biggest release we’ve ever had, at least in number of commits.

過去幾次Linux Kernel核心程式碼大修改大多為了特定Topics,例如4.2版核心大量增加了AMD GPU的支援程式碼,又如3.2版核心程式碼大增是因為開發團隊的組織重整,但4.9版就是程式碼大幅度的修改。ARM (RISC) 處理器的歷史 .Linus Torvalds說「Google的Ara模組化手機計畫雖然停產了,但是它貢獻了大量程式碼到4.9新版,特別是模組化手機專案Project Ara的Greybus)也加入了Linux 4.9版。」。

因為( Greybus)可以讓擴充模組快速建立連結和鎖定,這也意味著,Linux 4.9版核心支援Greybus機制後,Ara模組化手機計畫中模組化設計思維,未來將可運用到任何Linux裝置上,共通的模組化筆電、模組化桌機都可能出現,不是靠單一品牌實現模組化,而是可以多品牌共同支援的模組化設計。

Linus Torvalds最愛的新特色是Andy Lutomirski開發的Vmapped kernel stacks機制,使用虛擬映射核心層配置的作法,來保護記憶體分頁,一旦有任一個核心層發生溢位(overflow),系統更容易也更快能識別出問題層,不用等到系統出錯才知道,可以進一步強化Linux核心的安全。

4.9版也引進了記憶體保護金鑰Memory Protection Key)的機制,可以透過pkey機制,來控制指定記憶體分頁的存取,未來Intel處理器將會支援這項機制。編譯器Complier如GCCLLVM/Clang編譯器也早已支援了這項記憶體保護金鑰機制。

開源AMDGPU圖形驅動程式(driver)也有不少更新,像是新增GPU支援虛擬螢幕,如可以遠端桌面工具存取GPU建立的虛擬桌面等。許多人期待的則是新增對GCN 1.0(Southern Islands版本)的實驗模式支援,能關閉現有GCN 1.0,讓AMDGPU啟用更新的GCN 1.1/CIK版本(第二代GCN架構),來使用AMDGPU DRM(Direct Rendering Manager),如此一來,舊版顯示卡也能使用新版GPU驅動程式,從Linux核心提供3D加速效果。

硬體裝置的支援上,4.9版增加對29款ARM裝置的支援,其中最值得期待是對5美元超低價Raspberry Pi Zero的支援。支援裝置可參考, 其他在檔案系統、儲存機制上也有不少更新或修補,如XFS檔案系統新增共享式資料延伸機制,可以讓多人共用一個延伸磁碟區(extent)。

Posted in i.tech and tagged .