一个文件系统基于索引节点组织方式,假设物理块长为 512B。 (1) 文件名目录每个表项占 16B,文件目录从物理块 111 号开始存放, (2) 索引节点占 64B,索引节点区从物理块 2 号开始存放, (3) 假设索引节点编号是从 1 到某个最大值,现有文件 file 为顺序文件,file 位于文件名 目录的第 34 个目录项中,它对应的索引节点号为 64。 为打开文件 file 需要启动几次磁盘,以及每次所读的物理块号是什么?并说明原因。
时间: 2024-03-15 11:42:32 浏览: 78
为打开文件 file,需要启动 2 次磁盘,每次读取的物理块号分别为 111 和 3。
解释如下:
第一次启动磁盘是为了读取文件名目录中第 34 个目录项,该目录项占用 16B,因此需要读取第 111 号物理块的前 16B,找到文件对应的索引节点号 64。
第二次启动磁盘是为了读取索引节点区中的第 64 个索引节点,每个索引节点占用 64B,因此需要读取第 2 号物理块的第 64B,找到文件的起始物理块号和块数。
由于该文件为顺序文件,因此只需读取该文件的第一个物理块,即第 3 号物理块。原因是顺序文件的数据块是按照顺序组织的,因此只需读取第一个数据块即可访问整个文件。
相关问题
一个文件系统基于索引节点的组织方式,假设物理块长为512B。 (1 )文件名目录的每个表项占用16B ,文件目录从物理块111号开始存放;(2)索引节点占用64B,索引节点区从物理块2号开始存放; ( 3 )假设索引节点编号是从1到某个最大值,现有文件file为顺序文件, file位于文件名目录的第34个目录项中,它对应的索引节点号为64。为打开文件file需要启动几次磁盘,每次所读的物理块号是什么?请说明原因。
为了打开文件file,需要启动两次磁盘。第一次磁盘启动,读取文件名目录表项,确定文件file的索引节点号为64。第二次磁盘启动,读取索引节点区中的第64个索引节点,获取文件file的物理块地址。
具体地,第一次磁盘启动需要读取物理块111号,因为文件名目录从该物理块开始存放。由于每个文件名目录表项占用16B,文件file对应的表项在第34个位置,因此需要读取物理块113号的第2个表项和物理块114号的第1个表项,才能确定文件file的索引节点号为64。
第二次磁盘启动需要读取物理块6号,因为索引节点区从该物理块开始存放。由于每个索引节点占用64B,因此第64个索引节点所在的物理块为物理块2号+(64-1)/8=10号。因为文件file是顺序文件,所以它只有一个直接块指针,存放在索引节点的第0个位置,因此需要读取物理块10号的第0个位置,即物理块10号,才能获取文件file的物理块地址。
一、一个文件系统基于索引节点的组织方式,假设物理块长为512B。 (1 )文件名目录的每个表项占用16B ,文件目录从物理块111号开始存放;(2)索引节点占用64B,索引节点区从物理块2号开始存放; ( 3 )假设索引节点编号是从1到某个最大值,现有文件file为顺序文件, file位于文件名目录的第34个目录项中,它对应的索引节点号为64。为打开文件file需要启动几次磁盘,每次所读的物理块号是什么?请说明原因。
为了打开文件file,需要启动两次磁盘。
第一次启动磁盘:需要读取文件名目录中第34个目录项所在的物理块,即物理块119(111+16*33/512=119)。然后在该目录项中找到对应的索引节点号64。
第二次启动磁盘:需要读取索引节点区中编号为64的索引节点所在的物理块,即物理块2(64*64B/512B=8,2+8=10)。在该索引节点中可以找到文件file的数据块地址,从而读取文件内容。
阅读全文