操作系统-34章作业答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第三章进程的同步与通信
一、填空
1.并发执行的进程可以共享系统的资源,但对共享的临界资源必须做到互斥的访问。2.系统中的资源应不允许用户进程直接使用,而应由系统统一分配。
3.把每个进程中访问临界资源的那段代码称为临界区。
4.要实现对临界资源的互斥访问,只须使诸进程互斥的进入自己的临界区。
5.在使用整型信号量中,可能会使进程处于忙等的现象。
6.在记录型信号量中,当S.value>0数值时,表示某类可用资源的数量。而当S.value<0时,表示该类资源已分配完。若有进程请求该类资源,则被阻塞,这时,S.value的绝对值等于等待该类资源的进程数。
7.在and型信号量中,采取原子操作的方式,其资源分配的原则是要么全部分配给进程,要么一个也不分配。以避免死锁情况的发生。
8.进程通信可分为高级通信(进程间传送的信息量大)和低级通信(进程间传送的信息量小)。
9.使并发执行的诸进程之间能有效的共享资源和相互合作,从而使程序的执行具有可再现性。
10.同步机制应遵循的准则:1、空闲让进2、忙则等待3、有限等待4、让权等待
11.整型信号量除用于进程对临街资源的互斥访问外,还可以用来描述进程之间的前驱关系。
一、判断题
1.进程进入不安全区域,则一定产生死锁。X
2.信号量除了能使进程并行执行时互斥的对临界资源访问外,还可以用来描述进程之间的前序关系。V
3.低级通信传送的数据量较大,高级通信传送的数据量小。X
二、选择题
1.在信号量机制中所使用的p、v操作属于
a)一般过程b)一般函数c)原子操作d)和普通程序一样
2.以下那种信号量的使用可能会使进程处于“忙等”
a)整型信号量b)记录型信号量c)and型信号量d)一般信号量集
3.在记录型信号量中,执行v(s)后,当S.value值小于等于0时,表明
a)有进程被阻塞,需要唤醒。b)没有进程被阻塞c)有S.value个进程在阻塞队列中d)有|S.value|个进程在阻塞队列中
4.下面使用信号量的代码中,将
signal(mutex);
critical section
wait(mutex)
a)导致多个进程同时进入临界区
b)导致多个进程都不能进入临界区
c)保证了对临界资源的互斥访问
d) 导致进程死锁
5.下面说法错误的是
a)信号量是可以用来实现进程的同步的。
b)信号量机制可以用来实现进程执行的次序的。
c)整型信号量可能会使处理机出现忙等的现象。
d) 管程是用户进程,它来统一管理进程的同步。
6.信号量机制中的pv操作是通过_____来实现的。
a)原语b) 指令c) 过程调用d) 通信机
三.简答题
1.什么是临界资源和临界区?
临界资源:在一段时间内只允许一个进程访问的资源。临界资源的访问要求互斥的访问。把每个进程中访问临界资源的那段代码称为临界区
2.我们为某临界区设一把锁,当w=1时,表示关锁;当w=0时,表示锁已打开。写出开锁原语和关锁原语,并用其实现互斥(写出框架)。
关锁原语p(w) while w=1 do no_op
w:=w+1
开锁原语V(s) w:=0
其实现互斥框架p(w)
临界区
V(s)
3. 完善下面生产者和消费者问题解法中的程序;
Producer描述
Begin
repeat
…
producer an item in nextp
…
wait(empty);
wait(mutex);
buffer(in):=nextp;
in:=(in+1)mod n;
signal(mutex);
signal(full);
until false;
end
Consumer描述
Begin
repeat
wait(full);
wait(mutex);
nextc := Buffer(out);
out:=(out+1)mod n;
signal(mutex);
signal(empty);
consume the item in nextc;
until false;
end
第四章调度与死锁
一、名词解释
1.周转时间:作业i从提交时刻Tsi到完成时刻Tei称为作业的周转时间。
2.高级调度:按一定原则对外存后备队列中的作业进行调度,并建立进程PCB。
3.中级调度:将暂时不能运行的进程调至外存上等待,以释放宝贵的内存空间,从而决定允许哪些进程竞争处理机。
4.低级调度:它决定了存在就绪进程时,哪一个就绪进程将分配到中央处理机,并且把中央处理机实际分配(由Dispatcher分派程序完成)给这个进程,即低级调度是将处理机分配给进程。
5.带权周转时间Wi:作业的周转时间与系统为它提供服务的时间之比Wi=Ti/Tsi
6.响应时间:指从用户提交一个请求开始到系统首次产生响应为止的时间。
7.死锁Deadlock:是计算机系统中多道程序并发执行时,两个或两个以上的进程由于竞争资源而造成的一种互相等待的现象(僵局),如无外力作用,这些进程将永远不能再向前推进。
8.安全状态:指系统能按照某种顺序,为每个进程分配所需的资源,直至最大需求,使得每个进程都能顺利完成。.
二.判断题
1.死锁的检测与解除在系统中必须配套出现。V
2.进程进入到不安全区将一定产生死锁。x
3.产生死锁的根本原因是各进程对系统资源的竞争。v
三、填空
1.按调度的层次分,进程(作业)的调度可分为:高级调度、中级调度和低级调度。
按OS的类型分,进程(作业)的调度可分为:批处理调度、分时调度、实时调度和多处理机调度。
2调度的实质是资源的分配。
3.调度算法采用时间片轮转法时,如果时间片太大,将退变为FCFS调度算法,反之则会加大系统的开销,降低系统的性能。
4.产生死锁的原因:竞争资源和进程推进的顺序序不当。
5.处理死锁的基本方法:预防死锁、避免死锁、检测死锁、解除死锁。
6.产生死锁的必要条件有:互斥条件、不剥夺条件、部分分配:(请求和保持条件)、环路等待条件
7.死锁的预防就是要破坏除互斥条件以外的其他三个必要条件。
三、选择题
1.处理机的调度程序
a)常住内存b)常住辅存c)在主存和辅存间切换d)和普通程序一样
2.下面那种调度算法对长作业不利
a)FCFS b)SJF c)高响应比的优先权调度算法d)多级队列调度算法
3.调度算法采用时间片轮转法时,如果时间片太大,将退变为
a)FCFS b)SJF c)高响应比的优先权调度算法d)多级队列调度算法
4.在同构型多处理机系统中的进程调度中
a)静态分配需设有相应的同步机制。
b)动态分配需设有相应的同步机制。