操作系统第二三章进程管理习题.docx
《操作系统第二三章进程管理习题.docx》由会员分享,可在线阅读,更多相关《操作系统第二三章进程管理习题.docx(15页珍藏版)》请在冰豆网上搜索。
![操作系统第二三章进程管理习题.docx](https://file1.bdocx.com/fileroot1/2022-11/17/53ce4b8d-113e-4a88-8856-7beec572f0b5/53ce4b8d-113e-4a88-8856-7beec572f0b51.gif)
操作系统第二三章进程管理习题
第二、三章进程管理习题
一、选择题
1. 从静态角度上看,进程是有 A 、 B 、 C 三部
分组成,其中 C 是进程存在的唯一标志。
当几个进程共享 A 时, A 应当是可重入代码。
A,B,C:
(1)JCB;
(2)PCB; (3)DCB; (4)FCB;(5)程序段; (6)数据段; (7)I/O缓冲区。
2. 进程的三个基本状态是 A 、 B 、 C 。
由 A
到 B 是由进程调度所引起;由 B 到 C 是正在执行的进程发生了某事件,使之无法执行而暂停。
A,B,C:
(1)挂起;
(2)阻塞; (3)就绪; (4)执行。
3. 产生死锁的四个必要条件是互斥条件、 A 、不剥夺条
件和 B 。
A:
(1)请求和阻塞条件;
(2)请求和释放条件; (3)
请求和保持(占有且等待)条件;(4)释放和阻塞条件; (5)释放和请求条件。
B:
(1)线性增长条件;
(2)环路条件; (3)无序释放条件;(4)有序释放条件; (5)无序请求条件。
4. A 是一种只能由P和V操作所改变的整型变量, A 可
用于实现进程的 B 和 C , B 是排它性地访问临界资源。
A:
(1)控制变量;
(2)锁; (3)整型信号量; (4)记录型号量。
B,C:
(1)同步;
(2)通信; (3)调度; (4)互斥。
5. 对于记录型信号量,在执行一次P操作时,信号量的值应
当 A ;当其值为 B 时,进程应阻塞。
在执行V操作时,信号
量的值应当 C ;当其值为 D 时,应唤醒阻塞队列中的进程。
A,C:
(1)不变;
(2)加1; (3)减1; (4)加指定数值; (5)减指定数值。
B,D:
(1)大于0;
(2)小于0; (3)大于等于0; (4)小于等于0。
6. 我们如果为每一个作业只建立一个进程,则为了照顾短作
业用户,应采用 A ,为照顾紧急作业的用户,应采用 B ,而
能使短作业、长作业及交互作业用户都比较满意时,应采用C 。
A,B,C:
(1)FCFS调度算法;
(2)短作业优先调度算法;
(3)时间片轮转法;(4)多级反馈队列调度算法;(5)基于优先权的剥夺调度算法。
二、填空题
1.
在单用户单任务环境下,用户独占全机,此时机内资源
的状态,只能由运行程序的操作加以改变,此时的程序执行具有 性和 性。
2. 在多用户环境下,由多个程序共享一台计算机,机内资
源的状态将由多个程序来改变,因此使程序失去了在顺序执行时具有的 和 特性。
3.在操作系统中,进程是一个 的基本单位。
4.
当前进程若因时间片用完而被暂停执行时,该进程应转变
为 状态;若因发生某事件而不被继续运行时,该进程应转变
为 状态。
处于就绪状态的进程被调度应转变为 状态。
5.每执行一次V操作,表示 ;若S.value<=0,则表示
,此时应 。
6. 在利用信号量实现进程互斥时,应将 置于 和 之间。
7. 在每个进程中访问 的那段代码称为临界区。
为实
现对它的共享,应保证进程 进入自己的临界区。
8. 解决死锁问题的基本方法有 、
、 。
三、问答题 1、什么是进程?
2、说明进程的结构和基本状态。
3、进程之间有哪些基本的通信方式?
它们分别有什么特点?
4、什么是临界资源?
5、什么是临界区?
6、试说明进程互斥、同步和通信三者之间的关系。
7、在一个系统中,若进程之间除了信号量之外不能共享任何变量,进程之间能互相通信吗?
四、综合应用题
1、阅读下面关于读者与写者问题的同步算法,并填空。
semaphorermutex=1,wmutex=1,;
intreadercount=0;
begin
parbegin
Reader:
begin
repeat
wait(rmutex);
if_________1__________then
_______2____________;
__________________3________________;
________4___________;
执行读操作;
________5___________;
__________6________________________;
if__________7_________then
______8_____________;
signal(rmutex);
untilfalse;
end
Writer:
begin
repeat
_________9__________;
执行写操作;
_________10__________;
untilfalse;
end
parend
end
1、读者与写者同步算法填空
①readercount=0
②wait(wmutex)
③readercount:
=readercount+1
④signal(rmutex)
⑤wait(rmutex)
⑥readercount:
=readercount-1
⑦readercount=0
⑨wait(wmutex)
⑧signal(wmutex)
⑩signal(wmutex)
2、设有n个进程共享一临界区,对于下述情况,说明信号量的初值、含义,并用PV操作写出有关进程的互斥算法:
(1)一次只允许一个进程进入临界区。
(2)一次允许m(m<=n)个进程进入临界区。
3、某小型超级市场,可容纳50个人同时购物。
入口处备有篮子,
每个购物者可拿一只篮子入内购物。
出口处结账,并归还篮子(出入
口禁止多人同时通过)。
试用PV操作写出购物者的同步算法。
4、请用PV操作写出下面前趋图的并发程序:
5、假定系统中有五个进程{P0
P1
P2
P3
P4
}和三种类型的资源{A,B,
C},每一种资源的数量分别为10,5,7,在T0况如下图所示。
时刻的资源分配情
(i)试分析系统在T0
时刻是否安全,为什么?
(ii)P
3
在T
1
时刻发出请求向量Request
3
(0,1,0),请问可否进行分
配,为什么?
(iii)假设(ii)步资源分配完成后,P4在T2时刻发出请求向量
Request
4
(2,2,0),请问可否进行分配,为什么?
6、假定在单CPU条件下有下列要执行的作业:
作业
运行时间
优先级
1
10
3
2
1
1
3
2
3
4
1
4
5
5
2
作业到来的时间是按作业编号顺序进行的(即后面作业依次比前一个作业迟到一个时间单位)。
(1)用一个执行时间图描述在下列算法时各自执行这些作业的情况:
FCFS、RR(时间片=1)和非抢占式优先级。
(2)对于上述每种算法,各个作业的周转时间是多少?
平均周转时间是多少?
(3)对于上述每种算法,各个作业的带权周转时间是多少?
平均带权周转时间是多少?
答案
选择题
1 A
B
C
2 A
B
C 3 A
B
5
6
2
3
4
2
3
2
4 A
3
B 4
C
1
5 A 3
B C
2
2
D 4
6 A
B
2
5
C 4
填空题
1 (1) 封闭性
(2) 可再现性
2 (1) 封闭性
(2) 可再现性
3 (1) 资源分配
4 (1) 就绪
(2) 阻塞(OR等待)
(3) 执行
5 (1) 释放一个单位资源
(2) 仍有请求该资源的进程被阻塞
(3)唤醒等待该资源的队首进程,并将之插入就绪队
列
6 (1) 临界区
(2) 进入区
(3) 退出区
7 (1) 临界资源
(2) 互斥地 8 (1) 预防死锁
(2) 避免死锁
(3) 检测死锁和解除死锁
三、问答题
1、
答:
进程是一个具有一定独立功能的程序关于某个数据
集合的一次运行活动。
它是操作系统动态执行的基本单元,在传统
的操作系统中,进程既是基本的分配单元,也是基本的执行单元。
(在WindowsNT等采用微内核结构的现代操作系统中,进程的功
能发生了变化:
它只是资源分配的单位,而不再是调度运行的单位,其调度运行的基本单位是线程。
)
2、
3、
答:
结构:
PCB(进程控制块)+程序+数据集合。
基本状态:
就绪态、执行态、阻塞态。
答:
进程通信根据交换信息量的多少分为高级通信和低
级通信。
低级通信一般只传送一个或几个字节的信息,以达到控制进程执行速度的作用(如PV操作);高级通信则要传送大量数据,目的不是为了控制进程的执行速度,而是为了交换信息。
4、答:
一次仅允许一个进程使用的资源称为临界资源。
5、
答:
每个进程中访问临界资源的那段程序称为临界区
(临界资源是一次仅允许一个进程使用的共享资源)。
每次只准许一个进程进入临界区,进入后不允许其他进程进入
6、
答:
进程的同步与互斥是指进程在推进时的相互制约关
系。
在多道程序系统中,由于资源共享与进程合作,这种进程间的
制约成为可能。
为了保证进程的正确运行以及相互合作的进程之间交换信息,需要进程之间的通信。
进程之间的制约关系体现为:
进程的同步和互斥。
进程同步:
它主要源于进程合作,是进程间共同完成一项任
务时直接发生相互作用的关系。
为进程之间的直接制约关系。
在多道环境下,这种进程间在执行次序上的协调是必不可少的。
进程互斥:
它主要源于资源共享,是进程之间的间接制约关
系。
在多道系统中,每次只允许一个进程访问的资源称为临界资源,进程互斥就是保证每次只有一个进程使用临界资源。
进程通信:
是指进程间的信息交换。
PV操作作为进程的同步
与互斥工具因信息交换量少,效率太低,称为低级通信。
而高级通信则以较高的效率传送大批数据。
7、答:
能,同步与互斥是进程通信的基本内容,P、V操作与信号量结合可以实现同步与互斥。
四、综合应用题
2、
(1)
设置信号量S1,初值为1;表示临界资源有一个可供n
个进程竞争使用。
每个进程的互斥算法描述如下:
S1取值的范围是1,0,-1,-2,…-(n-1),即某一时刻最多有一
个进程正在临界区,而等待进入临界区的进程可有1个,2个,最多时可达n-1个。
(2)设置信号量S2,初值为m;表示临界资源有m个可供n个进程竞争使用。
每个进程的互斥算法描述如下:
S2取值的范围是m,m-1,…1,0,-1,-2,…-(n-m),即某一时
刻最多有m个进程正在临界区,而等待进入临界区的进程可有1个,2个,最多可达n-m个。
3、设置信号量S,其初值为50,表示开始时允许50个购物者进入
超级市场。
互斥信号量mutex,初值为1,对入口处的篮子进行互
斥,表示购物者互斥拿或放下一只篮子。
每个顾客Pi的同步算法如下:
4、