当前位置:文档之家› 操作系统第八章课后习题

操作系统第八章课后习题

操作系统第八章课后习题
操作系统第八章课后习题

1.目前常用的外存有哪几种组织方式?

答;(1)连续组织方式。为每一个文件分配- -组位置相邻接的盘块,由此形成的文件物理结构是顺序式的文件结构。

(2)链接组织方式。为每个文件分配一组位置离散的盘块,通过给每个盘块设置一个指针,将属于同-一个文件的盘块链接在一起,链接的顺序和文件的逻辑页的顺序一致。由此形成的文件物理结构是链接文件。

(3)索引组织方式。为每个文件分配- -组位置离散的盘块,为每个文件建立一个物理结构的索引表,记录分配给该文件的物理盘块,以及这些盘块和文件逻辑页顺序的对应关系。由此形成的文件物理结构是索引文件。

2.由连续组织方式所形成的顺序文件的主要优缺点是什么?它主要应用于何种

场合?

(1)连续组织方式所形成的顺序文件的主要优点①顺序访问容易②顺序访问速度快

(2)连续组织方式所形成的顺序文件的主要缺点①要求为一个文件分配连续的存储空间

②必须事先知道文件的长度;③不能灵活地删除和插入记录

④对于那些动态增长的文件,由于事先很难知道文件的最终大小,因而很难为分配空间,而即使事先知道文件的最终大小,在采用预分配存储空间的方法时也会使大量的存储空间长期空闲。

(3)主要适用场合:连续组织方式所形成的顺序文件是一种最简单、最常用的文件组织方法,它适用于许多资料处理的场合,如磁带文件,打印文件都是常用的顺序文件。

3.在链接式文件中常用哪种链接方式?为什么?

答:链接方式分为隐式链接和显式链接两种形式。隐式链接是在文件目录的每目录项中,都含有指向链接文件第一个盘块和最后一个盘块的指针。显式链接贝把用于链接文件各物理块的指针,显式地存放在内存的一张链接表中。

4.在文件分配表中为什么要引入“簇”的概念?以“簇”为基本的分配单位有什么好处?

(1)引入“簇”的原因:为了适应磁盘容量不断增大的需要,在进行盘块分配时不再以盘块而是以簇(Cluster)为基本单位。一个簇应包含扇区的数量与磁盘量的大小直接有关。

(2)以簇作为基本分配单位的好处:能应磁盘容量不断增大的情况,还可以减少FAT 表中的项数(在相同的磁盘容量下,FAT表的项数是与簇的大小成反比),使FAT 表占用更少的存储空间,并减少访问FAT表的存取开销。

5.简要说明为什么要从FAT12发展为FAT16?又进一步要发展为FAT32?

答:(1)从FAT12发展为FAT16的原因:FAT12 表中的表项有限制,亦即最多只允许4096个。这样,随着磁盘容量的增加。必定会引起簇的大小和簇内碎片也随之增加。要想增加FAT 表中的表项数,就必须增加FAT 表的位数(宽度)如果我们将FAT表项位数增至16位,最大表项数将增至65536 216 )个,此时便能将一个磁盘分区分为65536 (216 )个簇。

(2)从FAT16发展为FAT32的原因:由于FAT16 表的长度只有65535项,随着磁盘容量的增加,簇的大小也必然会随之增加,为了减少簇内零,也就应当增加FAT 表的长度,为此需要再增加FAT 表的宽度,这样也就由FAT16演变为FAT32

6.试解释逻辑簇号和虚拟簇号这两个名词,NTPS 是如何将它们映射到文件的物理地址上的?

答:(1)逻辑簇号的定义:逻辑簇号(LCN) 是对卷进行管理的工具,使用逻辑簇号可对卷的第一个簇到最后一个簇进行编号。

(2)虚拟簇号的定义:虚拟簇号(VCN )也是对卷进行管理的工具,使用虚拟簇号可对特定文件的族从头至尾进行编号。它不要求物理上是连续的,要确定YCN 的磁盘上的定位需先将其转换为LN。

(3 )NTFS 将它们映射到文件的物理地址的方法: NTFS 在进行地址映射时,可以通过卷因子与LCN的乘积,算出卷上的物理字节偏移量,从而得到文件数据所在的物理磁盘地址。为了方便文件中数据的引用,NTFS还可以使用 VCN,以文件为单位,将属于某个文件的簇按顺序进行编号。只要知道了文件开始的簇地址,便可将VCN映射到LON。

7.在MS -DOS中有两个文件A和B, A占用11、12、16和14四个盘块; B占用13、18和20三个盘块。试画出在文件A和B中各盘块间的链接情况及FAT的情况。

8. NTFS文件系統中的文件所采用的是什么样的物理结构?

