当前位置:文档之家› 进程管理及答案

进程管理及答案

一、单项选择题:1、在多进程的系统中,为了保证公共变量的完整性,各进程应互斥进入临界区。

所谓临界区是指()。

a. 一个缓冲区b. 一段数据区c. 同步机制d. 一段程序2、一个进程是()。

a. 由协处理机执行的一个程序b. 一个独立的程序+数据集c. PCB结构与程序和数据的组合d. 一个独立的程序3、在操作系统中,信号量表示资源实体,是一个与队列有关的()变量,其值仅能用P、V 操作来改变。

a. 实型b. 整型c. 布尔型d. 记录型4、设有5个进程共享一个互斥段,如果最多允许有3个进程同时进入互斥段,则所采用的互斥信号量的初值应是()。

a. 5b. 3c. 1d. 05、并发进程之间()。

a. 彼此无关b. 必须同步c. 必须互斥d. 可能需要同步或互斥6、实现进程之间同步与互斥的通信工具为()。

a. P、V操作b. 信箱通信c. 消息缓冲d. 高级通信7、n个进程共享某一临界资源,则互斥信号量的取值范围为()。

a. 0~1b. –1~0c. 1~-(n-1)d. 0~-(n-1)二、多项选择题:1、进程的属性包括( )。

A.进程就是程序,或者说进程是程序的另一种说法。

B.一个被创建的进程,在它消灭之前,在任何时刻总是处于三种状态之一。

C.多个不同的进程可以包含相同的程序。

D.一个处于等待队列中的进程,既使进入其他状态,仍然放在等待队列之中。

E.两个进程可以同时处于运行状态。

2、进程具有的特性有()。

A.动态性B.共享性C.并发性D.静态性E.独立性F.不确定性3、若系统有同类资源5个,被3个进程所共享,每个进程最多可申请()个该类资源时,可使系统不会产生死锁。

A.1 B.2 C.4 D.3 E.54、一个进程从阻塞状态变为就绪状态的原因可能是()。

A.进程调度程序的调度B.现运行进程的时间片的用完C.被阻塞进程的I/O操作完成D.现运行进程执行了P操作E.现运行进程执行了V操作5、单道程序执行的特征有()。

A.顺序性B.确定性C.可再现性D.独占性E.封闭性6、解决死锁的对策有()A.预防死锁B.避免死锁C.条件对策D.检测对策E.解除死锁7、进程的三种基本状态是()。

A.就绪B.运行C.阻塞D.提交E.撤销8、死锁的预防措施有()。

A.静态资源分配法B.动态资源分配法C.资源顺序分配法D.非剥夺控制法E.剥夺控制法9、进程从运行态进入就绪态的原因可能是()。

A.出现了I/O请求B.某I/O请求已完成C.时间片到D.现运行进程执行了P操作E.在剥夺式进程调度下有更高优先级的就绪进程出现10、预防死锁的的常用方法有()。

A.破坏请求和保持条件B.破坏非剥夺条件C.破坏互斥使用条件D.破坏环路等待条件E.破坏同步条件三、填空题:1.()调度是处理机的高级调度,()调度是处理机的低级调度。

2.脱机作业控制方式有()方式和()方式。

3.一个作业运行时间假定为1小时,它在系统中等待了2小时,则该作业的响应比是()。

4.如果系统中所有作业是同时到达的,则使作业平均周转时间最短的作业调度算法是()。

5.确定作业调度算法时应注意系统资源的均衡使用,使()作业和()作业搭配运行。

6.每个作业步都是一个()的执行,前一个作业步的结果信息往往作为后一个作业步的()。

7.在多道批处理系统中,通常采用以下两种调度算法:1.();2.()。

8.一个理想的作业调度算法应该是既能(),又能使进入系统的作业()得到计算结果。

9.响应比高者优先算法综合考虑了作业的()和()。

10.若一个作业的运行时间为2小时,它在系统中等待了3小时,则该作业的响应比是()。

