0

关于这个文件系统使用的节点数组,我有 2 个问题,这些节点数组有i节点来保存文件。

每个i节点包括

  • 用户 ID(2 个字节)
  • 三个时间戳(每个 4 个字节)
  • 保护位(2 个字节)
  • 引用计数(2 个字节)
  • 文件类型(2 个字节)
  • 大小(4 字节)

此外,节点-i包含

  • 13个直接索引
  • 一级索引表的索引
  • 二级索引表的索引
  • 3 级索引表的索引

系统还将每个文件的前 436 个字节存储在 node- 上i

所以,问题是:

  1. 假设磁盘的一个扇区有 512 字节,任何一个辅助索引表都占据了整个扇区,那么这个系统中一个文件的最大大小是多少?
  2. 存储在 node-i 上的文件的前 436 个字节有什么好处吗?
4

1 回答 1

0

将文件的第一个字节存储在 inode 中可以加快读取完全适合 inode 本身的文件的速度。这称为内联

因为您提到为文件大小保留 4 个字节(32 位),所以我希望这是文件2^32 - 1中的最大扇区数。

man newfsOpenBSD 中:

FFS 文件系统的最大大小为 2,147,483,647 (2^31 - 1) 个 512 字节块,略小于 1 TB。FFS2 文件系统可高达 64 PB。

于 2020-05-31T10:34:00.337 回答