操作系统习题集------进程管理

合集下载

计算机操作系统进程管理体系练习题

计算机操作系统进程管理体系练习题

计算机操作系统进程管理体系练习题作者: 日期:一、选择题1. 在进程管理中,当— A. 进程被进程调度程序选中 C.等待的事件发生试考虑下述4种情况,不可能发生的情况是 ______________ 。

A. 没有运行进程,有2个就绪进程,n 个进程处于等待状态。

B. 有1个运行进程,C. 有1个运行进程,^态OD. 有1个运行进程,7. 进程的三个基本状态在一定条件下可以相互转化,进程由运 行2. 分配到必要的资源并获得处理机时的进程状态是 A.就绪状态 B.执行状态 消状态3. _________________ P 、V 操作是 。

A.两条低级进程通信原语C.两条系统调用命令4. 设系统中有n (n>2)个进程,C.阻塞状态 OD.撤B.两组不同的机器指令 D.两条高级进程通信原语 且当前不在执行进程调度程序, 时,进程从阻塞状态变为就绪状态。

B.等待某一事件D.时间片用完没有就绪进程,n-1个进程处于等待状态。

有1个就绪进程,n-2个进程处理等待状5. 若P 、V 操作的信号量S 初值为2,当前值为-1,则表示有_ 等待进程。

A. 0个个6. 进程的三个基本状态在一定条件下可以相互转化,进程由就 绪状态变为运行状态的条件是A.时间片用完 C.等待的某事件已发生B. 1个C. 2个D. 3OB.等待某事件发生D.被进程调度程序选中n-1个就绪进程,没有进程处于等待状态。

下列的进程状态变化中, 运行就绪 B.就绪 就绪一个运行的进程用完了分配给它的时间片后,它的状态变 OB.等待某事件发生D.被进程调度程序选中_______ 变化是不可能发生的。

运行 C.等待运行D.等状态变为阻塞状态的条件是A.时间片用完C.等待的某事件已发生8.A.待9.为B.等待C.运行 A.就绪用户自己确定10. 用V 操作唤醒一个等待进程时,被唤醒进程的状态变为 _________ 。

A.等待成11. 操作系统通过 A. JCB 12. 用 P 、A. 一切B.就绪C.运行 .对进程进行管理。

计算机操作系统进程管理练习题(1)

计算机操作系统进程管理练习题(1)

一、选择题1.在进程管理中,当时,进程从阻塞状态变为就绪状态。

A.进程被进程调度程序选中B.等待某一事件C.等待的事件发生D.时间片用完2.分配到必要的资源并获得处理机时的进程状态是。

A.就绪状态 B.执行状态 C.阻塞状态 D.撤消状态3.P、V操作是。

A.两条低级进程通信原语B.两组不同的机器指令C.两条系统调用命令D.两条高级进程通信原语4.设系统中有n(n>2)个进程,且当前不在执行进程调度程序,试考虑下述4种情况,不可能发生的情况是。

A.没有运行进程,有2个就绪进程,n个进程处于等待状态。

B.有1个运行进程,没有就绪进程,n-1个进程处于等待状态。

C.有1个运行进程,有1个就绪进程,n-2个进程处理等待状态。

D.有1个运行进程,n-1个就绪进程,没有进程处于等待状态。

5.若P、V操作的信号量S初值为2,当前值为-1,则表示有等待进程。

A. 0个B. 1个C. 2个D. 3个6.进程的三个基本状态在一定条件下可以相互转化,进程由就绪状态变为运行状态的条件是。

A.时间片用完B.等待某事件发生C.等待的某事件已发生D.被进程调度程序选中7.进程的三个基本状态在一定条件下可以相互转化,进程由运行状态变为阻塞状态的条件是。

A.时间片用完B.等待某事件发生C.等待的某事件已发生D.被进程调度程序选中8.下列的进程状态变化中,变化是不可能发生的。

A.运行→就绪B.就绪→运行C.等待→运行D.等待→就绪9.一个运行的进程用完了分配给它的时间片后,它的状态变为。

