2018 863 问答题

某文件系统的磁盘块大小为 1KB,在文件的索引节点中存放直接索引指针 16 个,一级间接索引指针 4 个,二级间接索引指针 1 个,每个索引指针占 4 个字节。用户进程欲访问 /home/student/course/os/homework/bitmap.dat 文件字节偏移量为第 1280 和 1280000 处的各 128 字节的记录。假设当前除了根目录索引节点在内存外相关目录和文件数据都不在内存中且每个目录和索引节点只占一个磁盘块,那么完成数据访问一共需要读取多少个磁盘块?给出相应的描述过程。

我的答案:
1.首先得到bitmap.dat的索引结点,需要读取6次磁盘块。
2.分析第一个记录1024B < 1280B+128B <  2048B。所以通过直接索引块可直接得到该记录。需要读取磁盘1次。
3.分析第二个记录1280128B在1280128B/1024B = 1250的磁盘块中。16个直接索引指向16个磁盘块,一级索引指向(1024B/4B)*4=1024个磁盘块。
1250>16+1024,所以1280128B在二级索引中。需要读取3次磁盘。

综上,完成数据访问需要读取6+1+3=10次磁盘。

请问我的答案是否合理?
全部评论
应该是这么写,老哥报哪个所的
点赞 回复
分享
发布于 2019-12-19 16:35

相关推荐

点赞 评论 收藏
转发
点赞 收藏 评论
分享
牛客网
牛客企业服务