11.作业调度又称(),其主要功能是(),并为作业做好运行前的准备工作和作业完成后的善后处理工作。

12.交互式作业的特点是采用()的方式工作。

四、综合题:1、什么是线程?试说明线程与进程的关系。

2、操作系统中为什么要引入进程的概念?为了实现并发进程间的合作和协调工作,以及保证系统的安全,操作系统在进程管理方面应做哪些工作?3、消息队列通信机制应有哪几方面的功能?4、要使一个系统不发生死锁,一般可采用哪些方法?简述它们的实现原理.5、简述进程和程序的区别。

6、设系统中只有一台打印机,有三个用户的程序在执行过程中都要使用打印机输出计算结果。

设每个用户程序对应一个进程。

问:这三个进程间有什么样的制约关系?试用P、V操作写出这些进程使用打印机的算法。

7、判断下面的同步问题的算法是否正确?若有错,请指出错误原因并予以改正。

(1)设A、B两进程共用一个缓冲区Q,A向Q写入信息,B则从Q读出信息,算法框图如图所示。

注:信号量S的初值为0(2)设A、B为两个并发进程,它们共享一临界资源。

其运行临界区的算法框图如图所示。

注:信号量S1、S2的初值均为08、设有一台计算机,有两条I/O通道,分别接一台卡片输入机和一台打印机。

卡片机把一叠卡片逐一输入到缓冲区B1中,加工处理后在搬到缓冲区B2中,并在打印机上印出,问:①系统要设几个进程来完成这个任务?各自的工作是什么?②这些进程间有什么样的相互制约关系?③用P、V操作写出这些进程的同步算法。

9、试以某航空公司为两旅行社a和b的顾客预订飞机票为例,说明互斥的含义。

10、试以生产者--消费者问题为例,用PV操作说明进程同步问题的实质。

11、在UNIX 系统中,其进程调度方式是什么?引起进程调度的时机有那些?12、某一系统进程的资源分配“瞬间状态”为已分配资源矩阵最多资源矩阵可用资源向量P0 0 0 1 2 0 0 1 2 1 5 2 0P1 1 0 0 0 1 7 5 0P2 1 3 5 4 2 3 5 6P3 0 6 3 2 0 6 5 2P4 0 0 1 4 0 6 5 6使用银行家算法回答:系统是否安全?如果进程P1要求(0,4,2,0),系统能否立即满足进程的要求?13、用信号量和P,V操作描述读者-写者问题:即允许多个读者同时读一个共享对象,但绝不允许一个写者和其它进程同时访问共享对象。

14、什么为核心态、用户态、特权指令?下列哪些指令为特权指令?(1)改变存储器管理寄存器(2)写程序计数器(3)读日历钟(4)设置日历钟(5)改变处理器优先级(6)写指令寄存器15、一个多级反馈队列的系统中,一个使用CPU较多的进程需要执行50秒。

如果第一个队列时间片为5,并且较低一级的时间片是上一级的时间片的2倍,那么这个作业会被中断多少次?当他终止的时候,处于那一级队列?16、什么是死锁?死锁预防的措施有哪些?为什么?17、假设某系统有同类资源12个,有三个进程P1,P2,P3来共享,已知P1、P2、P3所需要资源总数分别为8,6,9,它们申请资源的次序和数量如表所示,系统采用银行家算法为它们分配资源。

(1)哪次申请分配会使系统进入不安全状态?(2)执行完序号为6的申请后,各进程的状态和各进程已占用的资源数?序号进程申请量1 P1 42 P2 43 P3 24 P1 15 P3 26 P2 2………………18、三个进程A、B、C,共享两个缓冲区B1和B2。

缓冲区B1中可存放n件产品,缓冲区B2中可存放m件产品。

进程A每次生产一件产品并将其存入缓冲区B1中;进程B每次从缓冲区B1中取出一件产品后再把它送到缓冲区B2中;进程C每次从缓冲区B2中取出一件产品去消费。

