Linux以一組通用對象的角度看待所有文件系統。這些對象是:超級塊(Super block)、inode、detry和文件。
Super block:
在每個文件系統的根上,描述和維護文件系統的狀態。表示一個文件系統,它包含管理文件系統所需的信息,包括文件系統的名稱、大小和狀態、塊設備的引用和元數據信息(如空閒列表)。通常存儲在存儲媒體上,但是如果超級塊不存在,也可以實時創建它。
inode:
文件系統中管理的每個對象(文件或目錄)在Linux中表示為一個inode.inode表示文件系統中的一個對象,它具有唯一標識符。inode包含管理文件系統中的對象所需的所有元數據(含可以在對象上執行的操作)。各個文件系統提供將文件名映射為唯一inode標識符和inode引用的方法
detry:
用來實現名稱和inode之間的映射,有一個緩存用來保存最近使用的dentry.還維護目錄和文件之間的關系,從而支持在文件系統中的移動
文件:
表示一個打開的文件(保存文件打開的狀態,比如寫偏移量等)
Linux文件系統使用了基於插件的體系結構和多層的間接性