操作系统(汤子瀛)习题答案(4)

2020-04-21 02:17

计算机操作系统(汤子瀛)习题答案

享变量说明;对该数据结构进行操作的一组过程;对局部于管程的数据设置初始值的语句. (图见P80) 因为调用wait 原语后,使进程等待的原因有多种,为了区别它们,引入了条件变量.

13 如何利用管程来解决生产者-消费者问题?(见P82)

repeat . .

produce an item in nextp; . .

wait(empty);

wait(s1,s2,s3,...,sn);

14 什么是AND 信号量?试利用AND //s1,s2,...,sn 为执行生产者进程信号量写出生产者-消费者问题的解法.

为解决并行所带来的死锁问题,在wait 操作中引入AND 条件,其基本思想是将进程在整个运行过程中所需要的所有临界资源,一次性地全部分配给进程,用完后一次性释放.解

除empty 外其余的条件 wait(mutex); buffer(in):=nextp; in:=(in+1) mod n; signal(mutex); signal(full);

signal(s1,s2,s3,...,sn);

决生产者-消费者问题可描述如下: until false; var

mutex,empty,full: end

consumer: begin

semaphore:=1,n,0;

buffer: array[0,...,n-1] of item; repeat in,out: integer:=0,0; begin parbegin producer: begin

16

wait(full);

wait(k1,k2,k3,...,kn);

//k1,k2,...,kn 为执行消费者进程除full 外其余的条件

计算机操作系统(汤子瀛)习题答案

wait(mutex); nextc:=buffer(out); out:=(out+1) mod n; signal(mutex); signal(empty);

signal(k1,k2,k3,...,kn); consume the item in nextc; until false; end parend end

15 在单处理机环境下,进程间有哪几种通信方式?

a. 共享存储器系统通信方式; b. 消息传递系统通信方式; c. 管道通信方式.

16 试比较进程间的低级通信工具与高级通信工具.

用户用低级通信工具实现进程通信很不方便,因为其效率低,通信对用户不透明,所有的操作都必须由程序员来实现. 而高级通信工具则可弥补这些缺陷,用户可直接利用操作系统所提供的一组通信命令,高效地传

17

送大量的数据.

17 消息队列通信机制应有哪几方面功能? 略

18 试比较消息队列与管道通信机制.

a. 所谓管道,是指用于连接一个读进程和一个写进程,以实现它们之间通信的共享文件,又称pipe 文件. 管道通信是属于共享存储器系统的. b. 消息队列通信机制属于消息传递系统通信机制,存在通信链路,有消息的格式,有若干缓冲队列,采 用独特的发送原语和接收原语. (详见P89-90) 第四章

1. 高级调度与低级调度的主要任务是什么?为什么要引入中级调度? a. 作业调度又称宏观调度或高级调度,其主要任务是按一定的原则对外存上处于后备状态的作业进行选择,给选中的作业分配内存,输入输出设备等必要的资源,并建立相应的进程,以使该作业的进程获得竞争处理

计算机操作系统(汤子瀛)习题答案

机的权利.

b. 进程调度又称微观调度或低级调度,其主要任务是按照某种策略和方法选取一个处于就绪状态的进程,将处理机分配给它.

c. 为了提高内存利用率和系统吞吐量,引入了中级调度.

2. 在作业调度中需做出哪两个决定?

a. 接纳多少个作业; b. 接纳哪些作业.

3. 在剥夺调度方式中,有哪些剥夺原则?

a. 时间片原则; b. 优先权原则;

c. 短作业(进程)优先原则. 4. 在OS 中引起进程调度的主要因素有哪些?(有待讨论)

5. 选择调度方式和调度算法时,应遵循的准则是什么?

a. 面向用户的准则有周转时间短,响应时间快,截止时间的保证,以及优先权准则.

b. 面向系统的准则有系统吞吐量

18

高,处理机利用率好,各类资源的平衡利用.

6. 在批处理系统,分时系统和实时系统中,各采用哪几种进程(作业)调度算法?(有待讨论)

7. 为什么说多级反馈队列能较好地满足各种用户的需要?

a. 对于终端型作业用户,由于终端型作业用户所提交的作业,大都属于交互型作业,系统只要能使这些作业(进程)在第一队列所规定的时间片内完成,便可使终端型作业用户都感到满意.