A.就绪B.等待C.运行D.由用户自己确定10.用V操作唤醒一个等待进程时,被唤醒进程的状态变为。

A.等待B.就绪C.运行D.完成11.操作系统通过对进程进行管理。

A. JCBB. PCBC. DCTD. CHCT 12.用P、V操作可以解决互斥问题。

A. 一切B. 某些C. 正确D. 错误13.一个进程被唤醒意味着。

A. 该进程重新占有了CPUB. 它的优先权变为最大C. 其PCB移至等待队列队首D. 进程变为就绪状态14.多道程序环境下,操作系统分配资源以为基本单位。

操作系统原理-第三章进程管理习题(1)

操作系统原理-第三章进程管理习题(1)

第三章进程管理习题一. 单选题1. UNIX操作系统的进程控制块中常驻内存的是()。

A.proc结构B.proc结构和核心栈C.ppda区D.proc结构和user结构2. 当()时,进程从执行状态转变为就绪状态。

A.进程被调度程序选中B.时间片到C.等待某一事件D.等待的事件发生3.在进程状态转换时,下列()转换是不可能发生的。

A.就绪态→运行态B.运行态→就绪态C.运行态→阻塞态D.阻塞态→运行态4.下列各项工作步骤中,()不是创建进程所必需的步骤。

A.建立一个PCBB.作业调度程序为进程分配CPUC.为进程分配内存等资源D. 将PCB链入进程就绪队列5.下列关于进程的叙述中,正确的是()。

A.进程通过进程调度程序而获得CPU。

B.优先级是进行进程调度的重要依据,一旦确定不能改变。

C.在单CPU系统中,任一时刻都有1个进程处于运行状态。

D.进程申请CPU得不到满足时,其状态变为等待状态。

6.从资源管理的角度看,进程调度属于()。

A.I/O管理B.文件管理C.处理机管理D.存储器管理7.下列有可能导致一进程从运行变为就绪的事件是()。

A.一次I/O操作结束B.运行进程需作I/O操作C.运行进程结束D.出现了比现运行进程优先权更高的进程8.一个进程释放一种资源将有可能导致一个或几个进程()。

A.由就绪变运行B.由运行变就绪C.由阻塞变运行D.由阻塞变就绪9.一次I/O操作的结束,有可能导致()。

A.一个进程由睡眠变就绪B.几个进程由睡眠变就绪C.一个进程由睡眠变运行D.几个进程由睡眠变运行10.当一个进程从CPU上退下来时,它的状态应变为()。

A.静止就绪B. 活动就绪C. 静止睡眠D. 活动睡眠11.为使进程由活动就绪变为静止就绪,应利用()原语?** B. ACTIVE C. BLOCK D. WAKEUP12.在下面的叙述中,不正确的是()。

A.一个进程可创建一个或多个线程B.一个线程可创建一个或多个线程C.一个线程可创建一个或多个进程D.一个进程可创建一个或多个进程13. 若系统中只有用户级线程,则处理机调度单位是()。

操作系统(进程管理)习题与答案1

操作系统(进程管理)习题与答案1

一、单选题1、关于进程控制块的描述,如下存在问题的选项是()。

A.操作系统控制和管理并发执行进程的依据B.进程存在的惟一标志,离散存放于内存空间或对应程序的文件目录项中C.进程实体的一部分,是拥有描述进程情况及控制进程运行所需的全部信息的记录性数据结构D.使一个在多道程序环境下不能独立运行的程序,成为一个能独立运行的基本单位,一个能与其它进程并发执行的进程正确答案:B2、进程标识符和进程控制块的分配可能发生在进程的()阶段。

A.阻塞B.挂起C.创建D.终止正确答案:C3、当一个进程被()时,可能会发生处理器的调度。

①终止;②挂起;③唤醒;④阻塞A.①②④B.①③④C.①②③④D.①④正确答案:C4、对于系统服务进程而言,如果当前没有任务,便会引发自身的()事件。

