Linux 中索引節點的理解

2021-07-09 14:09:46 字數 798 閱讀 6830

索引節點是指在許多類unix檔案系統中的一種資料結構。每個索引節點儲存了檔案系統中的乙個檔案系統物件的元資訊資料,但不包括資料內容或者檔名。

linux中,檔案查詢不是通過檔名稱來查詢的。實際上是通過i節點來實現檔案的查詢定位的。我們可以形象的將i節點看做是乙個指標fip。當檔案儲存到磁碟上去的時候,檔案肯定會存放到乙個磁碟位置上,可以這樣想象,既然檔案資料是存放在磁碟上的,如果我們知道這個檔案資料的位址,當我們想要讀寫檔案的時候,我們是不是直接使用這個位址去找到檔案就可以了呢?

是的,linux下,i節點其實就是可以這麼認為,把i節點看作是乙個指向磁碟上該檔案儲存區的位址。只不過這個位址我們一般是沒辦法直接使用的,而是通過檔名來間接使用的。事實上,i節點不僅包含了檔案資料儲存區的位址,還包含了很多資訊,比如資料大小,等等檔案資訊。但是i節點是不儲存檔名的。檔名是儲存在乙個目錄項中。每乙個目錄項中都包含了檔名和i節點。

我們可以通過乙個圖來看看目錄項,i節點,檔案資料四者之間的關係。

從上圖可以看到,目錄項中包含了檔名和i節點。

linux檔案系統使用索引節點來記錄檔案資訊,作用類似於windows下的

檔案分配表。乙個檔案系統維護了乙個索引節點的

陣列,每個檔案或目錄都與索引節點陣列中的唯一乙個元素對應。

linux檔案系統將檔案索引節點號和檔名同時儲存在目錄中。

所以,目錄只是將檔案的名稱和它的索引節點號結合在一起的一張表,目錄中每一對檔名稱和索引節點號稱為乙個連線。對於乙個檔案來說有唯一的索引節點號與之對應,對於乙個索引節點號,卻可以有多個檔名與之對應。因此,在磁碟上的同乙個檔案可以通過不同的路徑去訪問它。

Linux 索引節點 inode

理解 inode,要從檔案儲存說起。檔案儲存在硬碟上,硬碟的最小儲存單位叫做 扇區 sector 每個扇區儲存 512 位元組 相當於 0.5kb 作業系統讀取硬碟的時候,不會乙個個扇區地讀取,這樣效率太低,而是一次性連續讀取多個扇區,即一次性讀取乙個 塊 block 這種由多個扇區組成的 塊 是檔...

linux裝置節點的理解

在linux的驅動學習過程中,經常會碰到裝置節點這一概念,什麼主裝置號,次裝置號,可能都是一知半解的,只知道要想使用者程序與核心下的硬體進行通訊需要建立乙個裝置節點 至於這個裝置節點到底是怎樣的乙個存在,也許好多人並不清楚 裝置節點使得使用者可以與核心進行硬體的溝通,讀寫裝置以及其他的操作 在lin...

linux 索引節點 inode 詳解

1 inode簡介 理解inode,要從檔案儲存說起。檔案儲存在硬碟上,硬碟的最小儲存單位叫做 扇區 sector 每個扇區儲存512位元組 相當於0.5kb 作業系統讀取硬碟的時候,不會乙個個扇區地讀取,這樣效率太低,而是一次性連續讀取多個扇區,即一次性讀取乙個 塊 block 這種由多個扇區組成...