經過兩個月的開發,Linus Torvalds 發布了 Linux 核心 5.5 版本。此版本最顯著的變化包括:允許為網路介面分配備用名稱、整合 Zinc 庫中的加密功能、允許在 Btrfs RAID 1 中複製兩個以上的磁碟、監控即時修補程式狀態的機制、kunit 磁碟機測試框架、改進的 mac80211 無線協定堆疊效能、允許透過 SMB 協定存取根分割區等等。
新版本採用了 15505 個開發者補丁,補丁大小為 44 MB(更改影響了 11781 個文件,新增 609208 行程式碼,刪除 292520 行程式碼)。 5.5 版本中約 44% 的變更與裝置驅動程式相關,約 18% 與硬體架構特定程式碼的更新相關,12% 與網路協定堆疊相關,4% 與檔案系統相關,3% 與核心內部子系統相關。
Linux內核5.5的主要新穎之處
在 Linux 核心 5.5 的新版本中,Btrfs檔案系統增加了對xxhash64、blake2b 和 sha256 校驗和的支援。
在 RAID1 實作中,可以將資料複製到三個(raid1c3)或四個(raid1c4)裝置(先前複製僅限於兩個裝置),從而允許在同時遺失 2 個或 3 個裝置的情況下保存資料。
而Ext4 提供了使用更小塊進行加密的功能(以前,加密只能透過大小與記憶體頁大小 (4096) 相符的區塊來完成)。
F2FS實作了一種檔案固定模式,沿著 2MB 邊緣對齊,以便將其放置在完全正確的段中,從而確保垃圾回收器不會進一步重新分配該檔案。
另一個重要的新功能是增加了對使用 hwmon API(與 libsensors 和“sensors”命令兼容)監控NVMe 設備溫度傳感器狀態的支持,這不需要提升權限即可訪問(以前,溫度信息反映在“智能日誌”中,只有 root 用戶才能訪問)。
此外,作為WireGuard VPN整合專案的主要部分,Zinc 加密庫中的許多功能被移植到標準加密 API 中,包括 ChaCha20 和 Poly1305 演算法的快速實現。
x86架構的KVM虛擬機管理程式能夠處理五層嵌套的記憶體頁表,並為AMD處理器增加了對XSAVES指令的支援。對於ARM64處理器,則增加了傳輸時序資訊的功能。
加密子系統還添加了對 blake2b 雜湊函數的支持,在保持 SHA-3 可靠性可靠性的同時,提供了非常高的雜湊計算性能,以及 Blake2s 的簡化版本。
Linux 核心 5.5 版本的另一個重大變更是為網路介面指派備用名稱的新機制,該機制允許同時為一個介面使用多個名稱(包括使用多個 udev 範本)。
名稱的大小可以達到 128 個字符(以前網絡接口的名稱限制為 16 個字符)。
若要新增備用名稱,請使用指令「ip link prop add」(例如,「ip link prop add enx00e04c361e4c altname someothername」)。此實作是基於向介面添加額外屬性,未來可以擴展以支援其他參數,而不僅限於備用名稱。
最後,如果您想了解有關此新版 Linux 核心所包含的完整更改列表的更多信息,可以訪問以下連結進行查閱。
至於新版本的可用性,您可以從其官方網站下載代碼來編譯內核,或者等待編譯後的包包含在您的發行版存儲庫中。