歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> 下一代 Linux 文件系統:NiLFS(2) 和 exofs

下一代 Linux 文件系統:NiLFS(2) 和 exofs

日期:2017/2/28 16:41:14   编辑:Linux教程

Linux? 在文件系統領域不斷創新。它支持任何操作系統上的眾多不同文件系統。它還提供尖端文件系統技術。Linux 最近又引入兩種新的文件系統,它們是 NiLFS(2) 日志結構文件系統和 exofs 基於對象的存儲系統。探索這兩種文件系統背後的動機和它們的優點。

一種新的 Linux 文件系統的公布總是令人既興奮又恐懼。興奮是因為文件系統意味著新的發展空間。恐懼是因為文件系統在早期還是試驗性的,尚未迎來黃金時期。但是有時候,新文件系統的公布也意味著對 Linux 未來的投資,而最近 2.6.30-rc1 的公布確實標示著令人感興趣的前景。在過去幾個季度,Linux 主要公布了三種文件系統。2008 年底引入了 B-Tree File System(Btrf),最近又引入了兩種獨特的文件系統:NiLFS(2) 和 exofs。

文件系統背景知識

我們首先了解這些非傳統文件系統,然後探索 NiLFS(2) 和 exofs 的細節。

日志結構文件系統

日志結構文件系統和 SSDs

日志結構文件系統是用於由 NAND 閃存組成的固態硬盤(solid-state disks,SSD)的理想格式。閃存的基本問題是寫擦周期數量有限。日志可以寫到整個設備上,盡量寫滿設備,從而最大程度地減少擦的周期。由於這個原因,日志結構文件系統在 SSD 上(連續寫)表現非常好,並且提供更好的損耗均衡。

日志結構文件系統在現代計算系統中有豐富的歷史。第一個日志結構文件系統由 John Ousterhout 和 Fred Douglis 在 1988 年提出,隨後由 Sprite 操作系統在 1992 年實現。顧名思義,日志結構文件系統將文件系統視為一個循環日志,將新的數據和文件系統元數據寫到日志的頭部,並且從尾部回收空閒空間(如圖 1 所示)。這意味著數據可能在日志中出現兩次或更多次,但是由於日志是按時間先後順序發展的,最近的數據被視作活動數據。日志中保留數據的多個副本可以帶來一些有趣的優點,後面將詳細談到這些優點。


圖 1. 日志結構文件系統的示意圖

與其說日志結構方法是一個賣點,不如說它是體系結構上的一個細節,不過這種方法確實有一些獨特的優點。一個關鍵的優點在於系統崩潰後的數據恢復,當使用日志結構方法時,這種恢復更簡單。

另一個優點是利用底層存儲系統挖掘性能。您也許還記得,連續寫到硬盤比隨機 I/O 要快得多。如果所有的寫都是連續的,那麼查找的開銷隨之減少,從而可以獲得更快的硬盤 I/O,進而得到更快的文件系統。

Copyright © Linux教程網 All Rights Reserved