《2022年习题3解答 .pdf》由会员分享,可在线阅读,更多相关《2022年习题3解答 .pdf(4页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、39 习题 3 3.1多道程序可以提高系统效率,是否在内存中尽可能多的存放多个程序,为什么?答:如果内存中可同时运行的程序过多,这些程序之间可能会因为相互等待被其它程序占用的设备资源(如I/O 设备) ,反而可能会影响系统效率。当然,处理机的竞争在作业道数过多的情况下更加激烈,可能会产生两个不利后果。一是影响系统的响应速度,二是产生过多的系统开销(系统本身需要运行必要的程序进行相应的控制和管理)。3.2操作系统通过什么概念来刻画程序的并发执行、资源分配及随机性?答:进程3.3试画出下面5 条语句的前趋图:S1:x = 5 ;S2:y = x + 8;S3:z = x + y;S4:a = x
2、+ y + z;S5:b = y + a。答:3.4从多个程序在单处理机上执行的角度来考察,并发的含义是什么?答:在时间上来表示,并发执行是一个程序的开始是在另一个程序结束之前3.5有下面的 5 条语句,试画出前趋图;S1:a = x+10 ;S2:b = a + 10 ;S3:c = 4*x ;S4:d = b + c;S5:e = d + 5 ;并根据Bernstein 条件,证明S2和 S3 是可以并发执行的,而S4和 S5语句是不能并发执行的。答: S2和 S3 是可以并发执行,因为: R(S2) W(S3)=a c= 。W(S2) R(S3)=b x= 。W(S2) W(S3)=b
3、c= 。S4和 S5语句不能并发执行,因为:W(S4) R(S5)=d d=d。3.6在书中给出的有关进程描述中,它们所具有的本质是什么?答:进程是一个动态的执行过程。3.7并发运行因为什么发生结果不可再现性?答:由于失去了封闭性。3.8进程的基本特征是什么?S1 S2 S3 S4 S5 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 1 页,共 4 页40 答:动态性、并行性、独立性、异步性和结构性。3.9进程的构成中,PCB是属于系统还是用户的部分,它的作用是什么?答: PCB属于系统,是系统构建的,其作用是系统根据PCB感知进程的存在和通过P
4、CB中所包含的各项变量的变化,掌握进程所处的状态以达到控制进程活动的目的。3.10为什么说 PCB是操作系统感知进程存在的唯一标志?答: PCB包含了有关进程的描述信息、控制信息以及资源信息,是进程动态特征的集中反映。3.11用户进程所执行的程序一定是用户自己编写的应用程序,这句话是否正确?答:否。3.12进程的三个基本状态是什么?怎样从进程状态的角度理解进程的“走走停停”答:进程或进程之间可能由于等待I/O操作、竞争资源、以及相互协作等原因产生了“走走停停”的动态性。3.13进程如果正常执行结束,为什么还要在系统中设置一个完成状态,而不直接从系统中退出消亡?答:需要结果输出及系统记帐等善后3
5、.14如有下面的进程状态转换(变迁)图 1 表示,图中的数字表示一种形式的状态转换。试验判别下述诸条件是否成立?为什么? 1 2 ;1 3 ;2 1 ; 2 4 ;3 1 ;3 4 ;4 1 ;4 2 ;4 3 ;5 1 ;5 4 ;其中, 条件式 x y 表示: 若一进程产生状态转换 x ,则导致另一个进程产生状态转换 y(x,y=1,2,3, 4,5)答:4 运行就绪3 1 2 阻塞完成5 图 1 事件发生如 I/O 完成进程三状态及转换图运行就绪等待事件发生如等待 I/O 时间片到调度阻塞精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 2 页
6、,共 4 页41 1 2 ; 1 3 ; 2 1 ; 2 4 ; 3 1 ; 3 4 ;4 1 ; 4 2 ; 4 3 ;5 1 ; 5 4 ;3.15引入挂起状态的理由是什么,给出一个挂起的时机(任意就绪、 阻塞活动状态下)答:引入挂起状态的目的就是使一些进程已占用的系统资源让出部分,或全部 ( PCB仍在系统中),以供其它进程利用让出的系统资源,提高系统的整体效率。一个挂起的时机就是所有进程都在等待I/O ,而处理机在空闲时。3.16为什么可以出现从各种状态的进程直接进入完成状态?答:如果父进程终止,或被创建它的进程终止,则表明一个进程可以在任何状态下终止而进入完成状态。3.17 操作系统
7、为什么需要考虑处理机的执行模式,通常由用户模式进入系统模式的时机是什么?答:使用两种模式的原因是很显然的,它可以保护操作系统及相关的各种数据表不受到用户进程的干涉,这也是操作系统管理和控制计算机系统的重要技术手段。由用户模式进入系统模式的时机是中断事件的发生。3.18解释原语的含义,如果原语是由一段程序构成,为什么说原语是不能并发执行的 ?不是说系统内多个程序(进程)可以并发执行吗?答:原语的含义是原子操作不可分割的基本单位。因为它包含有共享变量。3.19给出一个唤醒进程的时机,并说明可以由谁唤醒一个在阻塞态的进程答:当存在等待I/O 的进程在I/O 完成中断信号到来后被唤醒。唤醒阻塞态进程可
8、以是同步进程,及系统程序(如中断处理程序)。3.20进程之间的制约关系有几种,请分别给出每一种制约关系在现实生活中的具体原由和例子。答:有两种:直接和间接制约关系。直接制约关系:运动会上发令员与记时员的关系。间接制约关系:对向在一座仅可以通过一辆车的桥上行使(共同竞争一座桥)。3.21引入线程的根本原因是什么?答:从计算机的效率,多个并发活动减少系统对于并发所带来的时/ 空开销。3.22从调度、资源分配对进程和线程进行比较。答:调度;进程在传统的操作系统中,既是资源的拥有者,也是系统调度和分派的单位。而在引入线程之后,进程仅作为资源的分配单位,线程作为调度和分派的单位。在同一进程内, 线程的切
9、换不会引起进程的切换;而由一个进程中的线程切换到另一个进程中的线程时,才会发生进程切换。系统资源; 在引入线程的操作系统中,线程成为了被调度和分派的基本单位。线程精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 3 页,共 4 页42 基本不拥有资源,只有一些运行所必须的资源(如程序计数器、一组寄存器和栈),但它可以和进程内其它线程共享进程所拥有的全部资源,即一个进程的代码段、数据段以及系统资源(如打开的文件、I/O 设备等)。3.23用户级线程与内核级线程最主要的区别是什么?答:有两点:(1)许多系统调用都会引起用户执行流的阻塞。因此,当用户级线程执行一个系统调用时,不仅这个线程被阻塞,整个进程的所有线程都被阻塞了。(2)在纯粹的用户级线程策略中,由于内核是按进程作为调度单位的,因此一个多线程用户应用程序不能利用多处理技术。内核一次只将一个进程分配给一个处理机,也就只能有一个线程可以执行精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 4 页,共 4 页
限制150内