【问题标题】:What is the max file size allowed by the system?系统允许的最大文件大小是多少?
【发布时间】:2013-04-22 11:39:14
【问题描述】:

我得到了这些信息,但不知道如何解决这个问题:

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 

任何形式的解释或起点将不胜感激......我很困惑。

【问题讨论】:

  • 假设每个 inode 可以容纳 4 个指针而不是 128 个指针,绘制一个 inode 映射,这样可以使事情更清晰。现在看看你可以指向多少块,如果你将自己限制在两个间接级别(所以顶级 inode、1 级 inode 和 2 级 inode)

标签: file unix operating-system system inode


【解决方案1】:

文件指针 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 位指针的文件大小变得普遍可用。

【讨论】:

  • 文件没有空终止符。
猜你喜欢
  • 1970-01-01
  • 2011-01-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-03-09
  • 2013-01-23
相关资源
最近更新 更多