Unix Linux 檔案系統 檔案建立流程

2021-09-29 11:52:32 字數 1201 閱讀 1875

i. 儲存屬性-找到空的i節點,記錄檔案資訊

ii. 儲存資料-核心從自由塊列表中選擇合適數量的自由塊,按一定順序 向塊中寫入資料

iii. 記錄分配情況-在i節點的磁碟分布區中記錄寫入資料的塊的編號

iv. 寫目錄-把i節點號和檔案名字的組合新增到目錄檔案

下面是幾個相關概念

i節點

磁碟和作業系統之間互動的最小單位是「[塊]

「塊」是為了便利作業系統的讀寫操作,從扇區的基礎上抽象出來的概念。

因為是討**件系統中的i節點,我們暫且避開塊的抽象。

unix中「塊」被分成三個部分——超級塊、i節點表和資料區。

i節點表用於儲存檔案的屬性,它由儲存著不同檔案的屬性的「i節點結構體」組成。這些屬性包含檔案大小、修改時間和所有者等。

而每乙個i節點都通過位置標識,通過位置確定它們在i節點表中的位置。

目錄

目錄中包含著檔名和i節點號的對應關係,

通過這個對應關係,檔名就能聯絡到i節點表中的檔案屬性

和資料區中的檔案內容。

在通過檔名檢索-開啟檔案 的流程

1. 在目錄中尋找檔名,在目錄下進行字串匹配,找到目標檔名

2. 在檔名所在的《檔名-i節點》對獲取檔案i節點號

3. 在i節點表中根據i節點號找到目標檔案的i節點

4. 找到i節點就獲得了檔案的許可權和檔案在資料區的位置等屬性

5. 根據屬性判斷可進行的操作

6. 如果訪問許可權符合要求,則可以根據檔案內容位置獲取檔案內容

大檔案和i節點

節點包含著檔案各個儲存塊的位置資訊,

顯然,i節點的大小不是無窮的,當塊的數量多到一定程度時,

i節點就不能儲存下所有的位置資訊。

解決方案

不把所有的位置資訊儲存到i節點,也不把i節點所有能用於儲存塊位置的空間用來幹這事。

就是說,在資料區劃定乙個區域用來儲存塊的位置資訊,而i節點的一些位置儲存著這個區域的位置資訊,這就能擴大i節點的塊儲存能力。而在資料區開闢的這樣區域被稱為「間接塊」,意為i節點通過這塊區域間接指向儲存著檔案內容的塊。

同理,間接塊也能有自己的間接塊,稱為「二級間接塊」。

Unix Linux 檔案系統

作為一名電腦使用者,不懂圖形化操作檔案系統就不算會使用電腦。那麼作為一名程式設計師,如果不懂命令列操作 linux 檔案系統,就不敢說自己是一名合格的程式設計師。我們工作中使用 unix linux 作為應用程式伺服器,無非就是把我們編寫好的軟體部署到遠端伺服器,其中少不了對檔案的各種操作,如果你不...

檔案系統 why檔案系統

為什麼需要檔案系統,可否由作業系統直接寫裸裝置?裸裝置是一種沒有經過格式化的磁碟或分割槽,即讓作業系統直接管理操作磁碟設定,進行資料讀寫等。通過檔案系統的方式組織磁碟儲存和資料管理有很多好處,比如 1.資料讀取 管理等操作變得簡單便捷 檔案系統給使用者提供了乙個簡單的操作介面,只需簡單的操作就能實現...

檔案 檔案系統

一 檔案型別 二 外存和記憶體 1.外存 如磁碟 如機械硬碟,固態硬碟 速度快 磁帶 cd,外存速度慢,掉電保護 2.記憶體,速度快,掉電不保護,速度越快,越貴 三 檔案的輸入和輸出 1.以記憶體為參照物,流入記憶體,叫做輸入 2.檔名是檔案的唯一標識 唯一指的是全路徑 3.windows下檔名不區...