为防止把产品存入已满的缓冲区,或从空的缓冲区取产品、或重复取产品,试用PV操作实现它们之间的制约。

答案一、单项选择题:1.d 2. c 3. b 4. b 5. d 6. a 7. c二、多项选择题:1.BC 2.ACE 3.AB 4.CE 5.ABCDE6.ABDE 7.ABC 8.ACE 9.CE 10. ABD三、填空题:1.作业进程2.作业控制卡作业说明书3.3 4.短作业优先5.I/O繁忙CPU繁忙6.相应程序输入信息7.优先级调度算法均衡调度算法8.提高系统效率及时9.等待时间计算时间10. 2.5 11. 高级调度按照目某种原则从后备队列中选取作业12. 人机对话四、综合题:1、答:(1)线程是为了减少程序并发执行时的开销而引入的。

线程的特点有:结构性、能动性、并发性、动态性。

(2)联系及区别:进程是任务调度的单位,也是系统资源的分配单位,而线程可以看作是进程中的一条执行路径。

当系统支持多线程处理时,线程是任务调度的基本单位,但不是资源的分配单位,而进程恰好相反;每个进程至少有一个执行线程;当系统支持多线程处理时,线程的切换频繁,每次切换的开销较小,因此被称为“轻量级的进程”。

而进程的切换开销较大。

2、答:程序并发执行可以充分利用系统资源、提高系统的处理能力。

若不加以管制,这种资源共享和竞争就会呈现无序状态,程序执行就会失去封闭性和可再现性,使结果失真。

操作系统对进程管理应做如下工作:进程控制、进程调度、进程同步、进程通信3、答:在这种通信机制中,应当设有:消息缓冲区、消息发送原语、消息接收原语,在接收者的PCB中,设有消息队列指针及实现同步与互斥机制的信号量。

4、答:(1)死锁检测:当系统为进程分配资源时,若未采用任何限制性措施,则必须保存有关资源的请求和分配信息,并采用某种算法根据这些信息来检测系统是否已进入死锁状态。

(2)死锁解除:当死锁出现后常采用撤销某些进程或剥夺某些进程资源的方法来解除死锁。

(3)死锁避免:该方法把系统的状态分为安全和不安全两种,并保证系统始终处于安全状态,从而避免死锁的发生。

(4)死锁预防:通过破坏死锁的4个必要条件中的2-4个条件之一来预防死锁的出现,即:①破坏“请求和保持”条件②破坏“不剥夺”条件③破坏“环路等待”条件5、答:进程和程序是既有联系又有区别的两个概念,他们的区别如下:(1)程序是指令的有序集合,其本身没有任何运行的含义,它是一个静态的概念。

而进程是程序在处理机上的一次执行过程,它是一个动态概念。

(2)程序的存在是永久的,而进程则是有生命的,它因创建而产生,因调度而执行,因得不到资源而暂停,因撤销而消亡。

(3)程序仅是指令的有序集合。

而进程则是由程序、数据和进程控制块组成。

(4)进程与程序之间不是一一对应的,即同一程序运行于若干不同的数据集合上,它将属于若干个不同的进程;而一个进程可以执行多个程序。

6、答:因为打印机是一种临界资源,所以这三个进程只能互斥使用这台打印机,即一个用户的计算结果打印完之后,另一个用户再打印。

设三个进程分别为A、B和C。

设一个互斥信号量mutex,其初值为1。

A进程 B进程 C进程P(mutex) P(mutex) P(mutex)使用打印机使用打印机使用打印机V(mutex) V(mutex) V(mutex)7、答:①这个算法不对。

因为A、B两进程共用一个缓冲区Q,如果A先运行,且信息数量足够多,那么缓冲区Q中的信息就会发生后面的冲掉前面的,造成信息丢失,B就不能从Q中读出完整的信息。

相关主题