教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 文库大全 > 小学教育 >

《计算机操作系统教程第三版》答案作者左万历 周长林(3)

来源:网络收集 时间:2026-08-27
导读: 若时钟中断发生后,当前进程的时间片已用完,则将发生进程切换;否则不发生进程切换。 17. 若在 T1 时刻进程 P1 运行, T2 时刻进程 P2 运行,且 P1 ≠ P2 ,则在时刻 T1 和时刻 T2 期 间之内一定发生过中断。 这种

若时钟中断发生后,当前进程的时间片已用完,则将发生进程切换;否则不发生进程切换。

17. 若在 T1 时刻进程 P1 运行, T2 时刻进程 P2 运行,且 P1 ≠ P2 ,则在时刻 T1 和时刻 T2 期 间之内一定发生过中断。 这种说法对吗 ? 为什么? 答:这种说法对。 如果在时刻 T1进程P1在运行,在时刻T2进程P2在运行,且P1≠P2,则说在时刻T1和时刻T2之间发生了进程切换。这说明在时刻T1和时刻T2之间执行了处理机调度程序,而 处理机调度程序是操作系统低层中的一个模块,在系统运行的过程中,除非显式地调用到该模块,否则系统不会由运行一个进程转去运行另外一个进程,就是说不会发生进程切换。只有进入操作系统,即处于系统态,才有可能调用到处理机调度, 因为处于用户态运行的用户程序不可能直接调用操作系统中的任何模块。中断是系统由用户态转换为系统态的必要条件。据此,假如在时刻T1与时刻T2之间发生了进程切换,则在时刻 T1 与时刻 T2 之间一定发生过中断。

18. 进程切换时,上升进程的PSW和PC为何必须由一条指令同时恢复? 答:中断向量中程序状态字PSW与指令计数器PC的内容必须由一条指令同时恢复,这样才能保证系统状态由管态转到目态的同时,控制转到上升进程的断点处继续执行。如果不同时恢复,则只能(1)先恢复PSW再恢复PC,在恢复PSW后已经转到目态,操作系统恢复PC的使命无法完成;(2)先恢复PC再恢复PSW,PC改变后转到操作系统另外区域(因为PSW仍为系统状态),PSW无法恢复。

19. 某系统采用可抢占处理机的静态优先数调度算法,请问何时会发生抢占处理机的现象? 答:当一个新创建的进程或一个被唤醒进程的优先数比正在运行进程的优先数高时,可能发生抢占处理机现象。

20. 在实时系统中, 采用不可抢占处理机的优先数调度算法是否适宜? 为什么?答:不适宜。一旦一个低优先数、需要大量CPU时间的进程占用处理机,就会一直运行,直到运行结束,或者直到因某事件而阻塞。在此之前,即使高优先数的紧急任务到达,也得不到处理,因而可能延误对重要事件的响应和处理。

21. 在分时系统中,进程调度是否只能采用时间片轮转算法? 为什么? 答:分时系统的特点是要求响应速度及时,除 RR算法之外,还可以采用可剥夺CPU的动态优先数调度算法。如经典UNIX的处理机调度算法,由于负反馈性质,算法也可以保证响应速度。

22. 有人说, 在采用等长时间片轮转处理机调度算法的分时操作系统中, 各终端用户所占有处理机的时间总量是相同的. 这种说法对吗? 为什么?答:这种说法不对。因为处理机是分配给进程(线程)的,而不同终端用户可能有不同数量的进程,一个拥有较多数量进程的终端显然比拥有较少数量进程的终端获得CPU的时间要多。

23. 对于下述处理机调度算法分别画出进程状态转换图。 (1) 时间片轮转算法; (2)

24. 举出两个例子说明操作系统访问进程空间的必要性.答:例(1):进程执行输出操作时,通过系统调用进入系统,由操作系统将待输出的数据由进程空间取出送给指定的外部设备,为此操作系统必须访问用户进程空间。例(2):当发生可由用户自己处理的中断事件时,操作系统在转到中断续元之前应当将系统堆栈中的现场信息弹出并压入用户堆栈中,为此操作系统也必须访问进程空间。25.根据进程和线程的组成说明进程调度和线程调度各需要完成哪些工作。 答:进程调度: (1)地址映射寄存器;(2)用户栈指针;(3)通用寄存器;(4)PSW与PC。 线程调度: (1)用户栈指针;(2)通用寄存器;(3)PC。 26. 系统资源利用率与系统效率是否一定成正比? 如不是, 举例说明之.答:不是,如程序的并发执行时,并发要有个度,并发执行的程序过多,虽然系统资源利用率提高,但是,由于竞争过于激烈,切换过于频繁,系统开销大,反而会使系统效率降低。 27. 设有周期性实时任务集如下表所示,用 EDF 算法和 RMS 算 法是否可以调度?画出相应的 Gantt 图。

