深入Linux內核架構—簡介和概述(五)

一、文件系統

Linux系統由數以千計乃至百萬計的文件組成,其數據存儲在硬盤或其他塊設備。存儲使用層次式文件系統。文件系統使用目錄結構組織存儲的數據,並將其他元信息(例如所有者、訪問權限等)與實際數據關聯起來。Linux支持許多不同的文件系統:標準的Ext2(第二版擴展文件系統)和Ext3(第三版擴展文件系統)、ReiserFS、XFS(一種高性能的日誌文件系統)、VFAT(FAT32文件系統格式,爲兼容DOS),還有很多其他文件系統。Ext2基於inode,即它對每個文件都構造了一個單獨的管理結構,稱爲inode,並存儲到磁盤上。inode包含文件所有的元信息,以及指向相關數據塊的指針。目錄可以表示爲普通文件,其數據包括指向目錄下所有文件的inode的指針,因而層次結構得以建立。相比之下,ReiserFS廣泛應用樹形結構來提供同樣的功能。

內核必須提供一個額外的軟件層,將各種底層文件系統的具體特性與應用層隔離開來。該軟件層稱爲VFS(虛擬文件系統)。VFS既是向下的接口(所有文件系統都必須實現該接口),同時也是向上的接口(用戶進程通過系統調用最終能夠訪問文件系統功能)。

如圖1-10所示。

                         圖1-10 虛擬文件系統層、文件系統

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章