inode資料結構是否包含磁碟上檔案的實際位址?

inode資料結構是否包含磁碟上檔案的實際位址?

我目前正在學習Linux檔案系統。到目前為止我學到了以下內容:

  • 目錄只是一個包含以下資訊的檔案:檔案名稱及其索引節點號。
  • 有一個索引節點表,其中包含每個索引節點號碼的資料結構。此資料結構包含擁有者 ID、群組 ID、檔案大小等資訊。

現在,inode 資料結構還包含磁碟上檔案的實際位址,還是僅包含知道磁碟上檔案實際位址的其他某些資料結構的位址?

答案1

這取決於檔案系統類型。然而,在大多數檔案系統中,inode(或dinode)將包含前幾個資料區塊(稱為「直接區塊」)的位址,然後,對於較大的文件,包含本身儲存指向的指標的「間接區塊”的地址附加資料塊。

索引節點指標結構維基百科頁面了解更多詳細資訊。

出於學習目的,我建議查看結構相對簡單的 UFS 檔案系統。看UFS二極體結構,特別di_dbdi_ib對於指向直接和間接區塊的指標。

相關內容