DAXFS 提議作為 Linux 的零拷貝共享記憶體檔案系統
一個新的 Linux 提案引入了 DAXFS,一種唯讀檔案系統,可繞過頁面快取以直接存取共享記憶體。
Cong Wang,Multikernel 的核心開發者,在 Linux 核心郵件列表上介紹了一個名為 DAXFS 的新 Linux 文件系統。顧名思義,DAXFS 建立在 Linux 核心的直接存取 (DAX) 基礎設施上,使文件系統能夠直接訪問共享物理內存,而無需經過傳統的塊 I/O 堆疊。
根據公告,與廣為人知的 RAMFS 或 TMPFS 不同,後者依賴頁面快取並以每個實例分配記憶體,DAXFS 則是將連續的物理記憶體區域直接映射到檔案系統中。檔案讀取直接對應到記憶體載入,從而在原本相同的唯讀資料會被重複儲存在 RAM 的環境中減少記憶體開銷。
新的檔案系統設計用於支援由 GPU、FPGA 或透過 dma-buf API 連接的 CXL 裝置匯出的記憶體,使其能夠以唯讀方式存取直接儲存在裝置支援記憶體中的資料。
DAXFS 範圍故意保持最小,使用自包含的唯讀映像格式,並避免運行時分配、複雜的元數據管理以及設備處理邏輯,使其適用於某些使用場景。
這些包括在獨立的核心實例之間共享通用容器或 Docker 基礎映像,在 CXL 記憶體池場景中使用共享記憶體而非網路傳輸,透過將共享的 DAXFS 基礎映像與容器的 OverlayFS 結合來降低 RAM 使用量,以及提供對存儲在加速器記憶體中的靜態數據的零拷貝訪問。
該代碼已在 GitHub 上公開,因為作者強調 DAXFS 是一個實驗性提案。任何通往上游整合的途徑,都將取決於 Linux 核心開發社群的進一步討論與審查。
欲了解更多資訊,請參閱核心郵件列表上的訊息。