答:以簇作为磁盘空间分配和回收的基本单位。

9.假定一-个文件系统的组织方式与MS-DOS相似,在FAT中可有64K个指针,磁盘的盘块大小为512B,试问该文件系统能否指引-个5121B的磁盘?

解: 512MB/512B=1M个盘块,而每个盘块都应有一一个指针来指示,所以应该有1M个指针,因此若有64K个指针则不能指引一个512MB的磁盘。

10.为了快速访问,又易于更新,当数据为以下形式时,应选用何种文件组织方式?

(1) 不经常更新,经常随机访问,

答: (1)顺序结构

(2)经常更新,经常按一定顺序访问;

(2)索引顺序结构

(3)经常更新,经常随机访问。

(3)索引结构

11、在UNIX中,如果个盘块的大小为IKB,每个盘块号占4个字节,即每块可放256个地址。请转换下列文件的字节偏移量为物理地址:(1)9999;(2)18000; (3)

420000.

答:首先将逻辑文件的字节偏移量转换为逻辑块号和块内偏移量,即字节偏移量/盘块大小的商为逻辑块号,余数是块内偏移量。在UNIX的FCB中,第0~9个地址为直接地址,第10个为一次间接地址,第11个地址为二次间接地址,第12个地址为三次间接地址。在将文件的逻辑块号转换为物理块号后,使用多重索引结构,在索引结点中根据逻辑块号通过直接索引或间接索引找到对应的物理块号。

(1)9999/1024=9余783,则逻辑块号为9,直接索引第9个地址得到物理块号,(2)18000/1024=17余592,则逻辑块号为10<17<10+256,通过一次间接索引在第10个地址可得到物理块号,块内偏移地址为592;

(3)420000/1024=410余160,则逻辑块号为10+256<410,通过二次间接索引在第11个地址中可得到一次间址,再由此得到二次间址,再找到物理块号,其块内偏移地址160.

12.什么是索引文件?为什么要引入多级索引?

答:索引结构将一个逻辑文件的信息存放于外存的若干个物理块中,并为每个文件建立一个索引表,索引表中的每个表目存放文件信息所在的逻辑块号和与之对应的物理块号,一索引结构存放的文件称为索引文件。

当0S为一个大文件分配磁盘空间时,如果所分配出去的盘块的盘块号已经装满一个索引块时,6OS便为该文件分配另一个索引块,用于将以后继续为之分配的盘块号记录于其中,以此类推,再通过链指针将各索引块按序链接起来。显然,当文件太大,其索引块太多时,这种方法是低效的。此时,应为这些索引块再建立一级索引,称为第一级索引,即系统再分配一个索引块,作为第一级索引的索引块,将第一块.第二块2等索引块的盘块号,填入到此索引表中,这样便形成了两级索引分配方式,如果文件非常大时,还可用三级、四级等多级索引分配方式。

13、试说明增量式索引组织方式。

答:为了能较全面的照顾到小、中、大及特大型作业,可以采取多种组织方式来构成文件的物理结构。

1、直接寻址:如果盘块的大小为1KB或4KB,对于小文件(如1KB-10KB或4KB一40KB)而言,将它们的每一个盘块地址,都直接放入文件控制块FCB(或

索引结点)中,可以直接从FCB中获得该文件的盘块地址。

2、间址方式:对于中等文件(如11KB-256KB或5KB-4MB),可以采用单级索引组织方式,先从FCB中找到该文件的索引表,从中获得该文件的盘块地址,

可将它称为一次间址;对于大型和特大型文件,可以采用两级和三级索引组织方式,或称为二次间址和三次间址。

3、增量式索引组织方式:基于上述的基本思想来组织的,既采用了直接寻址方式,又采用了单级和多级索引组织方式(间接寻址)。

14,有一计算机系统利用图8-19所示的位示图来管理空闲盘块。盘块的大小为

1KB

现要为某文件分配两个盘块,试说明盘块的具体分配过程。

答:(1)顺序扫描位示图,从中找到第一个值为0的二进制位,得到行号i=3,号j-3。

(2)将找到的二进制位转换成对应盘块号。盘块号为:b= (3-1) *16+3=35;(3)

修改位示图,令map[3,3]=1,并将该盘块分配出去。