A.进程阻塞B.进程唤醒C.进程终止D.进程挂起正确答案:A5、引起进程重新调度的原因不包括()。

A.进程放弃处理器B.进程从核心态返回用户态C.进程执行系统调用和陷入内核态D.时钟中断正确答案:C6、关于进程同步机制基本准则:当无进程处于某临界资源所对应的临界区时,可允许一个请求进入(该临界资源所对应的)临界区的进程立即进入自己的临界区,这称之为()。

A.忙则等待B.有限等待C.空闲让进D.让权等待正确答案:C7、关于进程同步机制基本准则:当已有进程进入自己的对应于某临界资源的临界区时,所有企图进入该临界资源所对应临界区的进程必须等待,这称之为()。

A.循环等待B.忙则等待C.有限等待D.让权等待正确答案:B8、关于进程同步机制基本准则:对要求访问临界资源的进程,应保证该进程能在有限时间内进入自己的临界区,这称之为()。

A.忙则等待B.循环等待C.有限等待D.让权等待正确答案:C9、进程同步机制应遵循让权等待准则,故而当一个进程不能进入自己的临界区时,其应当释放()。

A.处理器B.I/O设备C.内存空间D.外存空间正确答案:A10、利用硬件指令能有效地实现进程互斥,但它却不能满足()的准则,造成了处理器时间的浪费,而且也很难将它用于解决较复杂的进程同步问题。

计算机操作系统进程管理练习题(1)

计算机操作系统进程管理练习题(1)

一、选择题1.在进程管理中,当时,进程从阻塞状态变为就绪状态。

A.进程被进程调度程序选中B.等待某一事件C.等待的事件发生D.时间片用完2.分配到必要的资源并获得处理机时的进程状态是。

A.就绪状态 B.执行状态 C.阻塞状态 D.撤消状态3.P、V操作是。

A.两条低级进程通信原语B.两组不同的机器指令C.两条系统调用命令D.两条高级进程通信原语4.设系统中有n(n>2)个进程,且当前不在执行进程调度程序,试考虑下述4种情况,不可能发生的情况是。

A.没有运行进程,有2个就绪进程,n个进程处于等待状态。

B.有1个运行进程,没有就绪进程,n-1个进程处于等待状态。

C.有1个运行进程,有1个就绪进程,n-2个进程处理等待状态。

D.有1个运行进程,n-1个就绪进程,没有进程处于等待状态。

5.若P、V操作的信号量S初值为2,当前值为-1,则表示有等待进程。

A. 0个B. 1个C. 2个D. 3个6.进程的三个基本状态在一定条件下可以相互转化,进程由就绪状态变为运行状态的条件是。

A.时间片用完B.等待某事件发生C.等待的某事件已发生D.被进程调度程序选中7.进程的三个基本状态在一定条件下可以相互转化,进程由运行状态变为阻塞状态的条件是。

A.时间片用完B.等待某事件发生C.等待的某事件已发生D.被进程调度程序选中8.下列的进程状态变化中,变化是不可能发生的。

A.运行→就绪B.就绪→运行C.等待→运行D.等待→就绪9.一个运行的进程用完了分配给它的时间片后,它的状态变为。

A.就绪B.等待C.运行D.由用户自己确定10.用V操作唤醒一个等待进程时,被唤醒进程的状态变为。

A.等待B.就绪C.运行D.完成11.操作系统通过对进程进行管理。

A. JCBB. PCBC. DCTD. CHCT 12.用P、V操作可以解决互斥问题。

A. 一切B. 某些C. 正确D. 错误13.一个进程被唤醒意味着。

A. 该进程重新占有了CPUB. 它的优先权变为最大C. 其PCB移至等待队列队首D. 进程变为就绪状态14.多道程序环境下,操作系统分配资源以为基本单位。

计算机操作系统(习题集)第二章 答案

计算机操作系统(习题集)第二章 答案

第二章进程管理一、单项选择题1、在单一处理机上执行程序,多道程序的执行是在(B)进行的。

A.同一时刻B. 同一时间间隔内C.某一固定时刻D. 某一固定时间间隔内2、引入多道程序技术后,处理机的利用率( C)。

