课后习题第一章P312.OS的作用可表现在哪几个方面?答:(1)OS作为用户与计算机硬件系统之间的接口(2)OS作为计算机系统资源的管理者(3)OS实现了对计算机资源的抽象4.试说明推动多道批处理系统形成和发展的主要动力是什么?答:主要动力来源于四个方面的社会需求与技术发展:(1)不断提高计算机资源的利用率;(2)方便用户;(3)器件的不断更新换代;(4)计算机体系结构的不断发展。7.实现分时系统的关键问题是什么?应如何解决?答:关键问题是当用户在自己的终端上键入命令时,系统应能及时接收并及时处理该命令,在用户能接受的时延内将结果返回给用户。解决方法:针对及时接收问题,可以在系统中设置多路卡,使主机能同时接收用户从各个终端上输入的数据;为每个终端配置缓冲区,暂存用户键入的命令或数据。针对及时处理问题,应使所有的用户作业都直接进入内存,并且为每个作业分配一个时间片,允许作业只在自己的时间片内运行,这样在不长的时间内,能使每个作业都运行一次。11.OS有哪几大特征?其最基本的特征是什么?答:并发性、共享性、虚拟性和异步性四个基本特征;最基本的特征是并发性。14.是什么原因使操作系统具有异步性特征?答:操作系统的异步性体现在三个方面:一是进程的异步性,进程以人们不可预知的速度向前推进,二是程序的不可再现性,即程序执行的结果有时是不确定的,三是程序执行时间的不可预知性,即每个程序何时执行,执行顺序以及完成时间是不确定的。21.微内核操作系统具有哪些优点?它为何能有这些优点?答:(1)提高了系统的可扩展性(2)增强了系统的可靠性(3)可移植性(4)提供了对分布式系统的支持(5)融入了面向对象技术第二章P842.画出下面四条语句的前趋图:S1:a=x+y;S2:b=z+1;S3:c=a–b;S4:w=c+1;答:其前趋图为:5.在操作系统中为什么要引入进程概念?它会产生什么样的影响?答:为了使程序在多道程序环境下能并发执行,并对并发执行的程序加以控制和描述,在操作系统中引入了进程概念。影响:使程序的并发执行得以实行。11.试说明进程在三个基本状态之间转换的典型原因。答:(1)就绪状态→执行状态:进程分配到CPU资源(2)执行状态→就绪状态:时间片用完(3)执行状态→阻塞状态:I/O请求(4)阻塞状态→就绪状态:I/O完成13.在进行进程切换时,所要保存的处理机状态信息有哪些?答:进行进程切换时,所要保存的处理机状态信息有:(1)进程当前暂存信息;(2)下一指令地址信息;(3)进程状态信息;(4)过程和系统调用参数及调用地址信息。16.在创建一个进程时所要完成的主要工作是什么?答:(1)OS发现请求创建新进程事件后,调用进程创建原语Creat();(2)申请空白PCB;(3)为新进程分配资源;(4)初始化进程控制块;(5)将新进程插入就绪队列.17.在撤销一个进程时所要完成的主要工作是什么?答:(1)根据被终止进程标识符,从PCB集中检索出进程PCB,读出该进程状态。(2)若被终止进程处于执行状态,立即终止该进程的执行,置调度标志真,指示该进程被终止后重新调度。(3)若该进程还有子进程,应将所有子孙进程终止,以防它们成为不可控进程。(4)将被终止进程拥有的全部资源,归还给父进程,或归还给系统。(5)将被终止进程PCB从所在队列或列表中移出,等待其它程序搜集信息。19.为什么要在OS中引入线程?答:在操作系统中引入线程,则是为了减少程序在并发执行时所付出的时空开销,使OS具有更好的并发性,提高CPU的利用率。进程是分配资源的基本单位,而线程则是系统调度的基本单位。23.何谓用户级线程和内核支持线程?答:(1)用户级线程:仅存在于用户空间中的线程,无须内核支持。这种线程的创建、撤销、线程间的同步与通信等功能,都无需利用系统调用实现。用户级线程的切换通常发生在一个应用进程的诸多线程之间,同样无需内核支持。(2)内核支持线程:在内核支持下运行的线程。无论是用户进程中的线程,还是系统线程中的线程,其创建、撤销和切换等都是依靠内核,在内核空间中实现的。在内核空间里还为每个内核支持线程设置了线程控制块,内核根据该控制块感知某线程的存在并实施控制。第三章P1181.高级调度与低级调度的主要任务是什么?为什么要引入中级调度?答:高级调度的主要任务是根据某种算法,把外存上处于后备队列中的那些作业调入内存。低级调度是保存处理机的现场信息,按某种算法选取进程,再把处理器分配给进程。引入中级调度的主要目的是为了提高内存利用率和系统吞吐量。使那些暂时不能运行的进程不再占用内存资源,将它们调至外存等待,把进程状态改为就绪驻外存状态或挂起状态。5.在作业调度中应如何确定接纳多少个作业和接纳哪些作业?答:作业调度每次接纳进入内存的作业数,取决于多道程序度。应将哪些作业从外存调入内存,取决于采用的调度算法。最简单的是先来服务调度算法,较常用的是短作业优先调度算法和基于作业优先级的调度算法。8.在抢占调度方式中,抢占的原则是什么?答:抢占的原则有:时间片原则、优先权原则、短作业优先权原则等。9.在选择调度方式和调度算法时,应遵循的准则是什么?答:(1)面向用户的准则:周转时间短、响应时间快、截止时间的保证、优先权准则。(2)面向系统的准则:系统吞吐量高、处理机利用率好、各类资源的平衡利用。13.在时间片轮转法中,应如何确定时间片的大小?答:时间片应略大于一次典型的交互需要的时间。一般应考虑三个因素:系统对相应时间的要求、就绪队列中进程的数目和系统的处理能力。27.何谓死锁?产生死锁的原因和必要条件是什么?答:死锁是指多个进程在运行过程中因争夺资源而造成的一种僵局,当进程处于这种僵持状态时,若无外力作用,它们都将无法再向前推进。产生死锁的原因为竞争资源和进程间推进顺序非法。其必要条件是:互斥条件、请求和保持条件、不剥夺条件、环路等待条件。29.请详细说明可通过哪些途径预防死锁。答:(1)摈弃“请求和保持”条件,就是如果系统有足够资源,便一次性把进程需要的所有资源分配给它;(2)摈弃“不剥夺”条件,就是已经拥有资源的进程,当它提出新资源请求而不能立即满足时,必须释放它已保持的所有资源,待以后需要时再重新申请;(3)摈弃“环路等待”条件,就是将所有资源按类型排序标号,所有进程对资源的请求必须严格按序号递增的次序提出。31.银行家算法中出现以下资源分配,试问:(1)该状态是否安全?(2)若进程P2提出请求Request(1,2,2,2)后,系统能否将资源分配给它?(参考答案有错)答:(1)安全,因为存在安全序列{P0,P3,P4,P1,P2}(2)系统能分配资源,分析如下。①Request(1,2,2,2)=Need2(2,3,5,6);②Request(1,2,2,2)=Available2(1,3,5,4)改成Available2(1,6,2,2);③系统先假定可为P2分配资源,并修改Available2,Allocation2和Need2向量,由此形成的资源变化情况如下图所示:④再利用安全性算法检查此时系统是否安全。如下图由此进行的安全性检查得知,可以找到一个安全序列{P2,P0,P1,P3,P4}。第四章P1522.可采用哪几种方式将程序装入内存?它们分别适用于何种场合?答:(1)绝对装入方式,只适用于单道程序环境。(2)可重定位装入方式,适用于多道程序环境。(3)动态运行时装入方式,用于多道程序环境;不允许程序运行时在内存中移位置。5.何谓运行时动态链接?运行时动态链接方式有何优点?答:这种连接方式是,将对某些模块的连接推迟到程序执行时才进行,在执行过程中,当发现一个被调用模块尚未装入内存时,立即由OS去找到模块,并将之装入内存,将其链接到调用者模块上。优点:凡在执行过程中未被用到目标模块,都不会被调入内存和被链接到装入模块上,这样不仅能加快程序的装入过程,而且可节省大量的内存空间。12.分区存储管理中常用那些分配策略?比较它们的优缺点。答:分区存储管理中的常用分配策略:首次适应算法、循环首次适应算法、最佳适应算法、最坏适应算法。(1)首次适应算法优缺点:保留了高址部分的大空闲区,有利于后来的大型作业分配;低址部分不断被划分,留下许多难以利用的小空闲区,每次查找都从低址开始增加了系统开销。(2)循环首次适应算法优缺点:内存空闲分区分布均匀,减少了查找系统开销;缺乏大空闲分区,导致不能装入大型作业。(3)最佳适应算法优缺点:每次分配给文件的都是最适合该文件大小的分区,内存中留下许多难以利用的小空闲区。(4)最坏适应算法优缺点:剩下空闲区不太小,产生碎片几率小,对中小型文件分配分区操作有利;存储器中缺乏大空闲区,对大型文件分区分配不利。19.什么是页表?页表的作用是什么?答:页表指出逻辑地址中的页号与所占主存块号的对应关系。作用:页式存储管理在用动态重定位方式装入作业时,要利用页表做地址转换工作。21.在分页系统中是如何实现地址变换的?答:利用地址变换机构实现从逻辑地址到物理地址的转变换,通过页表来实现从页号到物理块号的变换,将逻辑地址中的页号转换为内存中的物理块号。23.较详细的说明引入分段存储管理是为了满足用户哪几方面的需要。答:(1)方便编程。用户通常把自己的作业按照逻辑关系划分为若干段,每段都从0编址,并有自己名字和长度。因此,希望要访问的逻辑地址是由段名和段内偏移量决定。(2)信息共享。在实现对程序和数据的共享时,是以信息逻辑单位为基础。分页系统中的页是存放信息的物理单位,无完整意义,不便于共享;段是信息的逻辑单位。为了实现段的共享,希望存储管理能与用户程序分段的组织方式相适应。(3)信息保护。对信息的逻辑单位进行保护,分段能更有效方便地实现信息保护功能。(4)动态增长。在实际应用中,有些段特别是数据段,在使用过程中会不断增长,事先又无法确切知道增长多少。分段存储管理方式能较好解决这个问题。(5)动态链接。运行时先将主程序对应的目标程序装入内存并启动运行,运行过程中又需要调用某段时,才将该段调入内存链接。所以动态链接也要求以段作为管理单位。第五章P1772.什么是程序运行时的时间局限性和空间局限性?答:时间局限性:如果程序中的某条指令被执行,则不久以后该指令可能再次执行,如果数据被访问过,则不久后该数据可能再次被访问;空间局限性:一旦程序访问了某个存储单元,在不久之后,其附近的存储单元也将被访问,即程序在一段时间内所访问的地址可能集中在一定的范围之内。3.虚拟存储器有哪些特征?其中最本质的特征是什么?答:虚拟存储器有多次性、对换性、虚拟性三大特征。最本质的特征是虚拟性。7.试比较缺页中断机构与一般的中断,它们之间有何明显的区别?答:(1)一般中断只需要保护现场然后就直接跳到需及时处理的地方。(2)缺页中断除了保护现场之外,还要判断内存中是否有足够的空间存储所需的页或段,然后再把所需页调进来再使用。12.在请求分页系统中,常采用哪几种页面置换算法?答:采用的页面置换算法有:最佳置换算法和先进先出置换算法,最近最久未使用(LRU)置换算法,Clock置换算法,最少使用置换算法,页面缓冲算法等。13.在一个请求分页系统中,采用FIFO(不是LRU)页面置换算法时,假如一个作业的页面走向为4,3,2,1,4,3,5,4,3,2,1,5,当分配给该作业的物理块数M分别为3和4时,试计算在访问过程中所发生的缺页次数和缺页率,并比较所得结果。(参考答案有错)答:当分配给该作业的物理块数M为3时,缺页10次,缺页率:10/12=5/6;当分配给该作业的物理块数M为4时,缺页8次,缺页率:8/12=2/3.----以上解答出错(若采用LRU算法则是正确的)。正确解法见下面:答:当分配给该作业的物理块数M为3时,缺页9次,缺页率:9/12=3/4;当分配给该作业的物理块数M为4时,缺页10次,缺页率:10/12=5/6.注:当M=3时,最初转入的3个页面也算缺页中断。第七章P2491.何谓数据项、记录和文件?答:①数据项分为基本数据项和组合数据项。基本数据项描述一个对