幾天前 負責FreeBSD項目的開發人員提交了ZFS文件系統的翻譯計劃。 在實施項目中使用 用於“ Linux上的ZFS”項目 (ZoL),它正在為Linux開發ZFS端口。
遷移的原因是ZFS代碼庫的停滯 來自Illumos項目(OpenSolaris的分支),該項目以前被用作將ZFS相關的更改傳輸到FreeBSD的基礎。
關於 ZFS
ZFS是最初由Sun Microsystems開發的文件系統和捲管理器 適用於您的Solaris OS。 最初的含義是“ Zettabyte文件系統”,但現在是遞歸的縮寫。
ZFS以其大容量,將以前單獨的文件系統和捲管理器概念集成到單個產品中,磁盤上的新框架,輕量級文件系統以及易於存儲的空間管理而著稱。
直到最近 與ZFS有關的大多數開發工作都是由“ Linux上的ZFS”項目和Delphix公司完成的。
公司開發Delphix DelphixOS操作系統 (Illumos的分支),它先前在Illumos代碼庫中提供了ZFS支持。
的發展 ZFS將遷移到Linux
幾個月前(在年初), Delphix宣布過渡到“ Linux上的ZFS”的實現,最終將所有與ZFS相關的活動整合到了一個地方。
在正在進行的ZFS項目和受監視的ZFS項目中,僅保留了“ Linux上的ZFS”,現在可以將其視為OpenZFS的主要實現。
由於Illumos對ZFS的實現在功能方面已經大大落後於“ Linux上的ZFS”。
FreeBSD開發人員已經意識到FreeBSD社區不夠強大,無法自行維護和開發現有代碼庫。
如果繼續使用Illumos,功能差距將只會增加,並且補丁傳輸將需要越來越多的資源。
FreeBSD的ZFS支持團隊決定不接受Illumos,而是決定接受“ Linux上的ZFS”作為主要的ZFS開發項目,指導現有資源以提高其代碼的可移植性,並使用其代碼庫作為基礎。 FreeBSD的ZFS實現。
FreeBSD支持將直接集成到“ Linux上的ZFS”代碼中,並將主要在該項目的存儲庫中開發(單個存儲庫中的聯合開發問題已經與Linux的ZFS項目負責人Brian Behlendorf達成了協議)。
為什麼Linux不能在FreeBSD上繼續?
今天, FreeBSD的“ Linux上的ZFS”端口的原型已經準備好進行審查。
要將其集成到FreeBSD代碼庫中,仍然需要在opencrypto框架中添加一些新功能。
要將端口與主要代碼庫“ Linux上的ZFS”結合使用, 他們應該將FreeBSD支持添加到持續集成系統中,確保代碼通過所有測試,並執行其他質量測試。
如果自端口穩定以來已經兩個月了,則計劃於15月XNUMX日替換FreeBSD代碼庫中的ZFS實現(否則將更改截止日期)。
在未來的三個月中,新舊版本的ZFS將共存,之後將刪除基於Illumos的舊ZFS代碼。
在FreeBSD的ZoL端口中可用的新功能中,但Illumos ZFS實現中不可用的新功能中,請注意多主機模式(MMP,多修改器保護),高級配額系統,數據集加密,塊分配類別的單獨選擇。 課程)。
使用矢量處理器指令來加快RAIDZ的實現併計算校驗和,這是改進的命令行工具。
ZoL還修復了許多與競賽條件和掛起有關的錯誤,這些錯誤在Illumos代碼中仍未得到糾正。
FreeBSD到ZoL的確定性更改不會很快發生,因為儘管ZoL具有更多的功能,但FreeBSD除了以下優點外還具有更成熟和穩定的ZFS實現:
-相當出色的TRIM支持
-VFS知道ARC等。
而且,他們無意不惜一切代價犧牲這些和其他素質。
但是,從長遠來看,雙方都應該獲勝(或者我希望如此)。