某文件系统采用索引节点存放文件的属性和地址信息,簇大小为 4KB。每个文件索引节点占 64B,有 11 个地址项,其中直接地址项 8 个,一级、二级和三级间接地址项各 1 个,每个地址项长度为 4B。请回答下列问题。 (1)该文件系统能支持的最大文件长度是多少?(给出计算表达式即可) (2)文件系统用 1M(1M=220)个簇存放文件索引节点,用 512M 个簇存放文件数据。若一个图像文件的大小为 5600B,则该文件系统最多能存放多少个这样的图像文件? (3)若文件 F1 的大小为 30KB,文件 F2 的大小为 1025MB,则该文系统获取 F1 和 F2 最后一个簇的簇号各需要访问哪些地址项?各访问几次磁盘?
时间: 2024-03-30 18:34:34 浏览: 146
(1) 直接寻址可以寻址 8 * 4KB = 32KB 的数据块,一级间接可以寻址 4KB^2 = 16MB 的数据块,二级间接可以寻址 4KB^3 = 64GB 的数据块,三级间接可以寻址 4KB^4 = 256TB 的数据块。因此,一个文件最大长度为:
32KB + 16MB + 64GB + 256TB = 256TB + 64GB + 16MB + 32KB
(2) 文件系统可以存放的文件索引节点数量为:1M * (4KB / 64B) = 65536。因此,文件系统最多能存放的文件数量为:65536 * 512M = 33,554,432,000。每个图像文件所需的簇数为 ceil(5600B / 4KB) = 2,因此该文件系统最多能存放的图像文件数量为 512M / 2 = 256M。
(3) 对于文件 F1,可以使用直接地址访问前 7 个簇,然后使用一级间接地址访问第 8 个簇,一级间接地址需要访问 1 次磁盘。对于文件 F2,需要使用三级间接地址访问最后一个簇,三级间接地址需要访问 4 次磁盘。具体访问的地址项如下:
- 对于文件 F1,最后一个簇的地址项为第 8 个直接地址项,需要访问 1 次磁盘。
- 对于文件 F2,最后一个簇的地址项为一级间接地址项、二级间接地址项和三级间接地址项,需要访问 3 次磁盘。具体访问过程如下:
- 使用第 11 个直接地址项访问一级间接地址块,需要访问 1 次磁盘。
- 在一级间接地址块中找到对应的二级间接地址块,需要访问 1 次磁盘。
- 在二级间接地址块中找到对应的三级间接地址块,需要访问 1 次磁盘。
阅读全文