b. 对于短批处理作业用户,很短的批处理型作业如果仅在第一队列中执行一个时间片即可完成,便可获 得与终端型作业一样的相应时间.对于稍长的作业,通常也只需在第二队列和第三队列中各执行个时间片 即可完成,其周转时间仍然很短. c. 对于长批处理作业用户,用户也不必担心其作业长期得不到处理. 8. 在按时间片轮转调度算法中,在确定时间片的大小时,应考虑哪些

计算机操作系统(汤子瀛)习题答案

因素?

a. 系统对相应时间的要求; b. 就绪队列中进程的数目; c. 系统的处理能力.

9. 为实现实时调度,对实时系统提出了哪些要求?

a. 要提供必要的调度信息; b. 在调度方式上要具体情况具体分析;

c. 要具有快速响应外部中断的能力;

d. 快速任务分派.

10 目前常用的调度方式和算法,能否应用到实时系统中?

a. 对于时间片轮转调度算法,是一种常用于分时系统的调度算法; b. 对于非抢占式优先权调度算法,可用于要求不太严格的实时控制系统中;

c. 对于基于时钟中断抢占的优先权调度算法,有很好的响应效果,可用于大多数的实时系统中;

作系统具有快速响应外部时间的能力.

11 在多处理机系统中,比较有代表性的线程调度方式有哪几种? a. 自调度方式; b. 成组调度;

c. 专用处理机分配调度方式. 12 试比较自调度和成组调度? a. 自调度方式是系统中有一个公共的线程或进程的就绪队列,所有的处理机在空闲时,都可自己从该队 列中取出一个进程或线程运行; b. 成组调度是由系统将一组相关的进程或线程,同时分配到一组处理机上运行,进程或线程与处理机一 一对应;

c. 在一般情况下,成组调度的性能优于自调度,因为自调度存在瓶颈,低效,线程切换频繁等问题,而 成组调度可减少线程的切换和调度的开销,因而目前得到了广泛的认可. 13 在OS/2 中采用哪种调度方式和

d. 对于立即抢占(Immediate 调度算法? Preemption)的优先权调度,要求操

19

在OS/2 中采用的是抢占式调度方

计算机操作系统(汤子瀛)习题答案

式,多优先级的抢占式调度算法. 14 何谓死锁?产生死锁的原因和必要条件是什么?

a. 死锁是指多个进程因竞争资源而造成的一种僵局,若无外力作用,这些进程都将永远不能再向前推进; b. 产生死锁的原因有二,一是竞争资源,二是进程推进顺序非法; c. 必要条件是: 互斥条件,请求和保持条件,不剥夺条件和环路等待条件.

15 在解决死锁问题的几个方法中,哪种方法最容易实现?哪种方法使资源的利用率最高?

a. 解决死锁可归纳为四种方法: 预防死锁,避免死锁,检测死锁和解除死锁;

b. 摈弃\不剥夺\条件,就是已经保持了资源的进程,当它提出新的资源请求而不能立即得到满足时,必须释放它已经保持的所有资源,待以后需要时再重新申请;

c. 摈弃\环路等待\条件,就是将所有资源按类型排序标号,所有进程对资源的请求必须严格按序号递增的次序提出.

17 在银行家算法的例子中,如果P0 发出的请求向量由Request0(0,2,0)改为Request0(0,1,0),问系统可否将资源分配给它? 可以. 首

Request0(0,1,0)<=Need0(7,4,3), Request0(0,1,0)<=Available(2,3,

b. 其中,预防死锁是最容易实现的;0);分配后可修改得一资源 c. 避免死锁使资源的利用率最高. 16 请详细说明可通过哪些途径预防死锁?

a. 摈弃\请求和保持\条件,就是如果系统有足够的资源,便一次性地把进程所需的所有资源分配给它;

20

数据表(表略),进行安全性检查,可以找到一个安全序列{P1,P4,P3,P2,P0},{P1,P4,P3,P0,P2},因此, 系统是安全的,可以立即将资源分配给P0.


操作系统(汤子瀛)习题答案(4).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:大连理工无机化学教材配套自测试题

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: