存放在某个磁盘上的文件系统,采用混合索引分配方式,其FCB中共有13个地址项,第0~9个地址项为直接地址,第10个地址项为一次间接地址,第11个地址项为二次间接地址,第12个地址项为三次间接地址。如果每个盘块的大小为512字节,若盘块号需要用3个字节来描述,而每个盘块最多存放170个盘块地址: (1)该文件系统允许文件的最大长度是多少? (2)将文件的字节偏移量5000、15000转换为物理块号和块内偏移量。 (3)假设文件的FCB已在内存,为了访问文件中某个位置的内容,最少需要访问几次磁盘,最多需要访问几次磁盘?
时间: 2024-02-26 10:55:20 浏览: 837
根据题意,我们可以得出以下计算过程和答案:
(1)该文件系统允许文件的最大长度:
- 直接地址可以表示的盘块数为 10 个,每个盘块最多存放 170 个盘块地址,因此直接地址可以表示的最大文件大小为 10 * 170 * 512B = 870400B。
- 一次间接地址可以表示的盘块数为 170 个,每个盘块最多存放 170 个盘块地址,因此一次间接地址可以表示的最大文件大小为 170 * 170 * 512B = 14745600B。
- 二次间接地址可以表示的盘块数为 170 * 170 个,每个盘块最多存放 170 个盘块地址,因此二次间接地址可以表示的最大文件大小为 170 * 170 * 170 * 512B = 2520476160B。
- 三次间接地址可以表示的盘块数为 170 * 170 * 170 个,每个盘块最多存放 170 个盘块地址,因此三次间接地址可以表示的最大文件大小为 170 * 170 * 170 * 170 * 512B = 429483622400B。
- 因此,文件系统允许文件的最大长度为 429483622400B。
(2)将文件的字节偏移量 5000、15000 转换为物理块号和块内偏移量:
- 对于字节偏移量 5000,物理块号为 5000 / 512 = 9,块内偏移量为 5000 % 512 = 232。
- 对于字节偏移量 15000,物理块号为 15000 / 512 = 29,块内偏移量为 15000 % 512 = 208。
(3)为了访问文件中某个位置的内容,最少需要访问几次磁盘,最多需要访问几次磁盘?
- 当文件中的某个位置对应的盘块在内存中时,最少只需要访问 1 次磁盘;最多需要访问直接地址、一次间接地址、二次间接地址和三次间接地址共 4 次磁盘。如果文件中的某个位置对应的盘块不在内存中,则需要先将相应的盘块调入内存,再进行访问,此时需要访问的磁盘次数会更多。
阅读全文