操作系统教材答案陈向群杨芙清 下载本文

一个文件当前放在第 2009 各逻辑块,而下一个操作是访问第 306 个逻辑块,那么必须从 磁盘上读多少个物理块? 答:

5.假定一个 UNIX 的磁盘块能够存放 1048 个磁盘地址。用直接盘块指针的文件的最大尺寸是 多少?一重间接块指针呢?二重间接块指针呢?三重呢?

6.早期 MS-DOS 版本的文件系统最大能够管理 32M 的磁盘空间,根据本章所讲的有关目录和 文件的知识,推测由于该限制可能导致的一些后果。 7.假定一个文件系统的组织方式与 MS-DOS 文件系统类似,在 FAT 中有 64K 个指针,请说明该 文件系统是否能够用这 64K 个指针来引用一个 512M 磁盘上一个 512 字节块。 8.文件系统检测程序经常利用位图。基本的想法就是把该图拷贝到检测程序的地址空间去 ,把图中每一个项放大,使它能够包含更多的状态信息(例如已分配,未分配,已检测, 坏块),请设计一个算法,用增加内容位示图来检测一个磁盘的上述状态信息,并作出具 体统计。 答: 1)为位图增加一个内容位示图,已分配,未分配,已检测,坏块分别用 0,1,2,3 来代 替 2)检测磁盘,遇到 0,:count0++,遇到 1:count1++,遇到 2,count2++,遇到 3,count3 ++,(初值都为 0)

3)得出相应的块的个数。

9.假定需要一种机制,是的一个文件能被任何用户读,但只能被一个用户写。比如全国 高考成绩,可被高考学生读,但只能被有关办公室修改成绩,请设计该文件的存取控制机制。 答:1)审定用户权限

2)比较用户权限的本次存取要求是否和用户的存取权限一致

3)将用户的存取要求和被访问文件的存取控制表进行比较,看是否冲突,如果没有 冲突,允许用户对有关文件进行访问,如果有冲突,处理冲突。

10.请描述一种机制,硬件的或软件的,它根据用户的指纹进行身份识别。

答:第一步要对用户的身份进行验证,第二步,采用一组称为存取控制模块的程序,对用 户的存取权限进行控制。

11.文件目录的作用是什么?一个目录表目应包含哪些信息?

答:文件目录就是文件控制块的有序集合,即把所有文件控制块有机地组织起来,就构成 了文件目录。

文件控制块应该包括以下内容:文件名,文件号,用户名,文件地址,文件长度,文 件类型,文件属性,共享计数,文件的建立日期,保存期限,最后修改日期等! 12.多级目录结构的特点有哪些?有什么好处?

答: 优点: 层次结构清晰,便于管理和保护;有利于文件分类;解决重名问题;提高文件检索速度 ;能进行存取权限的控制

缺点: 查找一个文件按路径名逐层检查,由于每个文件都放在外存,多次访盘影响速度 13.可通过什么办法来实现用户之间共享某个文件? 答:1)绕道法 2)I 节点法 3)符号链接法

14.在设计文件系统时,对文件的数据结构应做何考虑? 答:顺序结构,链接结构,索引结构以及 I 节点.

15.请设计一个文件系统的 FCB,并说明为何要安排 FCB 的每一项内容。

答:文件控制块 PCB 为系统管理文件而设置的一个数据结构。FCB 是文件存在的标志,它记 录了系统管理文件所需要的全部信息。见图 6.2 文件控制块

16.在文件系统中,使用 Create 和 Open 命令的目的是什么?他们的具体功能是什么?能不 能只用一个命令,完成文件的建立和打开操作?

答:create 和 open 命令是建立一个和打开一个文件。

create 建立一个文件,open 打开一个已存在的文件,或者先创建然后打开一个文件 能用一个命令 open 来完成文件的建立和打开操作.

17.对下列每个问题,试说明它由文件系统中哪一个部分处理的,以及如何处理的? 1)存储碎片问题

2)允许给不同的文件以相同的文件名 3)缓冲处理

4)扩充文件时,存储空间的申请。 答:1)文件的物理结构 2)存储结构 3)存储性能

4)存储空间的管理

18. 对常用的计算机系统,分析其文件映射功能的透明性。 答:实现文件的按名存取 名字空间 映射 存储空间

19.在 UNIX 系统中,采用 I 节点方式给出一个文件所在磁盘号的块号。假设每个磁盘块的大

