问题 问答题

考虑一个存于磁盘上的文件系统,其中的文件由大小为512B的块组成。假定每一个文件有一个文件目录项,该目录项包含该文件的名字、文件长度以及第一块(或第一索引块)和最后一块的位置,而且该目录项位于内存。对于索引结构文件,该目录项指明第一索引块,该索引块又依次指向511个文件块且有一指向下一索引块的指针。针对连续、链接、索引结构的每一种,要求: a.说明在这个系统中是如何实现逻辑地址到物理地址映射的; b.如果当前位于逻辑块10(即最后一次访问的块是逻辑块10)且访问逻辑块4,请说明必须从盘上读多少个物理块。

答案

参考答案:

解析:设文件的逻辑地址(字节)为1a,用512去除1a,分别记1bn和bd为除得的商和余数,则1bn表示该块得逻辑块号,bd表示块内偏移。设文件的起始块号为sbn。那么针对 3种结构,分别有: ①连续结构。连续结构也就是文件以连续方式存放,依次在内存排列,其过程是: pbn=sbn+1bn;/*要访问的物理块号*/; 1块。 ②链接结构。查链接表直至找到所需要的块号,过程是: m1:=sbn if 1bn>0 Then begin for I:=0 to 1bn-1 begin m1:=m1.next; /*取位于m1的物理块;用下一块地址替代m1+t*/ end; end; pbn:=m1;/*要访问的物理块号*/ 4块。 ③索引结构。将第一索引块读进内存,记为index, 记r=1bn/511:s=:1bn mod 511 if r>0 then begin for I:=I to r begin 读入index(512)块,并记为index end end pbn:=index(s) 1块。

完形填空
选择题