A.降低了B. 有所改善C.大大提高D. 没有变化,只是程序的执行方便了3、顺序程序和并发程序的执行相比,( C)。

A.基本相同 C.并发程序执行总体上执行时间快B. 有点不同 D.顺序程序执行总体上执行时间快4、单一处理机上,将执行时间有重叠的几个程序称为(C )。

A.顺序程序B. 多道程序C.并发程序D. 并行程序5、进程和程序的本质区别是(D )。

A.存储在内存和外存 B.顺序和非顺序执行机器指令C.分时使用和独占使用计算机资源D.动态和静态特征6、进程就是程序在并发环境中的执行过程,它是系统进行资源分配和调度的一个基本单位。

进程具有[1A]、[2D]、调度性、异步性和结构性等基本特征。

进程是一次执行过程,具有生命期体现了进程的[1]特征。

进程由程序段、[3B]、[4C]组成,其中[4]是进程在系统中存在的唯一标识。

供选择的答案:[1][2] :A、动态性 B、静态性 C、共行性 D、并发性 E、可执行性 F、易用性[3] :A、过程 B、数据 C、进程标识符 D、函数[4] :A、FCB B、FIFO C、PCB D、JCB7、进程执行时的间断性,决定了进程可能具有多种状态。

进程的基本状态有三种,在分时系统中,当一个进程拥有的时间片到时,则该进程即由[1D]进入[2A]。

如果出现因某种原因使得处理机空闲时,则需要从就绪队列中选择一进程,并将处理机分配给它,此时该进程进入[3D],这个过程是由[4C]来完成。

供选择的答案:[1][2][3] :A、就绪状态 B、静止状态 C、阻塞状态 D、运行状态[4] :A、进程控制程序B、资源分配程序C、进程调度程序 D、处理机分配程序8、为了描述进程的动态变化过程,采用了一个与进程相联系的(C ),根据它而感知进程的存在。

操作系统习题集之进程管理

操作系统习题集之进程管理

操作系统习题集之进程和处理机管理来源:北大的MSE:有关计算机的一些辅导资料日期:2010-12-5第7章进程及处理机管理学习重点(1)操作系统“核心”功能和特点(2)程序的顺序执行与并发执行(3)进程的定义,进程的五个基本特征,进程控制块,程序与进程的对比,进程与线程(4)进程的描述;进程的基本状态及转換(就绪、执行、等待)(5)进程调度算法(先来先服务、RR轮转法、多级反馈轮转法和优先数法)(6)进程通信:同步与互斥、临界区、原语(加锁/开锁原语、信号量及P-V操作)、消息缓冲(7)什么是死锁?产生死锁的四个必要条件(互斥使用、保持和等待、非剥夺性、循环等待和处理)教学要求:(1)牢固掌握进程的概念。

(2)熟练掌握操作系统核心功能、核心形式。

(3)掌握顺序执行与并发执行的比较。

(4)熟练掌握进程的五个基本特征,掌握进程与程序的主要区别。

理解进程与线程的关系。

(5)掌握进程的基本状态:执行态、就绪态、等待态。

在什么条件下发生状态转换?(6)理解进程的一般组成,应深入理解进程控制块的作用。

每个进程有惟一的进程控制块。

(7)理解常用的进程调度算法。

(8)掌握进程同步与互斥的比较,简单理解为同步是伙伴,互斥是竞争。

(9)理解信号量概念,P、V操作执行的动作。

(10)掌握死锁的概念、死锁的必要条件、解决死锁的基本方法。

习题1、什么是进程?答:进程是一个具有一定独立功能的程序关于某个数据集合的一次运行活动。

它是操作系统动态执行的基本单元,在传统的操作系统中,进程既是基本的分配单元,也是基本的执行单元。

(在Windows NT等采用微内核结构的现代操作系统中,进程的功能发生了变化:它只是资源分配的单位,而不再是调度运行的单位,其调度运行的基本单位是线程。

)2、进程的互斥和同步有什么异同点?答:同步与互斥特点比较见教材127页表6-4。