类似地,可使用相同的方法找到第二个值为0的二进制位,得到行号i=4,列号j=7,其对应的盘块号为55,令map[i,jl=1,并将该盘块分配出去。

15.某操作系统的磁盘文件空间共有500块,若用字长为32位的位示图管理盘空间,试问:

(1)位示图需多少个字?2第i字第j位对应的块号是多少?3给出申请/归还一块的工作流程。

答:(1)位示图占用字数为500/32=16(向上取整)个字。

(2) 第i字第j位对应的块号为:N=32xitj。

(3)申请时自.上至下、自左至右扫描位示图跳过为1的位,找到第- -个遇到的0位

根据它是第i字第j位算出对应块号,并分配出去。,归还时已知块号,块号32 算出第i字第j位并把位示图相应位清0.

16.对空闲磁盘空间的管理常采用哪几种分配方式?在UNIX系统中是采用何种

分配

方式?

答:空闲表法、空闲链表法、位示图法、成组链接法。UNIX系统采用的是成组

链接法

17.可从哪几方面来提高对文件的访问速度?

答:(1)改进文件的目录结构以及检索目录的方法来减少对目录的查找时

间;

(2)选择好的文件存储结构;

(3) 提高磁盘的1/0速度,能将文件中的数据块快速地从磁盘传送到内存,或

相反。

18.何谓磁盘高速缓存?在设计磁盘高速缓存时需要考虑哪些问题?

答:(1)磁盘高速缓存的定义:磁盘高速缓存是指在内存中为磁盘盘块设置的一

个缓冲区,在缓冲区中保存了某些盘块的副本。当出现- -个访问磁盘的请求时,由核心先去查看磁盘高速缓冲器,看所请求的盘块内容是否已在磁盘高速缓存中,如果在,便可从磁盘高速缓存中去获取,这样就省法了启动磁盘操作,而且可使本次访问速度提高几个数量级;如果不在,需要启动磁盘将所需要的盘块

内容读入,并把所需盘块内容送给磁盘高速缓存,以便以后又需要访问该盘块的数据时,便可直接从高速缓存中提取。

(2)在设计磁盘高速缓存时需要考虑的问题:

①如何将磁盘高速缓存中的数据传送给请求进程:

②采用什么样的置换策略:

③已修改的盘块数据在何时被写回磁盘。

19.可以采取哪几种方式将磁盘高速缓存中的数据传送给请求者进程?

答:如果1/0请求所需要的数据能从磁盘高速缓存中获取,此时就需要将磁盘

高速缓存中的数据传送给请求进程。所谓的数据交付就是指将磁盘高速缓存中的

数据传送给请求者进程。系统可以采取两种方式将数据交付给请求进程:

(1)数据交付,这是直接将高速缓存中的数据传送到请求者进程的内存工作区中:

(2 )指针交付,只将指向高速缓存中某区域的指针交付给请求者进程。后- -种方式由于所传

送的数据量少,因而节省了数据从磁盘高速缓存存储空间到进程的内存工作区的时间。

20、何谓提前读和延迟写?

答:提前读是指在读当前盘块的同时,将下一个可能要访问的盘块数据读入缓冲区,以便需要时直接从缓冲区中读取,无需启动磁盘。

延迟写是指在写盘块时,将对应缓冲区中的立即写数据暂时不立即写以备不

久之后再被访问,只将它置上“延迟写”标志并挂到空闲缓冲队列的末尾。当移到空闲缓冲队首并被分配出去时,才写缓冲区中的数据。只要延迟写块仍在空闲缓冲队列中,任何要求访问都可直接从其中读出数据或将数据写入其中,而不必去访问磁盘。

虚拟盘又称RAM盘,是利用内存空间仿真磁盘。其设备驱动程序可以接受所

有标准的磁盘操作,但这些操作不是在磁盘上而是在内存中,因此速度更快。

21、试说明廉价磁盘冗余阵列RAID的主要优点。

答:廉价磁盘冗余阵列RAID是利用一台磁盘阵列控制器,统一管理和控制一-组(几台到几十台)磁盘驱动器,组成高度可靠快速大容量的磁盘系统。操作系统将RAID中的一-组物理磁盘驱动器看作一一个单个的逻辑磁盘驱动器。用户数据和系统数据可分布在阵列的所有磁盘中,并采取并行传输方式,大大减少数据传输时间和提高了可靠性。

22.在第- -级系统容错技术中,包括哪些容错措施?什么是写后读校验?

答:一级系统容错技术包括双份目录、双份文件分配表及写后读校验等容错措施。写后读校验是每次从内存缓冲区向磁盘写入一个数据块后,又立即从磁盘上读出该数据块,并送至另- -缓冲区中,再将该缓冲区内容与内存缓冲区中在写后仍保留的数据进行比较。若两者-致,才认为写入成功,继续写下一个盘块。否则重写。若重写后仍不一致,则认为盘块缺陷,便将应写入该盘块的数据,写入到热修复重定向区中。

23.在第二级系统容错技术中,包括哪些容错措施?请画图说明之。

答(1) 第二件容错技术包含的容错措施:第二级容错技术主要用于防止由磁

盘驱动器和磁盘控制器故障所导致的系统不能正常工作,它具体又可分为磁盘镜像和磁盘双工。

(2 ) 第二级容错技术的图示说明

24.具有容错功能的集群系统的主要工作模式有哪几种?请简要说明之。

答:(1)双机热备份模式

定义:在这种模式的系统中,备有两台服务器,两者的处理能力通常是完全相同的,一台作为主服务器,另一台作为备份服务器。

优点:该模式的优点是提高了系统的可用性,易于实现,而且主、备份服务器完全独立,可支持远程热备份,从而能消除由于火灾、爆炸等非计算机因素所造成的隐患。

缺点:该模式的缺点是从服务器处于被动等待状态,整个系统的使用效率只有50%。

(2 )双机互为备份模式

定义:在双机互为备份模式中,平时,两台服务器均为在线服务器,它们各自完成自己的任务。

优点:这种模式的优点是两台服务器都可用于处理任务,因而系统效率较高,现在已将这种模式从两台机器扩大到4台8台16 台甚至更多。系统中所有的机器都可用于处理任务,当其中一台发生故障时,系统可指定另一台机器来接替它的工作。

(3 ) 公用磁盘模式

定义:为了减少信息复制的开销,可以将多台计算机连接到一台公共的磁盘系统上去。

优点:这种模式的优点是消除了信息的复制时间,因而减少了网络和服务器的开销。

25.为什么要在系统中配置后备系统?目前常用做后备系统的设备有哪几种? 答:“(1) 在系统中配置后备系统的目的:在一个完整的系统中是必须配置后备系统的。这- -方面是因为磁盘系统不够大,不可能将系统在运行过程中的所有数

据都装在磁盘中,应当把暂时不需要但仍然有用的数据,存放在后备系统中保存: 起来。另一方面是为了防止系统发生故障或病毒的感染,把系统中的数据弄错或丢失,也需要将比较重 y要的数据存放在后备系统中。

(2)常用的后备系统设备:目前常用做后备系统的设备有磁带机、磁盘机和光

盘机。

26.何谓事务?如何保证事务的原子性?

答:事务(Transact ion)是恢复和并发控制的单位,是用户定义的一个操作序列,这些操作要么都做,要么都不做,是一一个不可分割的工作单位。

这些数据为了实现上述的原子修改,通常须借助于称为事务记录的数据结构

来实现。

结构被放在一个非常可靠的存储器(又称稳定存储器)中,用来记录在事务运行时数据项修

改的全部信息,故又称为运行记录(Log)。该记录中包括有下列字段:

事务名:用于标识该事务的唯一名字

数据项名:它是被修改数据项的唯一名字;

旧值:修改前数据项的值;

新值:修改后数据项将具有的值。

27.引入检查点的目的是什么?引入检查点后又如何进行恢复处理?

答:引入检查点的目的是使对事务记录表中事务记录的清理工作经常化。恢复处理由恢复例程来实现。首先查找事务记录表,确定在最近检查点以前开始执行的最后的事务Ti。找到Ti后再返回搜索事务记录表,找到第一一个检查点记录,从该检查点开始,返回搜索各个事务记录,利用redo和undo过程对他们进行相应的处理。

28.为何引入共享锁?如何用互斥锁或共享锁来实现事务的顺序性?

答:引入共享锁是为了提高运行效率。在给对象设置了互斥锁和共享锁的情况下,如果事务Ti要对Q执行读操作,只需获得Q的共享锁。如果对象Q已被互斥锁锁住,

则Ti必须等待;否则便获得共享锁对Q执行读操作。如果Ti要对Q执行写操作,则Ti还要获得Q的互斥锁。若失败则等待;成功则获得互斥锁并对Q执行写操作。

29.当系统中有重复文件时,如何保证它们的一致性?

答:可以采用两种方法: - -是对所有的重复文件进行同样的修改,二是用新修改的文件替换所有的重复文件。

30.如何检查盘块号的一致性?检查时可能出现哪几种情况?

答:为了保证盘块号的一致性,先将计数器表中的所有表项初始化为0,用

N个空闲盘块号计数器组成的第一-组计数器对从空闲盘块表中读出的盘块号计数,用N个数据盘块号计数器组成的第二组计数器对从文件分配表中读出的已分配给文件使用的盘快号计数。如果两组计数中的对应数据互补则数据--致,反之则发生错误。

检查时可能出现的情况:(1)两组计数器中盘块K的计数值均为0,应在空

闲盘块表中增加盘块号K;

(2)空闲盘块号计数器中盘块K的计数值为2,应删除- -个空闲盘块号K;

(3)空闲盘块号计数器中盘块号K的计数值为0,而数据盘块号计数器中盘

块号K的计数值大于1,则错误严重,存在数据丢失等事件,必须立即报告

系统加以处理。

相关主题
文本预览
相关文档 最新文档