操作系统课后习题及答案

操作系统课后习题及答案
第一章
1.下面不属于操作系统的是(c)a、os/2b、ucdosc、wpsd、fedora
2.操作系统的功能不包括(b)
a、cpu管理
b、用户管理
c、作业管理
d、文件管理3.在分时系统中,当时间片一定时,(b),积极响应越慢。a、内存越大b、用户越少c、用户越多d、内存越大4.分时操作系统的及时性就是指(b)a、周转时间b、响应时间c、延迟时间d、a、b和c
5.用户在程序设计的过程中,若要得到系统功能,必须通过(d)a、进程调度b、作业调度c、键盘命令d、系统调用
6.批处理系统的主要缺点是(c)
a、cpu采用效率高
b、并无并发性
c、并无交互性
d、都不是
第二章
1、若信号量的初值为2,当前值-3,则则表示存有(c)个进程在等候。a、1b、2c、3d、5
2、在操作系统中,要对并发进程进行同步的原因是(b)a、进程必须在有限的时间内完成b、进程具有动态性c、并发进程是异步的d、进程具有结构性
3、以下选项中,引致创进崭新进程的操作方式就是(c)i用户顺利进占ii设备分配iii启动程序执行a、仅i和iib、仅ii和iiic、仅i和iiid、i,ii,iii
4、在多进程系统中,为了保证公共变量的完整性,各进程应互斥进入临界区。所谓的临界区是指(d)
a、一个缓冲区
b、一个数据区
c、一种同步机构
d、一段程序5、进程和程序的本质区别就是(b)
a、内存和外存
b、动态和静态特征
c、共享和独占计算机资源
d、顺序和非顺序继续执行计算机指令6、以下进程的状态变化中,(a)的变化就是不可能将出现的。
a、等待->运行
b、运行->等待
c、运行->就绪
d、等待->就绪7、能从1种状态变为3种状态的是(d)
a、准备就绪
b、堵塞
c、顺利完成
d、继续执行8、以下关于进程的叙述恰当的就是(a)a、进程赢得cpu就是通过调度
b、优先级是进程调度的重要依据,一旦确定就不能改变
c、在单cpu系统中,任何时刻都有一个进程处于执行状态
d、进程申请cpu得不到满足时,其状态变为阻塞
9、cpu分配给进程的时间片扔掉而胁迫进程让给cpu,此时进程的状态为(c)。a、
阻塞状态b、等候状态c、准备就绪状态d、都不是10、不是信号量能够同时实现的功能
就是(d)a、进程同步b、进程不相容c、继续执行的前驱关系d、进程的mammalian
11、有关系的进程发生有关时间上的错误,根本原因是(a)a、共享资源的使用不受
限制b、时间的延迟
c、资源的独占性
d、进程的不相容
寒韩12、设与某资源相关联的信号量初值为3,当前值为1,若m表示该资源的可用个数,n表示等待资源的进程数,则m,n分别是(b)a、0,1b、1,0c、1,2d、2,0
13、以下选项中,减少进程优先权级的合理时机就是(a)a、进程的时间片用回去
b、进程刚完成i/o,进入就绪队列
c、进程长期处于就绪队列中
d、就绪从就绪状态
转为运行态
14、一个正在出访临界资源的进程由于提出申请i/o操作方式而被堵塞时(c)a、容
许其他进程步入与该进程有关的临界区b、不容许其他进程步入任何临界区
c、允许其他就绪进程抢占处理器继续运行
d、不允许任何进程抢占处理器
15、展开p0和p1的共享资源变量定义及其初值为booleanflag[2];intturn=0;
flag[0]=false;flag[1]=false;
若展开p0和p1出访临界资源的类c代码同时实现如下:voidp0()//进程p0voidp1()//进程p1{while(ture)}{while
(ture)}flag[0]=ture;ture=1flag[1]=ture;ture=1
while(flag[1]&&(turn==1))while(flag[0]&&(turn==0))临界区:
flag[0]=false;flag[1]=false;}}}}
则并发执行进程p0和p1时产生的情况是(a)a、不能保证进程互斥进入临界区,会
出现“饥饿”现象b、不能保证进程互斥进入临界区,不会出现“饥饿”现象c、能保证
进程互斥进入临界区,会出现“饥饿”现象d、能保证进程互斥进入临界区,不会出现
“饥饿”现象
1、在具备n个进程的系统中,容许m个进程(n≥m≥1)同时步入它们的临界区,其信
号量s的值的变化范围就是[m-n,m],处在等候状态的进程数最多为n-m1、信号量同时实现
operators
4×100接力赛定义3个信号量s1,s2,s3p1:行进100米;signal(s1);p2:wait(s1);
前进100米;signal(s2);p3:wait(s2);
行进100米;signal(s3);p4:wait(s3);
前进100米;到达终点。
2、银行排队问题。银行存有n个柜台,每个顾客步入银行先取一个号等候叫做号,
当一个柜台空闲的时候,就叫做下一个号。
问题分析:将顾客的号码排成一个队列,顾客进入银行领取号码后,将号码由队尾插入;柜台空闲时,从队首取得顾客号码,并服务。由于队列由若干进程共享,所以需要互斥。柜台空闲时,若有顾客则叫号,所以需要设置一个信号量记录等待服务的顾客数。varmutex=1,customer_count=0cobegin
6apaprocesscustomerbeginrepeat挑号码;wait(mutex);步入队列;
signal(mutex);signal(customer_count);end
processserversi(i=1,...,n)beginrepeat
wait(customer_count);
wait(mutex);从队列柜面;signal(mutex);服务;endcoend
3、三个吸烟者在一间房间内,还有一个香烟供应者。为了制造并抽掉香烟,每个吸
烟者需要三样东西:烟草、纸和火柴。供应者有丰富的货物提供。三个吸烟者中,第一个
有自己的烟草,第二个有自己的纸,第三个有自己的火柴。供应者将两样东西放在桌子上,允许一个吸烟者进行对健康不利的吸烟。当吸烟者完成吸烟后唤醒供应者,供应者再放两
芳烃抽提
样东西(随机地)在桌面上,然后唤醒另一个吸烟者。试为吸烟者和供应者编写程序解决国模杨玉玲
问题。问题分析:
1)三个吸烟者(a,b,c)和一个经销商(d),三个吸烟者可以抽烟的条件不一样,具体内
容看看经销商往桌子上挂的原料;
2)每个吸烟者需要一个进程,分别和经销商进行同步;3)互斥资源:桌子;
4)a,b,c,d四个进程,a则表示烟草拥有者,b就是纸拥有者,c火柴拥有者,d经销
商4)信号量s同时实现不相容,则表示桌子上与否摆存有东西
5)sad,sbd,scd分别表示进程ad,bd,cd之间的同步
vars:=1;sad:=sbd:=scd:=0;process经销商beginwait(s);放原料;
if(纸和火柴)signal(sad);
elseif(烟草和火柴)signal(sbd);else
signal(scd);end
process烟草拥有者begin
kh570
wait(sad);取纸和火柴;signal(s);抽烟end
process纸拥有者begin
wait(sbd);
取烟草和火柴;signal(s);吸烟
end
process火柴拥有者begin
wait(scd);挑烟草和纸;signal(s);抽烟end4、三个进程p1、p2、p3不相容采用一个涵盖n(n>0)个单元的缓冲区。p1每次用produce()分解成一个正整数用put()送进缓冲区某洗劫一空单元中;p2每次用getodd()从该缓冲区中抽出一个奇数用countodd()统计数据奇数个数;p3每次用geteven()从该缓冲区中抽出一个偶数用counteven()统计数据偶数个数。恳请用信号量机制同时实现这三个进程的同步与不相容活动,并表明所定义的信号量的含义。建议用伪代码叙述。
定义信号量s1控制p1与p2之间的同步;s2控制p1与p3之间的同步;empty控制生产者与消费者之间的同步;mutex控制进程间互斥使用缓冲区。
s1=0,s2=0,empty=n,mutex=1p1:begin
x=produce();p(empty);p(mutex);put();
ifx%2==0v(s2);else
v(s1);v(mutex);end.p2:beginp(s1);p(mutex);getodd();countodd():=
countodd()+1;v(mutex);v(empty);end.p3:beginp(s2)p(mutex);geteven();counteven() :=counteven()+1;v(mutex);v(empty);end.

本文发布于:2024-09-21 16:49:21,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/239150.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:进程   信号量   状态
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议