同步互斥进程-进程进程-资源-进程时间次序上受到某种限制竞争到某一物理资源时不允许其他进程工作相互清楚对方的存在及其作用,交换信息不一定清楚其他进程情况往往指有几个进程共同完成一个任务往往指多个任务多个进程间通讯制约,故更广泛举例:生产与消费之间,发送与接收之间,作者与读者之间,供者与用者之间。

操作系统习题第二章习题(进程管理)

操作系统习题第二章习题(进程管理)

一、单项选择题1.在进程管理中,当C 时,进程从阻塞状态变为就绪状态。

A. 进程被进程调度程序选中 B.等待某一事件C. 等待的事件发生 D.时间片用完2.分配到必要的资源并获得处理机时的进程状态是B 。

A. 就绪状态 B.执行状态C.阻塞状态 C. 撤消状态3.P、V操作是 A 。

A. 两条低级进程通信原语 B.两组不同的机器指令C. 两条系统调用命令 D.两条高级进程通信原语4.对进程的管理和控制使用 B 。

A.指令 B.原语C.信号量 D.信箱通信5.进程的并发执行是指若干个进程 D 。

A. 同时执行 B.在执行的时间上是重叠的C.在执行的时间上是不可重叠的 D.共享系统资源6. 若P、V操作的信号量s初值为2,当前值为-1,则表示有 B等待进程。

A.0个 B.1个 C.2个 D.3个7. 程序的顺序执行通常在① A 的工作环境中,具有②C 特征;程序的并发执行在③ B 的工作环境中,具有④ D 特征。

A. 单道程序 B.多道程序C. 程序的可再现性 D.资源共享8.进程的三个基本状态在一定条件下可以相互转化,进程由就绪状态变为运行状态的条件是① D ;由运行状态变为阻塞状态的条件是② C 。

A. 时间片用完 B.等待某事件发生C. 等待的某事件己发生 D.被进程调度程序选中9.下列的进程状态变化中, B 变化是不可能发生的。

A. 运行一就绪 B.运行一等待C,等待一运行 D,等待一就绪10.一个运行的进程用完了分配给它的时间片后,它的状态变为 A。

A. 就绪 B.等待C. 运行 D.由用户自己确定11.用P、V操作管理临界区时,信号量的初值应定义为 C 。

A.-1 B.0 C.1 D.任意值12.用V操作唤醒一个等待进程时,被唤醒进程的状态变为 B 。

A. 等待 B,就绪 C运行 D.完成13.进程间的同步是指进程间在逻辑上的相互 B 关系。

A. 联接 B.制约 C. 继续 D.调用14. D 是一种只能进行P操作和V操作的特殊变量。

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

习题集- 2 - 进程管理1. 在优先级调度中,___________ 类进程可能被“饿死”,即长时间得不到调度。

A.短进程 B .长进程 C .低优先级进程 D .大内存进程解:C。

优先级调度算法(PRI)的基本思想是:内核为每个进程赋予一个优先级,进程按照优先级的大小顺序在就绪队列中排队,内核将CPU分配给就绪队列头部的第一个进程一一优先级最大的进程。

因此,进程的优先级越低,在就绪队列中的排队位置就越靠近队列尾,获得运行之前的等待时间就越长。

低优先级的进程必须等待所有高优先级进程运行结束后才会被调度运行。

如果不断有高优先级的进程加入就绪队列,那么低优先级进程就会一直等待下去。

这就是所谓的“饿死”现象。

2. 在下面的系统调用中,____________ 不会导致进程阻塞。

A.读/ 写文件 B .获得进程 PID C .申请内存 D .发送消息解:B 。

当正在执行的进程需要使用某种资源或等待某个事件时,如果资源已被其他进程占用或事件尚未出现,该进程不能获得所需的资源而无法继续运行,于是,进程将被阻塞。

进程在阻塞状态中等待资源被释放,或等待事件的发生。

