《2022年计算机操作系统作业解答》由会员分享,可在线阅读,更多相关《2022年计算机操作系统作业解答(17页珍藏版)》请在金锄头文库上搜索。
1、1 / 17 计算机操作系统(本科)作业解答第 1章计算机操作系统概述一、单选题(每题1 分,共 10 分) 1.C 2.D 3.A 4.B 5.C 6.C 7.C 8.C 9.A 10.C二、填空题(每空1 分,共 11 分)1.系统软件2.批处理操作系统分时操作系统实时操作系统网络操作系统分布式操作系统3.作业管理文件管理存储管理设备管理进程管理三、判断题(每小题1 分,共 5 分)1、3 是正确的, 2、 4、5 不正确。2. 原因:多用户操作系统与多终端没有必然联系,一个终端也可以为多用户使用。4原因:并发与并行代表着不同的含义。并发不是真正的并行,而是从一段时间看,各个活动都得到了执
2、行。5原因:操作系统“ 生成 ” ,是指用户可以在一定范围内任意装配成核心,从而产生最适合用户自己工作环境的操作系统内核。四、简答题1叙述操作系统在计算机系统中的地位。(5 分)答:计算机操作系统是方便用户、管理和控制计算机软硬件资源的系统软件(或程序集合)。操作系统在计算机系统中处于承上启下的地位。作为最贴近硬件的第一层软件,操作系统是硬件的扩充。操作系统虽属于系统软件,却又不同于其他的系统软件,其他系统软件都受操作系统的管理和控制,得到操作系统的支持和服务。操作系统还为用户和计算机提供接口,具有友好方便的用户界面。2试对分时操作系统和实时操作系统进行比较。(5 分)答:实时操作系统与分时操
3、作系统系统相比,其区别表现在三个方面(1)分时系统的交互性较强,而实时系统一般是具有特殊用途的专用系统,交互能力较弱;(2)实时系统对响应时间一般有严格的要求,要求更及时,而分时系统对响应时间的要求是以人们能接受的等待时间为依据的;(3)虽然分时系统也要求系统可靠,但实时系统对可靠性的要求更高。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 1 页,共 17 页2 / 17 3简述 DOS、Windows 、UNIX/Linux操作系统各具有什么特点?(9 分)答: DOS 主要是单用户单任务操作系统,是一种最简单的微机操作系统。主要类型有MS-D
4、OS ,PC-DOS,CCDOS 等。 Windows 操作系统的主要特点是:(1)图形用户界面;(2)多任务处理;(3)设备无关性。 UNIX 操作系统的主要特点是:(1)可移植性好;(2)多用户,多任务;(3)分时系统;(4)系统安全。第 2 章作业管理一、单选题(每题1 分,共 10 分) 1.D 2.A 3.B 4.C 5.A 6.C 7.B 8.A 9.B 10.A 二、填空题(每空1 分,共 8 分)1.程序数据作业说明书2.脱机输入联机输入假脱机输入3.操作命令系统调用三、判断题(每题1 分,共 5 分)2、3、5 是正确的, 1、4 不正确。1原因:作业一旦被作业调度程序选中,
5、则为该作业分配内存和外设等资源,为其建立相应的进程,进程为就绪态,不一定能立即占有CPU。4原因:系统调用不同于用户子程序,它是运行在系统态,而用户子程序运行在用户态。四、简答题1 作业调度和进程调度有什么区别?(6分)答:作业调度与进程调度之间的差别主要是:作业调度是宏观调度,它所选择的作业只是具有获得处理机的资格,但尚未占有处理机,不能立即在其上实际运行;而进程调度是微观调度,动态地把处理机实际地分配给所选择的进程,使之真正活动起来。另外,进程调度相当频繁,而作业调度执行的次数一般很少。2 试述系统调用与一般过程调用的主要区别。(6 分)答:系统调用在本质上是一种过程调用,但它是一种特殊的
6、过程调用,它与一般过程调用的主要区别如下:(1)运行状态不同。一般的过程调用,其调用和被调用过程都是用户程序,它们都运行在同一系统状态下;而系统调用的调用过程是用户程序,它运行在用户态,其被调用过程是系统过程,运行在核心态。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 2 页,共 17 页3 / 17 (2)进入方式不同。一般过程调用可以直接通过过程调用语句将控制转移到被调用过程;而执行系统调用时,由于调用和被调用过程处于不同系统状态,必须通过访管中断进入。五、综合题1设有 4 道作业,它们的提交时间及执行时间如下:作业号提交时间执行时间1 2
7、3 4 10.0 10.2 10.4 10.5 2.0 1.0 0.5 0.3 试计算在单道程序环境下,采用先来先服务调度算法和最短作业优先调度算法时的平均周转时间和平均带权周转时间,并指出它们的调度顺序。(时间单位:小时,以十进制进行计算。10 分)解:若采用先来先服务调度算法,则其调度顺序为1、2、3、4。作业号提交时间执行时间开始时间完成时间周转时间带权周转时间1 10.0 2.0 10.0 12.0 2.0 1.0 2 10.2 1.0 12.0 13.0 2.8 2.8 3 10.4 0.5 13.0 13.5 3.1 6.2 4 10.5 0.3 13.5 13.8 3.3 11.
8、0 平均周转时间(2.02.83.l3.3)/42.8 平均带权周转时间(l.02.86.211.0)/45.25 若采用短作业优先调度算法,则其调度顺序为1、4、3、2。作业号提交时间执行时间开始时间完成时间周转时间带权周转时间1 10.0 2.0 10.0 12.0 2.0 1.0 4 10.5 0.3 12.0 12.3 1.8 6.0 3 10.4 0.5 12.3 12.8 2.4 4.8 2 10.2 1.0 12.8 13.8 3.6 3.6 平均周转时间 (2.0l.82.43.6)/42.45 平均带权周转时间(1.064.83.6)/43.85 精选学习资料 - - - -
9、 - - - - - 名师归纳总结 - - - - - - -第 3 页,共 17 页4 / 17 2假设有四个作业,它们的提交、运行时间如下表所示。若采用响应比高者优先调度算法,试问平均周转时间和平均带权周转时间为多少?(时间单位:小时,以十进制进行计算。10分)作业号到达时间运行时间1 2 3 4 8.0 8.3 8.5 9.0 2.0 0.5 0.l 0.4 【分析】所谓响应比高者优先调度算法,就是在每次调度作业运行时,先计算后备作业队列中每个作业的响应比,然后挑选响应比最高者投入运行。响应比定义如下:响应比作业响应时间运行时间的估计值其中响应时间为作业进入系统后的等待时间加上估计的运行
10、时间。于是响应比 1作业等待时间运行时间的估计值在 8:00 时,因为只有作业 1到达,系统将作业 1 投入运行。作业 1 运行 2 小时(即 10:00 时)完成。由于该算法采用响应比高者优先调度算法,这样在作业1 执行完后,要计算剩下三个作业的响应比,然后选响应比高者去运行。剩下三个作业的响应比为:r2l+(10.0-8.3) 0.54.4 r31+(10.0-8.5) 0.l16 r4l+(10.0-9.0) 0.43.5 从计算结果看,作业3 的响应比高,所以让作业3 先运行。作业3 运行 0.1 小时完成,此时,作业2 和作业 4 的响应比为:r2l+(10.1-8.3) 0.54.
11、6 r4l+(10.l-9.0) 0.43.75 从上述计算结果看,作业2 的响应比高,所以让作业2 先运行。因此四个作业的执行次序为:作业1、作业 3、作业 2、作业 4。解:四个作业的调度次序为:作业1、作业 3、作业 2、作业 4。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 4 页,共 17 页5 / 17 作业号到达时间运行时间开始时间完成时间周转时间带权周转时间1 8.0 2.0 8.0 10.0 2.0 1.0 2 8.3 0.5 10.1 10.6 2.3 4.6 3 8.5 0.1 10.0 10.1 1.6 16.0 4 9.
12、0 0.4 10.6 11.0 2.0 5.0 平均周转时间 T( 2.02.3l.62.0)/41.975 平均带权周转时间 W( l.04.616.05.0)/46.65 计算机操作系统作业二第 3 章文件管理一、单选题(每题1 分,共 10 分) 1.C 2.B 3.C 4.A 5.A 6.C 7.B 8.C 9.D 10.D 二、判断题(每题1 分,共 5 分)3、5 是正确的, 1、 2、4 不正确。1原因:硬盘中不是只有文件系统存在。2原因: UNIX 系统中的i 节点不是文件内容的一部分,而是用于文件管理的数据结构。4原因:在采用树型目录结构的文件系统中,不同用户的文件名可以相同
13、。三、简答题1文件系统要解决哪些问题?(4 分)答:一般说来,文件系统应具备以下功能:文件管理(如创建/删除文件,对文件的各种操作等),目录管理(创建/删除目录项,权限验证等),文件存储空间的管理(如外存空间的分配与回收),文件精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 5 页,共 17 页6 / 17 的共享和保护,提供方便的接口(如实现按名存取,文件系统调用等)。2简述文件的逻辑结构、物理结构及存取方法之间的关系。(4 分)答:由用户从使用角度确定的文件结构称为文件的逻辑结构;文件系统从文件的存储和检索的角度,在存储介质上的文件组织方式称为
14、文件的物理结构。文件的逻辑结构离不开文件的实际物理结构,同时又与文件的存取方法有关。按存取的次序分,文件的存取方法分为顺序存取和直接存取。一般来说,对顺序存取的文件,文件系统可把它组织成顺序文件和链接文件;对于随机存取的文件,文件系统可把它组织成索引文件。但索引文件也可以进行顺序存取。3常用的文件存取控制方式有哪些?(4 分)答:主要有存取控制矩阵、用户权限表、使用口令、使用密码。4UNIX 文件系统的主要特点是什么?(6 分)答: UNIX/Linux文件系统的主要特点有:(1)UNIX 或 Linux 文件系统的目录组织是一个树形结构;(2)文件本身是无结构的字符流;(3)UNIX或 Li
15、nux 文件系统把外部设备做成特殊文件,与普通文件一并进行管理。5文件系统的系统调用内容是什么?(6 分)答 : 文 件 的 创 建 ( create) 、 打 开 ( open) 、 读 ( read) 、 写 ( write ) 、 关 闭 ( close) 、 删 除(delete)。第 4 章存储管理一、单选题(每题1 分,共 15 分) 1.C 2.B 3.B 4.A 5.D 6.A 7.C 8.B 9.D 10.C 11. D 12.B 13.D 14.A 15.B 二、填空题(每空1 分,共 12 分)1物理块2分区管理分页管理分段管理段页式管理3重定位精选学习资料 - - -
16、- - - - - - 名师归纳总结 - - - - - - -第 6 页,共 17 页7 / 17 4虚拟存储5存储保护键界限寄存器6交换技术7页号物理块号三、简答题1存储管理的主要功能是什么?(4 分)答:存储管理的主要功能包括:(1)主存空间的分配和回收;(2)将用户的逻辑地址转换成主存的物理地址,完成重定位;(3)主存空间的共享和保护;(4)使用“虚拟存储器”,扩充主存空间。2名词解释:逻辑地址与物理地址(4 分)答:在具有地址变换机构的计算机中,允许程序中编排的地址和信息实际存放在内存中的地址有所不同,前者称为逻辑地址,后者称为物理地址。3什么是虚拟存储器?其基本特征有哪些?(6 分
17、)答:虚拟存储器实际上是为扩大贮存容量而采用的一种设计技巧,它是由操作系统调度,采用内外存的交换技术,各道程序在必需使用时调入内存,不用的调出内存,这祥好像内存容量不受限制。虚拟存储器的基本特征主要有:虚拟扩充,并非真正扩充了主存空间;作业部分装入;主存空间离散分配;程序和数据在主存和辅存之间多次对换。4简述什么是内存的覆盖和交换技术?两者有什么区别?(6 分)答:在多道系统中,交换是指系统把内存中暂时不能运行的某部分作业写入外存交换区,腾出空间,把外存交换区中具备运行条件的指定作业调入内存。交换是以时间来换取空间,减少对换的信息量和时间是设计时要考虑的问题。由于CPU 在某一时刻只能执行一条
18、指令,所以一个作业不需要一开始就全装入内存,于是将作业的常驻部分装入内存,而让那些不会同时执行的部分共享同一块内存区,后调入共享区的内容覆盖前面调入的内容,这就是内存的覆盖技术。交换技术由操作系统自动完成,不需要用户参与,而覆盖技术需要专业的程序员给出作业各部分之间的覆盖结构,并清楚系统的存储结构;交换技术主要在不同作业之间进行,而覆盖技术主要在同一个作业内进行;另外覆盖技术主要在早期的操作系统中采用,而交换技术在现代操作系统中仍具有较强的生命力。五、综合题1下表给出了某系统中的空闲分区表,系统采用可变式分区存储管理策略。现有以下作业序列:96K、20K、200K 。若采用首次适应算法和最佳适
19、应算法来处理这些作业序列,试问哪一种算法可以满足该作业序列的请求,为什么?(4分)精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 7 页,共 17 页8 / 17 分区号大小起始地址1 2 3 4 5 32K 10K 5K 218K 96K 100K 150K 200K 220K 530K 分析:首次适应算法要求空闲分区按地址递增的次序排列,在进行内存分配时,总是从空闲分区表首开始顺序查找,直到找到第一个能满足其大小要求的空闲分区为止。然后,再按照作业大小,从该分区中划出一块内存空间分配给请求者,余下的空闲分区仍留在空闲分区表中。最佳适应算法要求空
20、闲分区按大小递增的次序排列,在进行内存分配时,总是从空闲分区表首开始顺序查找,直到找到第一个能满足其大小要求的空闲分区为止。如果该空闲分区大于作业的大小,则与首次适应算法相同,将剩余空闲区仍留在空闲区表中。解:若采用首次适应算法,在申请96K 存储区时,选中的是4 号分区,进行分配后4 号分区还剩下122K;接着申请20K,选中 1 号分区,分配后剩下12K;最后申请200K,现有的五个分区都无法满足要求,该作业等待。显然采用首次适应算法进行内存分配,无法满足该作业序列的需求。这时的空闲分区表如下表所示。采用首次适应算法分配后的空闲分区表分区号大小起始地址1 12K 120K 2 10K 15
21、0K 3 5K 200K 4 122K 316K 5 96K 530K 若采用最佳适应算法,在申请96K 存储区时,选中的是5 号分区, 5 号分区大小与申请空间大小一致,应从空闲分区表中删去该表项;接着申请20K 时,选中 1 号分区,分配后1 号分区还剩下12K:最后申请200K,选中 4 号分区,分配后剩下 18K。显然采用最佳适应算法进行内存分配,可以满足该作业序列的需求。为作业序列分配了内存空间后,空闲分区表如下表所示。最佳适应算法分配后的空闲分区表分区号大小起始地址精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 8 页,共 17 页9
22、/ 17 1 12K 120K 2 10K 150K 3 5K 200K 4 18K 420K 2某虚拟存储器的用户编程空间共32个页面,每页为1KB,内存为 16KB。假定某时刻一用户页表中已调入内存的页面的页号和物理块号的对照表如下:页号物理块号0 5 1 10 2 4 3 7 则逻辑地址0A5C(H)所对应的物理地址是什么?(4 分)解:页式存储管理的逻辑地址分为两部分:页号和页内地址。由已知条件“ 用户编程空间共32 个页面” ,可知页号部分占5 位;由 “ 每页为 1KB ”,1K=210,可知内页地址占10 位。由 “ 内存为16KB ”,可知有 16块,块号为4 位。逻辑地址0A
23、5C(H)所对应的二进制表示形式是:000 1010 0101 1100 ,根据上面的分析,下划线部分为页内地址,编码“000 10” 为页号,表示该逻辑地址对应的页号为2。查页表,得到物理块号是4(十进制),即物理块地址为:01 00 ,拼接块内地址10 0101 1100,得 01 0010 0101 1100,即 125C(H)。3考虑下述页面走向: 1,2,3,4,2,1,5,6,2,1,2,3,7,6,3,2,1,2,3,6 当内存块数量分别为 3 时,试问先进先出(FIFO)、最近最少使用算法(LRU)、最优淘汰算法(OPT)这三种置换算法的缺页次数各是多少?(6 分)分析:以 F
24、IFO 算法为例,首先要清楚FIFO 的概念,即先进先出,先进入内存的页面先被换出内存,总是选择在内存中停留时间最长的一页淘汰。理由是最早调入内存的页面,其不再被使用的可能性要大于刚调入内存的页。其次,按照上面的思想,画一张内存使用情况的简图。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 9 页,共 17 页10 / 17 我们认为所有内存块最初都是空的,第一次用到的页面都产生一次缺页。当内存块数量为3 时,下图是使用FIFO 算法是内存的变化情况:页面 1,2,3, 4,2,1,5, 6,2,1,2,3,7,6, 3,2,1,2, 3,6块 1
25、 1 1 1 4 4 4 6 6 6 3 3 3 2 2 2 6块 2 2 2 2 1 1 1 2 2 2 7 7 7 1 1 1块 3 3 3 3 5 5 5 1 1 1 6 6 6 3 3缺页划的项表示发生了缺页中断。因此,FIFO 算法发生缺页中断的次数为16。在 FIFO 算法中,当页6 要调入时,内存的状态为4、 1、5,考查页6 之前调入的页面,分别为5、1、2、4、(其中 5 是紧挨着6 之前的那个页面),可见这些页面中4 为最先进入内存的,本次应换出,然后把页6 调入内存,所以页面6 替换了页面4。按照这个思路, LRU 1 ,2,3, 4,2,1,5,6,2,1,2,3,7,
26、6, 3,2,1,2, 3,6块 1 1 1 1 4 4 5 5 5 1 1 7 7 2 2 2块 2 2 2 2 2 2 6 6 6 3 3 3 3 3 3块 3 3 3 1 1 1 2 2 2 2 6 6 1 6缺页因此, LRU 算法发生缺页中断的次数为15。在 LRU 算法中,最近最少使用的页面被先换出。当页6 要调入时,内存的状态为5、2、1,考查页 6 之前调入的页面,分别为5、1、2,可见 2 为最近一段时间内使用最少的,本次应换出,然后把页6 调入内存。 OPT 1,2,3, 4,2,1,5,6,2,1,2,3,7,6,3,2,1, 2,3,6块 1 1 1 1 1 1 1 3
27、 3 3 3 6块 2 2 2 2 2 2 2 7 2 2 2精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 10 页,共 17 页11 / 17 块 3 3 4 5 6 6 6 6 1 1缺页因此, OPT 算法发生缺页中断的次数为11。在 OPT 算法中,在最远的将来才被访问的页面被先换出。当页6 要调入时,内存的状态为1、2、5,考查页6 后面要调入的页面,分别为2、1、 2、,可见5 为最近一段时间内使用最少的,本次应换出,然后把页6 调入内存。计算机操作系统作业三第 5 章输入输出设备管理一、单选题(每题1 分,共 10 分) 1.D 2
28、.A 3.D 4.A 5.C 6.D 7.A 8.A 9.B 10.A 二、填空题(每空1 分,共 12 分)1.SPOOLing 独占 共享2.单缓冲多缓冲缓冲池3.字符 块4.程序直接控制方式中断控制方式 DMA 方式 通道方式三、简答题1按资源分配管理技术,输入输出设备类型可分为哪三类?(3 分)答:按资源特点可分为:输入输出设备可分为独占设备、共享设备和虚拟设备。2设备驱动程序是什么?为什么要有设备驱动程序,用户进程怎样使用驱动程序?(6 分) 答:设备驱动进程(I/O 进程,进程是并发环境下程序的一次执行)与设备控制器之间的通信程序称为设备驱动程序。设备驱动程序是控制设备动作的核心模
29、块,如设备的打开、关闭、读、写等,用来控制设备上数精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 11 页,共 17 页12 / 17 据的传输。它直接与硬件密切相关,处理用户进程发出的I/O 请求。(设备控制的三个关键寄存器内容要素:地址、数据和控制信号寄存器 叫某某人、干、什么事)用户进程使用设备驱动程序时,设备驱动程序的处理过程为:将用户进程抽象的I/O 要求转换为具体的要求,检查I/O 请求的合法性,读出和检查设备的状态,传送必要的参数,设置设备工作方式,启动 I/O 设备。3为什么要引入缓冲技术?(3 分)答:为了匹配外设与CPU 之间的
30、处理速度,为了减少中断次数以及CPU 和中断处理时间,也为了解决DMA 和通道方式的瓶颈问题,在设备管理中引入了用来暂存数据的缓冲技术。4SPOOLing 技术如何使一台打印机虚拟成多台打印机?(4 分)答:当用户进程请求打印输出时,操作系统并不真正把打印机分配给该用户进程,而是为进程在磁盘上的输出井中分配一个空闲盘区,并将要打印的数据送入其中,同时还为用户进程申请一张用户请求打印表,将用户的打印要求填入其中,再将该表挂在请求打印队列上。如果打印机空闲,输出进程将从请求打印队列的队首取出一张请求打印表,根据表中的要求将要打印的数据从输出井传送到内存的输出缓冲区,再由打印机进行打印。第 6 章进
31、程及处理机管理一、单选题(每题1 分,共 15 分) 1.B 2.C 3.C 4.D 5.C 6.B 7.B 8.C 9.B 10.C 11. B 12.C 13.A 14.B 15.D 二、填空题(每空1 分,共 9 分)1程序数据集合进程控制块(或PCB)2准备就绪3原语4互斥使用保持和等待非剥夺性循环等待四、简答题1操作系统为什么要引入进程?进程与程序的关系是怎样的?(6 分)答:引入进程的目的是为了描述程序动态执行时的活动规律和状态变化。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 12 页,共 17 页13 / 17 进程和程序是既有联
32、系又有区别的两个概念,它们的主要区别如下:( 1)程序是指令的有序集合,其本身没有任何运行的含义,它是一个静态的概念。而进程是程序在 CPU 上的一次执行过程,它是一个动态概念。( 2)程序的存在是永久的。而进程则是有生命期的,它因创建而产生,因调度而执行,因得不到资源而暂停,因撤销而消亡。( 3)程序仅是指令的有序集合。而进程则由程序、数据和进程控制块组成。( 4)进程和程序无一一对应关系,即同一个程序同时运行于若干不同的数据集合上,它将属于若干个不同的进程。而一个进程可以执行多个程序。( 5)进程可以生成其他进程,而程序不能生成新的程序。2一个进程入睡时其断点落在何处?它被唤醒后从何处继续
33、原来的执行?(5 分)答:一个进程入睡是指该进程由于缺乏资源不能占用CPU,进入等待状态。一个进程由程序、数据集合和进程控制块(PCB )组成。 PCB 是进程存在的唯一标志。PCB 中包括如下内容:进程标志号、进程状态(执行/就绪 /等待)、进程标志、进程优先数、程序地址、现场保护区(通常被保护的信息有程序计数器、程序状态字、各个工作寄存器等)、通信机构、其他信息等。处于睡眠状态的进程,它的断点在它的PCB 中的现场保护区中保护起来。保存程序运行的CPU 现场,以便在将来的某一时刻恢复并继续原来的运行。它被唤醒后,把它从等待进程队列中摘下,将进程状态改为就绪,然后将它插入到就绪队列中;等它占
34、用CPU 进入执行状态时,从断点处继续执行。3高级进程通信方式有哪些?(4 分)答:有共享存储器、管道文件和消息传递。4什么是死锁?(2 分)答:死锁是两个或两个以上的进程中的每一个都在等待其中另一个进程释放资源而被封锁,它们都无法向前推进,这种现象称为死锁。五、综合题1有一个阅览室,共有100个座位,读者进人时必须先在一张登记表上登记,该表为每一座位列一表目,包括座号和读者姓名等,读者离开时要消掉登记的信息,试问:(1)为描述读者的动作,应编写几个程序,设置几个进程?(2)试用 PV 操作描述读者进程之间的同步关系。(8分)解:读者的动作有两个,一是填表进入阅览室,这时要考虑阅览室里是否有座
35、位;一是读者阅读完毕,离开阅览室,这时的操作要考虑阅览室里是否有读者。读者在阅览室读书时,由于没有引起资源精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 13 页,共 17 页14 / 17 的变动,不算动作变化。算法的信号量有三个:seats 表示阅览室是否有座位(初值为100,代表阅览室的空座位数);readers表示阅览室里的读者数,初值为0;用于互斥的mutex,初值为1。读者进入阅览室的动作描述getin:while(TRUE)P (seats) 。 /* 没有座位则离开*/P(mutex) /* 进入临界区 */填写登记表。进入阅览室读
36、书。V(mutex) /* 离开临界区 */V(readers)读者离开阅览室的动作描述getout:while(TRUE)P(readers) /* 阅览室是否有人读书*/P(mutex) /* 进入临界区 */消掉登记;离开阅览室;V(mutex) /* 离开临界区 */V(seats) /* 释放一个座位资源*/2设公共汽车上,司机和售票员的活动分别是:司机的活动:启动车辆;精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 14 页,共 17 页15 / 17 正常行车;到站停车;售票员的活动:关车门;售票;开车门;在汽车不断地到站、停车、行驶
37、过程中,这两个活动有什么同步关系?用信号量和P、V 操作实现它们的同步。(8分)解:在汽车行驶过程中,司机活动与售票员活动之间的同步关系为:售票员关车门后,向司机发开车信号,司机接到开车信号后启动车辆,在汽车正常行驶过程中售票员售票,到站时司机停车,售票员在车停后开车门让乘客上下车。因此司机启动车辆的动作必须与售票员关车门的动作取得同步;售票员开车门的动作也必须与司机停车取得同步,在本题中,应设置两个信号量:S1、S2。S1表示是否允许司机启动汽车,其初值为0;S2表示是否允许售票员开门,其初值为 0。用 P、V 原语描述如下:int Sl0。int S20。 main() cobegin d
38、river() 。 busman()。 coend driver() while(1) 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 15 页,共 17 页16 / 17 P(S1)。启动车辆。正常行车。到站停车。 V(S2)。 busman() while(1) 关车门。 V(Sl) 。售票。 P(S2)。开车门。上下乘客。 用 P、V 操作来控制现实生活中的操作流程是一类常见的试卷。这类试卷要求解题者能将生活中的控制流程用形式化的方式表达出来。第 7 章操作系统结构和程序设计简答题操作系统设计的基本方法有哪些?(5分)精选学习资料 - - -
39、 - - - - - - 名师归纳总结 - - - - - - -第 16 页,共 17 页17 / 17 答:操作系统设计的基本方法主要有模块接口法和层次结构法。模块接口法是早期操作系统设计中采用的方法,即首先确定操作系统的总体功能,然后将总功能分解为若干子功能,实现每个子功能的程序称为模块。再按照功能将上述每个大模块分解为若干个较小的模块,如此下去,直至每个模块仅包含单一功能和紧密联系的小功能为止,即分解为最基本的模块为止,最后通过接口将所有模块连接起来形成一个整体。这种方法无需太多的结构设计工作,很快就可以进入编码阶段,而且模块之间转接的灵活性使得系统具有效率高的优点。但是,由于各基本模
40、块之间可以任意相互调用,各开模块之间相互依赖,甚至可能构成循环,形成一个复杂的网络,这使得很难对系统进行局部性修改,因而可靠性、易读性和适应性都很难得到保证。层次结构法就是将操作系统划分为许多基本模块,把这样一些模块按照调用关系分为若干层,各层之间单向依赖,不构成循环。层次结构又分为两种,即全序层次结构和半序层次结构。层次结构法的突出优点在于把整体问题局部化,把一个大型系统分解为若干个单向依赖的层次,从而将对整个系统的全局理解变为对各层的局部了解。整个系统的正确性可由各层次的正确性来加以保障,这样易读性和可靠性的目标就易于达到。此外,由于循环调用大量减少,局部修改问题也容易实现。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 17 页,共 17 页