管理文件的軟件,在內核中實現,將磁盤建立成文件系統後,磁盤分紅兩部分:元數據區和數據區元數據區主要存儲跟文件數據自己無關的信息,主要有inode表,每個條目標識文件的基本屬性(屬組、屬主、權限、時間戳、大小等)。node
目錄也是個文件,可是這個文件比較獨特,主要用於實現創建文件名和文件inode號之間的映射關係,經過目錄能夠找到某個文件的名稱和inode號的對應關係。所以若是使用基於名稱管理文件,首先找到目錄,這個目錄有這個文件,再找文件名稱對應的inode。inode中記錄文件所佔據的磁盤塊。ide
格式化完成之後,磁盤就分紅大小固定的磁盤塊(data blocks),這些塊也是有編號的,所以文件存儲在磁盤中的時候到底佔據了哪些磁盤塊而且存儲了數據的,inode就標識文件使用了哪些磁盤塊。操作系統
若是分區很大效率也不高,爲了快速找到空閒inode和空閒磁盤塊,引入了兩種機制:inode bitmap(快速實現查找,掃描位圖就知道那個inode是空閒的)和block bitmap。當塊很是大的時候,數據塊很是多,位圖也很是大,就須要在元數據區進行分組每個塊組中定義了這個組應該擁有的inode和屬於這個組的塊位圖。it
一共有多少個組,每一個組包含哪些塊呢?這些信息都包含在超級塊super block中。table
磁盤編號爲0的扇區不可能屬於任何一個分區,成爲MBR(主引導記錄:bootloader 446字節,filesystem table 64字節,每16個字節引導一個主分區 2字節 )。bootloader使得某個分區能夠安裝並啓動操做系統,MBR相當重要,有些病毒專門感染MBR,0扇區壞掉的話即便硬盤可用也無法安裝操做系統。可使用dd命令備份MBR。class
除了磁盤的0扇區以外,任何一個分區中的第一個扇區(引導扇區)不會拿到直接使用,是這個分區的引導扇區。因此引導扇區有兩級結構,一個是硬盤的引導扇區一個是分區的引導扇區。效率
分區爲何要有引導扇區呢?多系統互存時,MBR中的bootloader中存放的是一個選擇挑選的菜單引導程序,引導到相應的分區中的引導扇區。MBR中只能裝一個系統引導程序,另外一個引導程序須要裝所在分區的引導扇區中。軟件
每個塊組包含:超級塊、塊組描述符、數據塊位圖、inode位圖、inode表、數據塊。file
超級快並不是每一個塊組中都有,dumpe2fs(-h查看全部信息)查看哪些塊組中保存的super block。權限
文件系統實際上是個軟件。