所以,进程在执行系统调用时,如果需要使用某种资源,就可能导致进程阻塞。

“读 /写文件”需要使用设备和文件缓冲区;“申请内存”需要分配内存资源;“发送消息”需要使用消息缓冲区。

3. 下面关于临界区的叙述中,正确的是_____________A.临界区可以允许规定数目的多个进程同时执行B.临界区只包含一个程序段C.临界区是必须互斥地执行的程序段D.临界区的执行不能被中断解:C。

临界段(临界区)的概念包括两个部分:①临界资源:必须互斥访问的资源。

例如,需要独占使用的硬件资源,多个进程共享的变量、结构、队列、栈、文件等软件资源。

②临界区:访问临界资源的、必须互斥地执行的程序段。

即,当一个进程在某个临界段中执行时,其他进程不能进入相同临界资源的任何临界段。

4. 资源顺序分配法破坏了死锁发生的_____________ 必要条件。

A.互斥占用 B .占有等待 C .非剥夺 D .循环等待解:D 。

资源顺序分配方法是:给系统中的每类资源赋予一个自然数的序号,限制进程只能严格按照资源序号由小到大的顺序申请资源。

该方法可以避免“循环等待”的情况发生。

因为,若出现循环等待,则必会有进程在获得大序号资源后申请小序号资源。

5. 假设某操作系统采用 RR调度策略,分配给 A类进程的时间片为100 ms分配给B类进程的时间片为400 ms,就绪进程队列的平均长度为 5 (包括正在运行的进程),其中 A类进程有4个,B类进程有1个,所有进程的平均服务时间为 2 s,问A类进程和B类进程的平均周转时间各为多少?(不考虑 IO 情况)解析:时间片轮转调度(RR是轮流地调度就绪队列中的每个进程,进程每次占用CPU的时间长度限制为时间片的大小。

当采用固定的时间片大小时,每个进程按照固定周期被循环地执行。

所以,进程的执行速度是由该进程的时间片大小在一个循环周期中所占的比例决定的,比例越高,进程的相对执行速度就越快。

解:因为就绪进程队列的平均长度为5,单个RR调度循环周期的时间为4X 100+ 1 X400 = 800 (ms)A类进程需要20个时间片的执行时间,B类进程需要5个时间片的执行时间(1 s = 1 000 ms )。

A类进程的平均周转时间为20X0.8 =16(s)B 类进程的平均周转时间为5X 0.8=4(s)6. 某多道程序设计系统中配有一台处理器 CPU和两台输入/输出设备101、102,现有优先级由高到低的3个进程P1、P2、P3同时存在,它们使用资源的先后顺序和占用时间分别是:进程 P1: 102(30 ms),CPU(10 ms),101(30 ms),CPU(10 ms),102(10 ms)。

进程 P2: 101(20 ms),CPU(20 ms),101(40 ms)。

进程 P3: CPU(30 ms),102(20 ms)。

若进程调度采用“可抢占的最高优先级”调度算法,且忽略调度等所需的时间,请回答下列问题:(1) 进程P1、P2、P3从开始到完成所用的时间分别是多少?(要求用坐标画出进程 P1、P2、P3的工作 过程,其中横坐标表示时间,纵坐标表示 CPU 和 I0设备。

)(2) 这3个进程从开始到全部完成时 CPU 的利用率为多少?101、102的利用率为多少?解析:在“可抢占的最高优先级”调度中,任何时刻内核都将处理机分配给当前最高优先级的就绪进程。

也就是说,只有当高优先级进程主动放弃 CPU 时,低优先级进程才有机会运行,并且,一旦高优先级进程需要使用 CPU 时,内核就会剥夺低优先级进程的CPU 分配给它使用。

在本题中,由于进程 P1和P2在开始执行时先需要进行 10,所以最低优先级的进程 P3获得了 CPU但是,P3运行了 20 ms 后就被P2抢占了 CPU 因为P2刚好完成了 10 ,并且P2的优先级大于P3。

同 样的原因,P2运行了 10 ms 后,就被P1抢占了 CPU P1在CPU 上运行10 ms 之后再次需要进行I0 而放弃CPU 于是,P2、P1获得继续运行的机会。

以此方式, P1、P2和P3相继完成自己的运行过程。

解:根据“可抢占的最高优先级”调度算法,画出进程P1、P2、P3的工作过程(见图2 9)。

102101 CPU图2.9 P1 P32040 60 80 100 T(ms)120进程 P1、P2、P3IO2 的利用率 =(30+20+10)/110=54.5%7. 论述以下解决双进程临界区问题的软件算法是错误的。

ProcessP0:do {flag [ 0 ] =true ; ①while (flag [1]) ; ③临界区flag [ 0 ] =false ;}while (1) ;ProcessP1 :do {flag [ 1 ] =true ; ②while (flag [0]) ; ④临界区flag [ 1 ] =false ;}while (1) ;解析:在算法中,两个进程 P1和P2各自拥有自己的标志牌flag :0]和flag [1]。

