如图所示的树型文件系统中,方框表示目录,圆圆表示文件,“/”表示路径中的分隔符,“/”在路径之首时表示根目录。
假设当前目录是。D2,进程A以如下两种方式打开文件f2。
方式① fd1=open(“ (46) /f2”,O_RDONLY);
方式② fd1=open(“/D2/W2/f2”,O_RDONLY);
其中,方式①的工作效率比方式②的工作效率高,因为采用方式①,文件系统是从 (47) 。
A.根目录开始查找文件f2,系统查找时间少,读取f2文件次数不变
B.当前路径开始查找文件f2,系统查找时间少,读取f2文件次数少
C.根目录开始查找文件f2,系统查找时间少,读取f2文件次数少
D.当前路径开始查找文件f2,系统查找时间少,读取t2文件次数不变
参考答案:B
解析: 在文件系统的操作系统中树型目录结构中,树的根节点为根目录,数据文件作为树叶,其他所有目录均作为树的节点。从树根开始的路径名称为绝对路径名。从当前目录开始的路径名称为相对路径名,即从当前目录开始,再逐级通过中间的目录文件,最后到达所要访问的数据文件。
假设当前目录是D2,进程A可以使用绝对路径名方式(方式②)打开文件f2,即使用“fd1=open(“/D2/W2/f2”,O_RDONLY);”语句。
进程A不可以使用相对路径名方式(方式①)打开文件f2,即使用“fd1=open(”W2/f2”,O_RDONLY);”语句。
对于方式①可用从当前路径开始查找需要访问的文件f2,但需要访问2次磁盘,第一次查找目录文件W2,找到文件f2的物理位置,第2次便可以读取文件f2。而方式②需要访问3次磁盘,第一次查找根目录,第二次查找目录文件/D2/W2/,找到文件f2的物理位置,第三次便可以读取文件f2。可见,从当前目录开始,采用相对路径名比采用绝对路径名可以减少访问目录文件的次数,工作效率较高。因此,(1)空缺处的正确答案为C;(2)空缺处的正确答案为B。