答:由于 ,因而采用EDF算法一定可以调度,其Gantt图为: A1

10

10 B1 15 25 C1 5 30 A2 10 40 B2 15 C2 5 A3 10 70 80 B3 15 95 A4 10 105 C3 5 110 120 55 60

由于 ,因而采用RMS算法不可调度。

第四章 互斥、同步与通讯课后习题答案

1. 何谓与时间有关的错误 ? 举例说明之。 答:并发进程的执行实际上是进程活动的某种交叉,某些交叉次序可能得到错误结果。由于具体交叉的形成与进程的推进速度有关,而速度是时间的函数,因而

将这种错误称为与时间有关的错误。例如,两个并发进程的程序如下:

int n=0; main(){ 创建进程 A; 创建进程 B; };

A(){ while(1){ n++; } }; B(){ while(1){ printf(n); n=0; } };

假设进程 A被部署在公园入口的终端上,用来记录进入公园的人数,进程B被部署在公园的控制中心,用来输出一段时间内进入公园的总人数。进程A和进程B共享全局变量n。如果在进程B执行完打印语句后被进程A打断,进程A执行了若干次变量自增语句,之后进程B接着执行清0语句,那么进程A对n的累加丢失了,相当于进程B被打断的这段时间内进入公园的人没有被记录下来。发生与时间有关的错误。

2. 有人说, 假设两个进程之间没有共享内存, 则二者之间没有公共变量, 这种说法准确吗? 说明原因.

答:如果只从用户空间考虑,这种说法是正确的。但从操作系统的角度来说并不准确。两个没有公共内

存的用户进程可能同时(宏观)进入操作系统,并访问操作系统空间中的公共变量。

3. 何谓忙式等待 ? 是否还有其它方式的等待? 比较它们之间的联系和差别。 答:不进入等待状态的等待称为忙式等待。另一种等待方式是阻塞式等待,进程得不到共享资源时将进入阻塞状态,让 出 CPU 给其他进程使用。忙等待和阻塞式等待的相同之处在于进程都不具备继续向前推进的条件,不同之处在于处于忙等待的进程不主动放弃 CPU , 尽 管 CPU 可 能被剥夺,因而是低效的;而处于阻塞状态的

进程主动放弃 CPU ,因而是高效的。

4. 下列进程互斥方法哪些存在忙式等待问题? (1) 软件: 面包店算法 (2) 硬件: TS指令 (3) 关

中断指令答:(1)、(2)存在忙等待问题。

5. 为何开关中断进程互斥方法仅在单 CPU 系统中是有效的? 答:关中断方法不适用于多 CPU 系统,因为关中断只能保 证 CPU 不由一个进程切换到另外一个进程,从而防止多个进程并发地进入公共临界区域。但即使关中断后,不同进程仍可以在不同 CPU 上并行执行关于同一组共享变量的临界区代码。

6. 在多处理机系统中,软件互斥方法是否有效?为什么?答:依然有效。多处理机并行与单处理并发之间的差别在于程序交叉的粒度,单处理机机环境中进程交叉发生在指令之间,多处理机环境中进程交叉发生在指令周期之间。由于纯软件互斥算法并不依赖特殊的硬件指令(如test_and_set),指令之间的

交叉与指令周期之间的交叉结果相同。

7. 试分析临界区域的大小与系统并发性之间的关系。 答:关于同一组变量的临界区域是不能并发执行

的代码,临界区越大,并发性越差,因而编写并发程序应尽量减小临界区域的大小。

8. 设CR1是关于一组共享变量SV1的临界区域, CR2是关于另外一组共享变量SV2的临界区域, 当进程P1进入CR1时, 进程P2是否可 …… 此处隐藏:3209字,全部文档内容请下载后查看。喜欢就下载吧 ……

《计算机操作系统教程第三版》答案作者左万历 周长林(3).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wenku/42380.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)