小为 1024 字节,并且每个间接盘块能容纳 256 个块号,试问:

1)如果进程要读取某文件的字节偏移量为 8192,应该如何找到它所在的磁盘号? 2)如果要存取某文件的字节偏移量为 640000,又将如何? 20.能用单级目录来模拟多级目录?如果能,揭示如何实现之。 21.由一个文件系统,根目录常驻内存,如下图所示。(图略) 目录文件采用链接结构,规定一个目录下最多存放 40 个下级文件,下级文件可以是目录文 件

,也可以是普通文件。每个磁盘块可以存放 10 个下级文件的描述信息,若下级文件为目录 文件,则上级目录指向目录文件的第一块,否则指向普通文件的文件控制块。

1)普通文件采用 UNIX 的三级索引结构,即文件控制块给出 13 个磁盘地址,前 10 个磁盘地址 指出文件前 10 块的物理地址,第 11 个磁盘地址指向一级索引表,一级索引表给出 256 个磁 盘地址,即指出该文件第 11 块到第 266 块的物理地址;第 12 个磁盘地址指向二级索引表, 二级索引表中指出了 256 个一级索引表的地址,第 13 个磁盘地址指向三级索引表,三级索 引表指出 256 个二级索引表的地址,该文件系统中的普通文件最大可由多少块?假设主索 引表放在 FCB 中,若要读问 A\\D\\G\\I\\K 中某一块,最少要启动磁盘几次?最多要启动磁盘几 次?若要减少启动磁盘的次数,可采用什么办法?2)普通文件采用链接结构,若要读 A\\ D\\G\\I\\K 的第 75 块最少启动磁盘几次,最多几次?

22.在文件系统中,使用文件前要先打开文件,请写出“打开文件”系统调用的主要实现 步骤,包括相关的数据结构,设命令为 fopen(文件名,打开方式)。

答:打开文件 使用文件的第一步,任何一个文件使用前都要先打开,即把 FCB 送到内存 fd=open(文件路径名,打开方式)

① 根据文件路径名查目录,找到 FCB 主部;

② 根据打开方式、共享说明和用户身份检查访问合法性; ③ 根据文件号查系统打开文件表,看文件是否已被打开;

是→共享计数加 1 否则→将外存中的 FCB 主部等信息填入系统打开文件表空表项,共享

计数置为 1;

④ 在用户打开文件表中取一空表项,填写打开方式等,并指向系统打开文件表对应表项 返回信息:fd:文件描述符,是一个非负整数,用于以后读写文件

23.1)在文件系统中,会出现文件希系统不一致的现象,请简要解释这种现象产生的原因 及问题的严重性.

为了解决文件系统的不一致性问题,常采用一个实用程序检查文件系统,在进行了 块的一致性检查后,得到如下结果: 图略

请解释该文件系统出现的每一错误,并给出处理方法。 2)第二轮复习的时候再看!

答:很多文件系统在读取磁盘块进行修改后,再写回磁盘,如果在修改过的磁盘块全部写 回之前,系统崩溃,则文件系统有可能处于不一致的状态。

如果未被写回的块是 I 节点,文件目录,或者是空闲块列表,那么问题就有点严重. 24.在实现文件系统时,为了加快文件目录的检索速度,可利用“文件控制块分解法”。 假设目录文件存放在磁盘上,每个盘块 512 字节,文件控制块占 64 字节,其中文件名占 8 字 节,文件控制块分解后,第一部分占用 10 字节(包括文件名和文件内部号),第二部分占 56 字节 (其中包括文件内部号和文件其他信息)

1)假设某一目录文件共有 256 个文件控制块,分别给出采用分解法前和分解法后,查找该 目录文件的一个文件控制块的平均访盘次数。

2)一般地,若目录文件分解前占用 n 个盘块,分解后改用 m 个盘块存放文件名和文件内部 号部分,请给出访盘次数减少的条件。

25. 文件分配所用的位示图应该保存在哪里,请说明原因.

26.对于用户来说,有些系统把设备也看成文件,试问这样做有什么好处?还会带来什么 问题?

27.计算机用户身份鉴别与验证通常有哪三种方式?

28.在设计文件系统的安全性时,应该考虑哪些方面的情况?

29.请对常使用的计算机系统中的文件系统的性能和可靠性,做一个比较全面的评价。如 果想改进这个文件系统的性能和可靠性,可以从哪些方面进行?