当进程需要进入临界 区时,举起标志牌 (设置值为 true )。

然后观察对方是否举起标志牌, 是则等待并继续观察 ( while 语句) , 直到对方放下标志牌(设置值为 false )。

这时,进程才进入临界区。

进程退出临界区时,放下标志牌(设 置值为 false )。

进程P1、P2、P3从开始到完成所用的时间分别是时的时间为110( ms ),在此期间内: CPU 的利用率=(30+20+10+10)/110=63.6%I01 的利用率=(20+30+40)/110=81.8%90 ms 、110 ms 、80 ms 。

这3个进程从开始到全部完成解:通过使用标志牌flag : 0]和flag : 1],能够保证满足“互斥”条件。

但是,当两个进程按照①②③④的顺序执行程序时,它们各自举起了标志牌,同时都因为观察到对方也举起了标志牌而等待在while语句中。

由于两个进程都不会放下自己的标志牌,因此都无法进入临界区,不能满足“有限等待”的条件。

所以,上述解决双进程临界区问题的算法是错误的。

8. 以下解决双进程访问共享变量 count 的程序是否存在错误?试用信号量实现。

Share : count=0 ;Int: flag[2];cobeginProcess P0:do {flag[0]=true ;①while(flag[1]) ;③count=count+1 ;flag[0]=false ;}while(1) ;Process P1 :do {flag[1]=true ;②while(flag[0]) ;④count=count+1 ;flag[1]=false ;}while(1) ;coend解:在上述程序中,访问共享变量的语句count=count+1构成临界区。

两个进程 P0和P1各自拥有自己的标志牌 flag[0] 和 flag[1] 。

当进程需要进入临界区时,举起标志牌(设置值为 true )。

然后观察对方是否举起标志牌,是则等待并继续观察( while 语句),直到对方放下标志牌(设置值为 false )。

这时,进程才进入临界区。

进程退出临界区时,放下标志牌(设置值为 false )。

通过使用标志牌 flag[0] 和 flag[1] ,能够保证满足“单一进入”的条件。

但是,当两个进程按照①、②、③、④的顺序执行程序时,它们各自举起了标志牌,同时都因为观察至U对方也举起了标志牌而等待在 while 语句中。

由于两个进程都不会放下自己的标志牌,因此都无法进入临界区,不能满足“有限等待”的条件。

所以,上述程序是错误的。

设置信号量 S 实现对共享变量 count 的互斥访问。

Share : count=0 ;struct semaphore S=1 ;cobeginProcess P0:do {P(S);count=count+1 ;V(S);}while(1) ;Process P1 :do {P(S);count=count+1 ;V(S);}while(1) ;coend9. 假定一个阅览室最多可容纳 100 人,读者进入和离开阅览室时都必须在阅览室门口的一个登记表上进行登记,而且每次只允许一人进行登记操作。

用信号量实现该过程。

解:设置信号量S:控制进入阅览室的人数。

初值=100。

设置信号量mutex :控制登记表的互斥使用。

初值=1。

struct semaphore s=100,mutex=1;。

相关文档
最新文档