操作系统第二次作业(含答案)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
操作系统第二次作业参考解答(第三章)
一选择题
1.进程从运行态转换成阻塞态的条件是C。
A.进程的时间片用完B.被进程调度程序选中
C.等待某一事件D.等待的事件已发生
2.进程从运行状态变成就绪状态的原因是:A。
A.该进程的时间片用完B.该进程等待输入输出操作
C.该进程输入输出操作完成D.该进程已完成
3.用P、V操作管理临界区时,信号量的初值应定义为C。
A.-1 B.0 C.1 D.n (n>1)
4.在引入线程的操作系统中,资源分配的基本单位是D。
A.作业B.程序C.线程D.进程
5.进程与线程的根本区别是A。
A.进程是资源分配单位,而线程是调度和执行单位。
B.线程是资源分配单位,而进程是调度和执行单位。
C.进程是并发执行的,而线程是串行执行的。
D.线程是并发执行的,而进程是串行执行的。
6.用信箱实现通信时,使用 B 两条基本原语。
A.打开与关闭B.发送与接收C.P操作与V操作D.同步与互斥
7.在应对死锁问题中,银行家算法是用于B的。
A.预防死锁B.避免死锁C.检测死锁D.解除死锁
8.某系统中仅有4 个并发进程竞争某类资源,并都需要该类资源3 个,那么该类资源至少有A个,这个系统不会发生死锁。
A.9 B.10 C.11 D.12
二判断题(你认为正确的写T,错误的写F)
1.(F )在多道程序环境下,程序和机器执行程序的活动是严格一一对应的。2.(F)当一进程在运行中需等待某一事件发生时,便调用阻塞原语,将自己从运行态改变为就绪态。
3.(F)一组同步的并发进程均可对自己的私用信号量进行P操作和V操作。4.(T)消息缓冲通信和信箱通信是进程通信的高级形式。
5.(F)银行家算法可以预防死锁。
6.(T)WindowsNT采用多线程机制。
1.画图表示进程的三个基本状态及其转换条件。
2.什么是原语?属于进程控制方面的原语有哪些?
解答:原语是指由若干条机器指令构成的并用以完成特定功能的一段程序,这段程序执行期间不可分割,不可中断。操作系统内核的各项功能是通过执行原语来实现的。属于进程控制方面的原语有进程创建原语、进程撤消原语、进程挂起原语、进程激活原语、进程阻塞原语和进程唤醒原语。
3.引起进程调度的时机有哪几种情况?
解答:引起进程调度的时机有以下几种情况:
(1)现运行进程正常结束或异常结束;
(2)现运行进程因某种原因(如I/O请求),从运行态进入阻塞态;
(3)现运行进程执行某原语操作(如P操作、阻塞原语等),进入阻塞态;
(4)在优先级调度且抢占方式情况下,一具有更高优先级的进程进入就绪队列要求运行;
(5)在分时系统中,分给进程运行的时间片用完。
当出现以上情况之一时,现运行进程使用的处理机被收回,并引起新一轮进程调度。
4.简述公用信号量和私用信号量的用法及其初值。
解答:在操作系统中,信号量表示资源的实体,其值仅能由P、V操作改变。公用信号量通常用于实现进程之间的互斥,是被一组互斥的进程所公用的,初值为1, 它所联系的一组并发进程均可对其实施P、V操作(在进入各自临界区前实施P操作,离开临界区时实施V操作);私用信号量一般用于实现进程之间的同步,初值为0 或某个正整数n, 仅允许拥有该信号量的进程对其实施P操作,与它同步的进程对其实施V操作。
5.什么是死锁?产生死锁的必要条件是什么?
解答:一组进程中的每个进程,都无限期等待被该组进程中的另一进程所占有的资源,因而无法得到满足,永远不能继续前进,这种现象称为死锁,这组进程就称为死锁的进程。产生死锁有四个必要条件:(1)互斥控制条件,一个资源仅能被一个进程独占;(2)非剥夺控制条件,进程所获得的资源在未释放之前,不能被其它进程剥夺;(3)逐次请求条件,进程不是集中性的一次请求资源,而是逐次取得资源;(4)环路条件,进程之间对资源的请求和占用构成了环路。
1.某剧院售票厅,任何时刻最多可容纳100名购票者进入,当售票厅中少于100名购票者时,则厅外的购票者可立即进入,否则需在外面等待。若把一个购票者看作一个进程,请回答下列问题:
(1)这是同步还是互斥问题?如用P、V操作管理这些并发进程,写出信号量的初值。答:这是互斥问题,设一公用信号量S,初值为100。
(2)在下面程序的适当位置上添加信号量的P、V操作,以保证能正确地并发执行。
Cobegin process pi ( i = 1,2,… )
begin
P(S);
进入剧院售票厅;
排队购票;
退出剧院售票厅;
V(S);
end;
coend;
(3)若购票者最多为n(n>100)个人,请写出信号量的变化范围(最大值和最小值)。
答:从-(n-100)变化到100。
2.某系统中有四类资源,五个进程。当前资源分配情况如下:
Allocation Need Available
A B C D A B C D A B C D
P0:0 0 3 2 0 0 1 2 1 6 2 3
P1: 1 0 0 0 1 7 5 0
P2: 1 3 5 4 2 3 5 6
P3:0 3 3 2 0 6 5 2
P4:0 0 1 4 0 6 5 6
试问:(1) 当前状态是否安全?若是安全状态,请给出进程安全序列。
(2) 如果进程P2提出请求Request2=(1,2,2,2),系统能否将资源分配给
它?说明原因.
解答:(1)当前状态是安全的。找出进程安全序列的分析过程如下: