2013-04-28 161 views
1

我給出的這個信息,但我不知道如何處理這個問題:系統允許的最大文件大小是多少?

Double-Indirect Addressing 

Disk block size = 1k 
File Point is 64 bits (8 bytes) 
Block can hold 128 file pointers 
Inode holds 8 double-indirect entries 

任何形式的解釋或起點將不勝感激......我很迷茫。

+1

繪製一個inode映射,假設每個inode可以容納4個指針而不是128個,這可以讓事情更清晰。現在查看您可以指向多少個塊,如果您將自己限制爲兩個間接層級(如此一級inode,一級inode和二級inode) – MSalters 2013-04-28 23:18:22

回答

0

文件指針64意味着您可以擁有一個文件,該文件的最大偏移量爲64位無符號數可以具有的最大數。理論上。在實踐中,你沒有磁盤空間

2^64 -1 bytes of file data + 1 byte for a null terminator 

df -h命令將顯示你有你的文件系統最大的可用空間。爲大文件選擇一個。

PS:2^64 -1: 18446744073709551615

這樣做的原因是,直到最近的文件系統被限制在尺寸2^32 -1個字節的文件。 隨着硬件的改變,訪問大於該文件的文件的「大文件」擴展名在32位系統上被拼湊在一起。使用64位處理器的文件大小使用64位指針變得普遍可用。

+0

文件沒有空終止符。 – immibis 2016-02-17 03:31:48

相關問題