操作系统进程管理习题

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第二、三章进程管理习题

一、选择题

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、阅读下面关于读者与写者问题的同步算法,并填空。semaphore rmutex=1, wmutex=1,;

int readercount=0;

begin

parbegin

Reader:

begin

repeat

wait(rmutex);

if _________1__________ then _______2____________;

__________________3________________;

________4___________;

执行读操作;

________5___________;

__________6________________________;

if __________7_________ then ______8_____________;

signal(rmutex);

until false;

end

Writer:

begin

repeat

_________9__________;

执行写操作;

_________10__________;

until false;

end

parend

end

1、读者与写者同步算法填空

①readercount = 0 ②wait(wmutex)

③readercount := readercount + 1

④signal(rmutex) ⑤wait(rmutex)

⑥readercount := readercount - 1

⑦readercount = 0 ⑧signal(wmutex)

⑨wait(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时刻的资源分配情况如下图所示。

相关文档
最新文档