操作系统习题与解(含答案)答 联系客服

发布时间 : 星期日 文章操作系统习题与解(含答案)答更新完毕开始阅读d485a7959cc3d5bbfd0a79563c1ec5da50e2d682

所要访问的数据文件所经过的全部目录文件名用“/”连接而形成的路径名称为相对路径。 四、 问答

1、 什么是索引文件?为什么要引入多级索引?

索引文件得文件系统为每个文件另外建立一张指示逻辑记录和物理块之间的对应关系表,此表称为索引表,文件本身和索引表组成的文件称为索引文件。

对于一个非常大的文件,为找到一个记录而查找的记录数目非常多,为了进一步提高检索效率,可以为顺序索引文件建立多级索引,即为索引文件再建立一张索引表,形成两级索引,再为两级索引文件建立索引,形成三级索引,依次类推,形成多级索引。 2、 对目录管理的主要要求是什么?

A、 实现按名存取。即用户只需向系统提供所要访问文件的名字,便能快速

准确地找到指定文件在外存上的存储位置。

B、 提高对目录的检索速度。通过合理地组织目录结构的方法,可加快对目

录的检索速度,从而提高对文件的存取速度。

C、 文件共享。在多用户系统中,应允许多个用户共享一个文件,这样就须

在外存中保留一份该文件的副本,供不同用户使用,以节省大量的存储空间,并方便用户和提高文件利用率。

D、 允许文件重名。系统应允许不同用户对不同文件采用相同的名字,以便

于用户按照自己的习惯给文件命名和使用文件。

五、 综合

1、 在MS—DOS中有两个文件A和B,A占用11、12、16和14四个盘块;

B占用13、18和20三个盘块。试画出在文件A和B中各盘块间的链接情况及FAT的情况。 解:

29

FAT FCB A 11 FCB B 13

2、假定盘块的大小为1KB,对于540MB的硬盘FAT需占用多少存储空间?当硬盘容量为1.2GB时,FAT需占用多少存储空间?

解:如果盘块大小为1KB,540MB的硬盘有540MB/1KB=540K个盘块,表示540K个盘块至少需要20位的二进制,即需要2.5个字节,540K个盘块则需540K*2.5B=1350K个字节的空间。

如果硬盘的大小为1.2GB,共有1.2M个盘块,表示1.2M个盘块至少需要22位的二进制,因此一个FAT项要用3个字节,1.2GB硬盘的FAT需占用1.2M*3=3.6MB的空间。

3、假如盘块大小为4KB,每个盘块号占4个字节,在两级索引分配时,允许的最大文件是多少?

解:由题目给定,盘块大小为4K,每个盘块号占4个字节,则1个块中可有1K个块号,1K个块最大容量为1K*4KB=4MB; 即在一级索引中可以允许的最大文件大小为4MB。

在二级索引中,最多可包含的存放文件的盘块的盘块号总数为1K*1K=1M个,每个盘块大小为4KB,则两级索引允许的最大文件是1M*4KB=4GB。

30

…… 12 16 18 EOF 15 14 17 20 19 EOF …… 11 12 13 14 15 16 17 18 19 20

5、有如下请示磁盘服务的队列,要访问的磁道分别是98、183、37、122、14、124、65、67。现在磁头在53道上,若按最短寻道时间优先法,磁头的移动道数是多少?

解:最短寻道时间优先法总是让查找时间最短的那个请求先执行,而不考虑请示访问者到来的先后时间。即靠近当前移动臂位置的请示访问者将优先执行,当前磁头在53道上,则总的移动顺序为:53—65—67—98—122—124—183—37—14。

移动道数为:12+2+30+23+84+24+2+59=236。

6、若磁头的当前位置为100磁道,磁头正向磁道号增加方向移动,现有一磁盘读写请求队列:23、376、205、132、19、61、190、398、29、4、18、40。若采用我来先服务、最短寻道时间优先和扫描算法,试计算出平均寻道长度各为多少?

解:采用先来先服务方法:

磁道移动数目为:77+353+171+73+113+42+129+208+369+25+14+22=1596,平均寻道长度为1596/12=133。

采用最短寻道时间优先磁盘调度算法,进行调度的情况为:

32+58+15+144+21+11+6+4+1+14+372+22=700,平均寻道长度为700/12=58.3。

采用扫描算法,进行调度时,从100道开始,磁头向磁道号增加的方向移动,磁道移动总数为:32+58+15+171+22+337+21+11+6+4+1+14=692,平均寻道长度为:692/12=57.7。

第六章 进程间的制约关系

一、选择题

1.在为多道程序所提供的可共享的系统资源不足时,可能出现死锁。但是,不适当的( A )也可能产生死锁。

A.进程优先权 B.资源的线性分配 C.进程推进顺序 D.分配队列优先权

2.采用资源剥夺法可解除死锁,还可以采用(B)方法解除死锁。 A.执行并行操作 B.撤消进程 C.拒绝分配新资源 D.修改信号量

31

3.产生死锁的四个必要条件是:互斥、( B )、循环等待和不剥夺。 A.请求与阻塞 B.请求与保持 C.请求与释放 D.释放与阻塞 4.发生死锁的必要条件有四个,要防止死锁的发生,可以破坏这四个必要条件,但破坏( A )条件是不太实际的。

A.互斥 B.不可抢占 C.部分分配 D.循环等待 6.资源的按序分配策略可以破坏( D )条件。 A.互斥使用资源 B.占有且等待资源 C.非抢夺资源 D.循环等待资源 7.在( C )的情况下,系统出现死锁。

A.计算机系统发生了重大故障 B.有多个封锁的进程同时存在 C.若干进程因竞争资源而无休止地相互等待他方释放已占有的资源 D.资源数大大小于进程数或进程同时申请的资源数大大超过资源总数 8.银行家算法是一种( B )算法。

A.死锁解除 B.死锁避免 C.死锁预防 D.死锁检测 9.当进程数大于资源数时,进程竞争资源( B )会产生死锁。 A.一定 B.不—定

10.在非剥夺调度方式下,运行进程执行V原语后,其状态( A )。 A.不变 B.要变 C.可能要变 D.可能不变 11.两个进程争夺同一个资源( B )。

A.一定死锁 B.不一定死锁 C.不死锁 D.以上说法都不对 12.可以被多个进程在任一时刻共享的代码必须是( A )。

A.不能自身修改的代码 B.顺序代码 C.无转移指令的代码 D.汇编语言编制的代码

13.当对信号量进行V原语操作之后( C )。

A.当S<0,进程继续执行 B.当S>0,要唤醒一个就绪进程 C.当S<=0,要唤醒一个等待进程 D.当S<=0,要唤醒一个就绪进程 14.正在运行的进程在信号量S上操作P操作之后,当S<0,进程将进入信号量的( A)。

A.等待队列 B.提交队列 C.后备队列 D.就绪队列 15.如果发现系统有(C )的进程队列就说明系统有可能发生死锁了。

32