进程管理课后习题答案
第2章进程管理练习题(答案)
第2章进程管理练习题(答案)第二章进程管理一、单项选择题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 ),根据它而感知进程的存在。
操作系统(进程管理)习题与答案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、利用硬件指令能有效地实现进程互斥,但它却不能满足()的准则,造成了处理器时间的浪费,而且也很难将它用于解决较复杂的进程同步问题。
第2章 进程管理习题及答案
第二章进程管理习题及答案一、填空题1.进程的静态描述由三部分组成:①、②和③。
【答案】①PCB、②程序部分、③相关的数据结构集【解析】PCB是系统感知进程的唯一实体。
进程的程序部分描述了进程所要完成的功能,而数据结构集是程序在执行时必不可少的工作区和操作对象。
后两部分是进程完成所需功能的物质基础。
2.进程存在的标志是。
【答案】进程控制块PCB【解析】系统根据PCB感知进程的存在和通过PCB中所包含的各项变量的变化,掌握进程所处的状态以达到控制进程活动的目的。
3.①是现代操作系统的基本特征之一,为了更好地描述这一特征而引入了②这一概念。
【答案】①程序的并发执行,②进程【解析】程序的并发执行和资源共享是现代操行系统的基本特征。
程序的并发执行使程序失去了程序顺序执行时所具有的封闭性和可再现性。
在程序并发执行时,程序这个概念不能反映程序并发执行所具有的特性,所以引入进程概念来描述程序并发执行所具有的特点。
4.给出用于进程控制的四种常见的原语①、②、③和④。
【答案】①创建原语、②撤消原语、③阻塞原语、④唤醒原语【解析】进程控制是系统使用一些具有特定功能的程序段来创建、撤消进程以及完成进程各状态间的转换,从而达到多个过程高效率地并行执行和协调,实现资源共享的目的。
把那些在管态下执行的具有特定功能的程序段称为原语。
5.进程被创建后,最初处于①状态,然后经②选中后进入③状态。
【答案】①就绪,②进程调度程序,③运行【解析】进程的从无到有,从存在到消亡是由进程创建原语和撤消原语完成的。
被创建的进程最初处于就绪状态,即该进程获得了除处理机以外的所有资源,处于准备执行的状态;从就绪状态到运行状态的转换是由进程调度程序来完成的。
6.进程调度的方式通常有①和②方式两种。
【答案】①可剥夺、②非剥夺【解析】所谓可剥夺方式,是指就绪队列中一旦有优先级高于当前运行进程的优先级的进程存在时,便立即发生进程调度,转让处理机。
而非剥夺方式则是指:即使在就绪队列中存在有优先级高于当前运行进程的进程,当前进程仍将继续占有处理机,直到该进程完成或某种事件发生(如I/O事件)让出处理机。
第2章 进程管理课后习题解答
第题中,如果修改问题中的同步算法,要求 对写进程优先,即一旦写进程到达,后续的读者进程必须等待, 而无论是否有读者进程在读文件。写出相应进程的程序段。 semaphore fmutex=1, rmutex=1, wmutex=1;que=1;
int rcount=0, wcount=0; void main() { parbegin(reader, writer); }
12
void reader { while(1) { wait(que); wait(rmutex); if(0==readcount) wait(fmutex); readcount++; signal(rmutex); signal(que); …. begin to read wait(rmutex); readcount--; if(readcount==0) signal (fmutex); signal(rmutex); } }
读者—写者问题(读优先) 读者 写者问题(读优先) 写者问题 semaphore rmutex=1,wmutex=1; int readcount=0; = void main() { parbegin(reader,writer); }
读者进程: 读者进程: void reader() { while(1) { wait(rmutex); if (readcount==0) wait(wmutex); readcount++; signal(rmutex); … 读操作 wait(rmutex); readcount--; if (readcount==0) signal(wmutex); signal(rmutex); } }
18
chopstick[ ={1 semaphore chopstick[5]={1,1,1,1,1}; viod main() { parbegin(P0(),P1(),P2(),P3(),P4()); parbegin(P0(),P1(),P2(),P3(),P4()); } Pi() /*i=0,1,2,3,4*/ { while(1) { wait(chopstick[i]); [ ] wait(chopstick[(i+1)%5]); [ ] eating; … signal(chopstick[i]); [ ] signal(chopstick[(i+1) %5]); [ ] thinking; } }
操作系统原理-第三章进程管理习题(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. 若系统中只有用户级线程,则处理机调度单位是()。
电大操作系统 第2章教材习题解答
第2章进程管理“练习与思考”解答1.基本概念和术语进程、进程互斥、进程同步、临界资源、临界区、死锁进程是程序在并发环境中的执行过程。
进程互斥:各个进程彼此不知道对方的存在,逻辑上没有关系,由于竞争同一资源(如打印机、文件等)而发生相互制约。
进程同步:各个进程不知对方的名字,但通过对某些对象(如I/O缓冲区)的共同存取来协同完成一项任务。
临界资源:一次仅允许一个进程使用的资源。
临界区:在每个进程中访问临界资源的那段程序。
死锁是指在一个进程集合中的每个进程都在等待仅由该集合中的另一个进程才能引发的事件而无限期地僵持下去的局面。
2.基本原理和技术(1)在操作系统中为什么要引入进程概念?它与程序的区别和联系是什么?在操作系统中,由于多道程序并发执行时共享系统资源,共同决定这些资源的状态,因此系统中各程序在执行过程中就出现了相互制约的新关系,程序的执行出现“走走停停”的新状态。
这些都是在程序的动态过程中发生的。
用程序这个静态概念已不能如实反映程序并发执行过程中的这些特征。
为此,人们引入“进程”这一概念来描述程序动态执行过程的性质。
进程与程序的主要区别是:·进程是动态的;程序是静态的。
·进程有独立性,能并发执行;程序不能并发执行。
·二者无一一对应关系。
·进程异步运行,会相互制约;程序不具备此特征。
但进程与程序又有密切的联系:进程不能脱离具体程序而虚设,程序规定了相应进程所要完成的动作。
(2)进程的基本状态有哪几种?通常在操作系统中,进程至少要有三种基本状态。
这三种基本状态是:运行态、就绪态和阻塞态(或等待态)。
(3)用如图3-23所示的进程状态转换图能够说明有关处理机管理的大量内容。
试回答:①什么事件引起每次显著的状态变迁?②下述状态变迁因果关系能否发生?为什么?(A)2→1 (B)3→2 (C)4→1图3-23 进程状态转换图①就绪→运行:CPU空闲,就绪态进程被调度程序选中。
进程管理习题
第二章进程管理一、单项选择题1.一个进程是()。
A.由协处理器执行的一个程序B.一个独立的程序+数据集C.PCB结构与程序和数据的组合D.一个独立的程序2.下列关于线程的叙述中,正确的是()。
A.线程包含CPU现场,可以独立执行程序B.每个线程有自己独立的地址空间C.进程只能包含一个线程D.线程之间的通信必须使用系统调用函数3.进程之间交换数据不能通过()途径进行。
A.共享文件B.消息传递C.访问进程地址空间D.访问共享存储区4.进程和程序的根本区别是()。
A.静态和动态特点B.是不是被调入到内存在C.是不是具有就绪.运行和等待三种状态D.是不是占有处理器5.下面的叙述中,正确的是()。
A.进程获得处理器运行时通过调度得到的B.优先级是进程调度的重要依据,一旦确定不能改动C.在单处理器系统中,任何时刻都只有一个进程处于运行状态D.进程申请处理器而得不到满足时其状态变为阻塞状态6.若某一进程拥有100个线程,这些线程都属于用户级线程,则在系统调度执行时间上占用的时间片是()。
A.1 B.100 C.1/100 D.07.进程Pl .P2和P3单独执行时间分别为10min.15 min和20min,其中处理器占用时间分别为2min.3 min和12min。
如果采用多道程序设计技术使其并发,加上系统开销5min ,那么并发使得计算机系统的效率提高了()。
A.1 B.38% C.74% D.51%8.操作系统是根据()来对并发执行的进程进行控制和管理的。
A.进程的基本状态B.进程控制块C.多道程序设计D.进程的优先权9.在任何时刻,一个进程的状态变化()引起另一个进程的状态变化。
A.必定B.一定不C.不一定D.不可能10.在单处理器系统中,如果同时存在10个进程,则处于就绪队列中的进程最多有()个。
A.1 B.8 C.9 D.1011.一个进程释放了一台打印机后,有可能改变()的状态。
A.自身进程B.输入/输出进程C.另一个等待打印机的进程D.所有等待打印机的进程12.假定系统进程所请求的一次I/0操作完成后,将使进程状态从()。
(第4章进程及进程管理)习题四答案介绍
沈华
湖北工业大学计算机学院
P 对公共变量 Q 的访问 V
end coend 信号量 mutex 的取值范围为:mutex.value ∈[1, - (n-1)]。 ①值为 1 时,表示没有进程访问公共变量 Q; ②值为 0 时,表示有一个进程正在访问公共变量 Q; ③值<0 时,表示有一个进程正在访问公共变量 Q,同时又| mutex.value |个进程 等待访问公共变量 Q。
沈华
湖北工业大学计算机学院
19. 20. 21. }
} }//while
4-6 进程有哪几个基本状态?在一个系统中为什么必须区分出这几种状态。 答:进程有三个基本状态:运行状态、就绪状态和等待状态(又称阻塞、挂起、 睡眠) 。 因为多道程序设计技术的引入,使得多个进程可以并发执行。并发执行的进程 之间由于合作具有直接制约关系或由于共享资源具有间接制约关系,使得它们 的执行过程具有“执行——暂停——执行——暂停——执行——…”的动态特 征,因此需要对进程在其生命周期内所处于的不同状态进行区分,以便对进程 进行分析、管理和控制。
4-4 图 4-2 标明程序段执行的先后次序。其中 I 表示输入操作、C 表示计算操作、 P 表示打印操作,下角标说明是对哪个作业进行上述操作。请指明: (1)哪些操作必须有先后次序,其原因是什么? (2)哪些操作可以并发执行,其原因又是什么? 答: (1)Ii 必须先于 Ci 执行,Ci 必须先于 Pi 执行,这是因为同一个作业的这三 个操作之间具有逻辑上的严格的先后执行次序;Ii 必须先于 Ii+1 执行,Ci 必须先 于 Ci+1 执行,Pi 必须先于 Pi+1 执行,这是因为 Ii 和 Ii+1 共享输入设备、Ci 和 Ci+1 共享 CPU、Pi 和 Pi+1 共享输出设备。 (2)Ii+1 和 Ci、Pi-1 可以并发执行,因为这三个进程分属于不同的作业,且它们 占据的是不同的资源。
第二章 操作系统进程(练习题答案)
第二章进程管理1.操作系统主要是对计算机系统全部 (1) 进行管理,以方便用户、提高计算机使用效率的一种系统软件。
它的主要功能有:处理机管理、存储管理、文件管理、 (2) 管理和设备管理等。
Windows和Unix是最常用的两类操作系统。
前者是一个具有图形界面的窗口式的 (3) 系统软件,后者是一个基本上采用 (4) 语言编制而成的的系统软件。
在 (5) 操作系统控制下,计算机能及时处理由过程控制反馈的信息并作出响应。
供选答案:(1): A. 应用软件 B. 系统软硬件C. 资源D. 设备(2): A. 数据 B. 作业C. 中断D. I/O(3): A. 分时 B. 多任务C. 多用户D. 实时(4): A. PASCAL B. 宏C. 汇编D. C(5): A. 网络 B. 分时C. 批处理D. 实时答案:CBBDD2.操作系统是对计算机资源进行的 (1) 系统软件,是 (2) 的接口。
在处理机管理中,进程是一个重要的概念,它由程序块、 (3) 和数据块三部分组成,它有3种基本状态,不可能发生的状态转换是 (4) 。
虚拟存储器的作用是允许程序直接访问比内存更大的地址空间,它通常使用 (5) 作为它的一个主要组成部分。
供选答案:(1): A. 输入和输出 B. 键盘操作C. 管理和控制D. 汇编和执行(2): A. 软件和硬件 B. 主机和外设C. 高级语言和机器语言D. 用户和计算机(3): A. 进程控制块 B. 作业控制块C. 文件控制块D. 设备控制块(4): A. 运行态转换为就绪态 B. 就绪态转换为运行态C. 运行态转换为等待态D. 等待态转换为运行态(5): A. 软盘 B. 硬盘C. CDROMD. 寄存器答案:CDADB3.在计算机系统中,允许多个程序同时进入内存并运行,这种方法称为 D。
A. Spodling技术B. 虚拟存储技术C. 缓冲技术D. 多道程序设计技术4.分时系统追求的目标是 C。
操作系统(进程管理)习题与答案
1、程序在独占处理器的情况下运行时:只要程序执行时的环境和初始条件相同,程序重复执行的结果相同,这称之为()。
A.顺序性B.封闭性C.开放性D.可再现性正确答案:D2、程序在独占处理器的情况下运行时,将会体现出顺序性的执行特征,这是指()。
A.程序在封闭环境下运行并独占计算机的所有资源B.程序严格按照源码编辑、源程序编译、目标程序链接和可执行程序运行的过程来执行处理C.处理机的操作,严格按照规定顺序执行D.程序的执行严格按照其代码排列先后次序而顺序执行正确答案:C3、程序在独占处理器的情况下运行时将会体现出封闭性的特征。
关于这里的封闭性的理解或描述,下列不正确的选项是()。
A.程序在封闭环境下运行并独占计算机的所有资源B.程序的执行结果不受外界因素的影响C.程序的执行相对封闭,但受到并发协作进程的制约D.只有当前运行的程序才能改变计算机系统资源的状态正确答案:C4、如果没有进程控制块和进程的概念以及相应的操作系统支撑机制,程序在并发执行的情况下,将会体现出如下除选项()之外的各项特征。
A.间断性(即“执行—暂停执行—执行”的执行活动规律)B.顺序性(指处理机的操作,严格按照规定顺序执行)C.非封闭性(程序运行受到其它并发程序的影响)D.程序并发执行计算结果的不可再现性正确答案:B5、进程是对并发程序的描述机制,是程序的运行过程,由()所组成。
A.程序段和数据段B.程序段、数据段和进程控制块C.进程控制块、本进程区表、系统区表、文件描述符表和文件打开表D.程序上下文和寄存器上下文正确答案:B6、现代操作系统中,()是系统实施内存资源分配和管理的一个独立实体。
A.管程B.程序C.进程D.线程正确答案:C7、与程序相比,进程是一个动态的概念,具有一定的生命周期,并支持多道程序的并发执行。
关于并发的最准确的说法是()。
A.多道程序同时进入内存,并在宏观上(即一段时间内)同时运行B.多道程序同时存放在外存储器上,并形成了作业后备队列C.多道程序同时进入内存,并在微观观上(即一个时刻点上)同时运行D.多道程序共享内存,并分别在多个处理器上同时运行正确答案:A8、()存放了进程标识符、进程运行的当前状态、程序和数据的地址以及关于该程序运行时的CPU环境信息。
现代操作系统课后习题答案
第二章进程管理第一部分教材习题(P81)3、为什么程序并发执行会产生间断性特征?(P36)4、程序并发执行,为何会失去封闭性和可再现性?(P37)【解】程序在并发执行时,是多个程序共享系统中的各种资源,因而这些资源的状态将由多个程序来改变,致使程序的运行已失去了封闭性。
同时由于失去了封闭性,也将导致其再失去可再现性。
程序在并发执行时,由于失去了封闭性,程序经过多次执行后,其计算机结果已与并发程序的执行速度有关,从而使程序的执行失去了可再现性。
5、在操作系统中为什么要引入进程概念?(P37)它会产生什么样的影响?【解】在操作系统中引入进程的概念,是为了实现多个程序的并发执行。
传统的程序不能与其他程序并发执行,只有在为之创建进程后,才能与其他程序(进程)并发执行。
这是因为并发执行的程序(即进程)是“停停走走”地执行,只有在为它创建进程后,在它停下时,方能将其现场信息保存在它的PCB中,待下次被调度执行是,再从PCB中恢复CPU现场并继续执行,而传统的程序却无法满足上述要求。
建立进程所带来的好处是使多个程序能并发执行,这极提高了资源利用率和系统吞吐量。
但管理进程也需付出一定的代价,包括进程控制块及协调各运行机构所占用的存空间开销,以及为进行进程间的切换、同步及通信等所付出的时间开销。
6、试从动态性、并发性和独立性上比较进程和程序?(P37)【解】(1)动态性:进程既然是进程实体的执行过程,因此,动态性是进程最基本的特性。
动态性还表现为:“它由创建而产生,由调度而执行,因得不到资源而暂停执行,以及由撤消而消亡”。
可见,进程有一定的生命期。
而程序只是一组有序指令的集合,并存放在某种介质上,本身并无运动的含义,因此,程序是个静态实体。
(2)并发性:所谓进程的并发,指的是多个进程实体,同存于存中,能在一段时间同时运行。
并发性是进程的重要特征,同时也成为OS的重要特征。
引入进程的目的也正是为了使其程序能和其它进程的程序并发执行,而程序是无法并发执行的。
进程管理习题及答案
进度管理习题答案一.选择题1.在进度管理中,当A. 进度被进度调动程序选中C.等候的事件发生D 时进度从堵塞状态变成就绪状态B .等候某一事件.时间片用完.答: C2.分派到必需的资源并获取办理机时的进度状态是。
A.就绪状态B.履行状态C.堵塞状态D.取消状态答: B3.P、V操作是。
A.两条初级进度通讯原语B.两组不一样的机器指令C.两条系统调用命令D.两条高级进度通讯原语答: A4.对进度的管理和控制使用。
A.指令B.原语C.信号量D.信箱通讯答: B5.进度的并发履行是指若干个进度。
A.同时履行B.在履行的时间上是重叠的C.在履行的时间上是不行重叠的D.共享系统资源答: B6.若 P、V 操作的信号量A.0个B.1个C S 初值为. 2个2,目前值为-D.3个1,则表示有等候进度。
答: B7.进度的三个基本状态在必定条件下能够互相转变,进度由就绪状态变成运转状态的条件是①;由运转状态变成堵塞状态的条件是②。
A.时间片用完B.等候某事件发生C.等候的某事件己发生 D .被进度调动程序选中答,① D ②B8.以下的进度状态变化中,变化是不行能发生的。
A.运转一就绪B.运转一等候C.等候一运转D.等候一就绪答: C9.一个运转的进度用完了分派给它的时间片后,它的状态变成。
A.就绪B.等候C.运转D.由用户自己确立答: A10.用 P、 V 操作管理临界区时,信号量的初值应定义为。
A.一1 B.0C.1D.随意值答: C11.用 V 操作唤醒一个等候进度时,被唤醒进度的状态变成.A.等候B.就绪C.运转D.达成答: B12.进度间的同步是指进度间在逻辑上的互相关系。
A.联接B.限制 C.持续D.调用答: B13.是一种只好进行P 操作和 V 操作的特别变量。
A.调动B.进度C.同步D.信号量答: D14.下边对进度的描绘中,错误的选项是。
A.进度是动向的观点B.进度履行需要办理机C.进度是有生命期的D.进度是指令的会合答: D15.下边的表达中正确的选项是。
操作系统第2章(进程和线程的管理习题及解答)
第2章进程和线程的管理习题及解答例题解析例2.2.1 试说明进程和程序之间的区别和联系。
解进程和程序是既有区别又有联系的两个概念。
(1)进程是动态的,程序是静态的。
程序是一组有序的指令集合,是一个静态的概念;进程则是程序及其数据在计算机上的一次执行,是一个动态的集合。
离开了程序,进程就失去了存在的意义,但同一程序在计算机上的每次运行将构成不同的进程。
程序可看作是电影的胶片,进程可以看作电影院放电影的过程。
(2)一个进程可以执行多个程序,如同一个电影院的一场电影可放映多部影片。
(3)一个程序可被多个进程执行,如同多个影院同时利用一个电影的胶片放映同一部电影。
(4)程序可以长期保存,进程只能存在于一段时间。
程序是永久存在的,而进程有从被创建到消亡的生命周期。
例2.2.2 举例说明多道程序系统失去了封闭性和再现性。
解例如,有两个循环程序A和B,共享一个变量N。
程序A每执行一次时,都要做N:=N+1操作;程序B则每执行一次时,都要执行print(N)操作,然后再将N的值置成“0”。
程序A和B在多道程序系统中同时运行。
假定某时刻变量N的值为n,可能出现下述三种情况:(1)N:=N+1 在print(N)和N:=0之前,此时得到N值变化过程为n+1、n+1、0;(2)N:=N+1 在print(N)和N:=0之后,此时得到N值变化过程为n 、 0 、1;(3)N:=N+1 在print(N)之后和N:=0之前,此时得到N值变化过程为n、n+1、0。
所以,在A、B程序多次执行过程中,虽然其每次执行时的环境和初始条件都相同,但每次得到的结果却不一定相同。
例 2.2.3 为什么将进程划分成执行、就绪和阻塞三个基本状态?解根据多道程序执行的特点,进程的运行是走走停停的。
因此进程的初级状态应该是执行和等待状态。
处于执行状态的进程占用处理机执行程序,处于等待状态的进程正在等待处理机或者等待其它某种事件的发生。
但是,当处理机空闲时,并不是所有处于等待状态的进程都能放到处理机上执行,有的进程即使分配给它处理机,它也不能执行,因为它的执行的条件没有得到满足。
第二章-操作系统进程(练习题答案)教学教材
第二章进程管理1.操作系统主要是对计算机系统全部 (1) 进行管理,以方便用户、提高计算机使用效率的一种系统软件。
它的主要功能有:处理机管理、存储管理、文件管理、 (2) 管理和设备管理等。
Windows和Unix是最常用的两类操作系统。
前者是一个具有图形界面的窗口式的 (3) 系统软件,后者是一个基本上采用 (4) 语言编制而成的的系统软件。
在 (5) 操作系统控制下,计算机能及时处理由过程控制反馈的信息并作出响应。
供选答案:(1): A. 应用软件 B. 系统软硬件C. 资源D. 设备(2): A. 数据 B. 作业C. 中断D. I/O(3): A. 分时 B. 多任务C. 多用户D. 实时(4): A. PASCAL B. 宏C. 汇编D. C(5): A. 网络 B. 分时C. 批处理D. 实时答案:CBBDD2.操作系统是对计算机资源进行的 (1) 系统软件,是 (2) 的接口。
在处理机管理中,进程是一个重要的概念,它由程序块、 (3) 和数据块三部分组成,它有3种基本状态,不可能发生的状态转换是 (4) 。
虚拟存储器的作用是允许程序直接访问比内存更大的地址空间,它通常使用 (5) 作为它的一个主要组成部分。
供选答案:(1): A. 输入和输出 B. 键盘操作C. 管理和控制D. 汇编和执行(2): A. 软件和硬件 B. 主机和外设C. 高级语言和机器语言D. 用户和计算机(3): A. 进程控制块 B. 作业控制块C. 文件控制块D. 设备控制块(4): A. 运行态转换为就绪态 B. 就绪态转换为运行态C. 运行态转换为等待态D. 等待态转换为运行态(5): A. 软盘 B. 硬盘C. CDROMD. 寄存器答案:CDADB3.在计算机系统中,允许多个程序同时进入内存并运行,这种方法称为 D。
A. Spodling技术B. 虚拟存储技术C. 缓冲技术D. 多道程序设计技术4.分时系统追求的目标是 C。
(完整版)第二章进程管理习题和答案
--一、填空题1. 进程是一个程序对某个数据集的一次执行过程。
进程从结构上讲,包括程序、数据和PCB三部分。
2. 进程是一个动态的概念,程序是一个静态的概念。
3. 操作系统中,可以并行工作的基本单位是进程,它是由程序、数据集和PCB组成。
4. 进程存在的唯一标志是PCB的存在。
当系统创建一个进程时,系统为其建立一个PCB,当进程被撤销时系统就将其收回。
5. 进程有三种基本状态,即运行状态、就绪状态、阻塞状态。
当进程由(1)变换到(2)或(3)时,就会立即引起重新调度。
6. 在操作系统中,不可中断执行的操作称为原语。
7. 并发进程之间的基本关系是同步或互斥。
其中互斥是指进程之间的一种间接关系。
8. 临界资源是指一段时间只允许一个进程使用的资源,而临界区是指进程中访问临界资源的程序代码。
9. P,V操作原语是在信号量上操作的。
10. 信号量的物理意义是:当信号量的值大于零时,表示可用资源的数量;当信号量值小于零时,其绝对值为等待使用信号量所代表资源的进程的数量。
11. 有n个进程共享同一个临界区,若使用信号量机制实现对临界资源的互斥访问,则信号量值的变化范围是1~-(n-1)。
12.如果系统中有n个进程,则在等待(阻塞)队列中进程的个数最多可为个n。
13. 如果信号量的当前值为-5,则表示系统中在该信号量上有5 个等待进程。
14.某程序运行时经常需打印中间结果。
计算时,该进程处于用户态,打印时处于系统态,打印结束时进程处于用户态。
(指系统状态)、15. 在操作系统中引入线程的主要目的是减少程序并发执行时的时空开销,使OS更具有并发性。
16. 如果一个程序能为多个进程同时共享执行,那么它应该以纯码形式编写,即该程序是可重人码程序,这种程序的特点是:在它执行过程中自身不可修改。
17. 中断优先级是由硬件规定的,若要调整中断的响应次序可通过系统调用。
18. 进程初建时处于就绪态,运行时因为时钟中断而处于就绪态,因等待事件或资源而处于阻塞态。
操作系统期中练习题第2章进程管理解答
第2章进程管理解答一、单项选择题[解答]1.d。
.2.c。
进程的实体由PCB、程序与数据3部分组成。
3.b。
4.b。
允许3个进程同时进入互斥段的互斥信号量初值设为3。
5.d。
并发进程之间可能存在同步与互斥关系,也可能不存在任何关系。
6.a。
7.c。
由于互斥信号量的初值是1,则极端情况是一个进程访问临界资源而其余N-1个进程处于等待状态,即信号量的值为-(N-1)8.d。
当资源总数为4,并发进程为2,每个进程的最大需求是3时,可能够出现每个进程都占用2个资源而又申请第3个资源的死锁状态。
9.a。
先来先服务、响应比高者优先和均衡调度算法都属于作业调度算法。
10.b。
进程从执行态变成就绪态通常有两种情况:(1)分时操作系统下时间片到;(2)剥夺式进程调度方式下有更高优先级的进程进入就绪状态。
11.b。
12.c。
13.d。
如果存在就绪进程且处理机空闲时,进程调度程序就必然选中一个就绪进程使之投入运行;所以d错误。
14.d。
a~c概念都不完全。
15.d。
a~c都会引进操作系统选择新进程运行,仅d不会。
16.a 17. a 18。
d 19。
d 20。
b 21。
a 22。
d 23。
d 24。
a 25.b 26.c 27。
b 28。
d 29。
c 30。
B二、填空题[解答]1.线性表链接表(或队列) 2.删除剥夺3.因为PCB是进程存在的唯一标志,故填PCB 4.资源竞、进程推进顺序不当5.非剥夺条件逐次请求条件环路条件 6.就绪运行7.进程中访问临界资源的那段程序代码8.当出现死琐的极端情况时,处于等待的进程数为n,故填n9.可用资源的数目,因请求该资源而被阻塞的进程数目10.剥夺式调度总是将优先级高的进程(不包括等待队列上的进程)投入运行,故填“剥夺式”11.P V12.当信号量知小于零时,其绝对值为被阻塞的进程个数,故填413.互斥、同步、条件变量14. —2~2 15.临界区(或互斥段) 16.程序数据 PCB. 17.银行家算法 18.同步 19.运行态进程调度 20.创建消亡21.资源分配独立运行调度 22.临界区 P操作 V操作23.引起进程调度的原因进程调度算法的选择就绪队列的组织.三、问答题1.操作系统中为什么要引入进程的概念?为了实现并发进程间的合作和协调工作,以及保证系统的安全,操作系统在进程管理方面应做哪些工作?[解答]在多道程序环境下,程序的并发执行代替了程序的顺序执行,并发执行破坏了程序的封闭性和可再现性,使得程序和计算不再一一对应。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
进程管理习题1现代操作系统中为什么要引入“进程”概念它与程序有什么区别答:之所以要引入进程的概念,是因为在一些可以并发的程序段之间,存在着某种相互制约的关系,每个程序段的执行不仅要受到其它程序执行的制约,而且还要动态地依赖系统资源的分配情况,因此每个可以并发执行的程序段就会因外界条件的限制而不能运行,被迫处于阻塞状态。
仅用程序的概念无法表示程序的走走停停以及程序运行过程中对资源的竞争现象,因此需要采用一种动态的概念描述并发程序这种走走停停的现象,这就产生了进程的概念。
进程和程序的区别:(1)进程是程序的执行过程,是动态的过程,属于一种动态概念。
程序是一组有序静态指令和数据的集合,用来指示处理机的操作,是一种静态概念。
(2)从结构上看,每个进程实体是由程序段和相应的数据段两部分构成,并且进程结构中还要包含PCB,即进程控制块。
(3)一个进程可以涉及到一个或几个程序的执行;反之,同一程序可以对应多个进程,即同一个程序段可以在不同数据集合上运行,可以构成不同的进程。
(4)进程能真实地描述并发执行的过程,而程序仅仅是静态指令堆积的序列。
(5)进程有可创建其他进程的功能,而一般的程序不具有创建其它程序的功能。
(6)每一个程序都是在一个进程现场中运行的。
2叙述进程的并发性和制约性。
答:并发性是进程的重要特征。
即多道程序中多个进程同时向前推进的过程,没个进程总是与其它进程并发地执行的。
进程的制约性是指一个进程的运行受到另一进程的制约。
比如有的进程可能正在等待另一进程的计算结果而无法运行,或者进程所需的资源被别的进程占有而无法运行。
3进程的含义是什么如何构造和描述进程答:进程是程序的一次执行。
进程由“进程控制块+程序+数据”构成,用进程控制块描述进程。
4有三个并发进程,R负责从输入设备读入信息并传送给M,M将信息加工并传送给P,P将打印输出,写出下列条件下的并发程序。
(1) 双缓冲区,每个区大小为K。
(2) 单缓冲区,其大小为K。
答:(1)双缓冲区,每个区大小为K,信号量初值如下:mutexR=mutexP=1;emptyR=emptyP=k;fullR= fullP=0;变量的初值如下:inR=outR=inP=outP=0;用类Pascal编写程序如下:varmutexR,mutexP,emptyR,fullR,emptyP,fullP: semaphere; inR,outR,inP,outP: integer;buffer: array 0..k-1 of item;bufferP: array 0..k-1 of item;procedure Rbeginwhile true dobegin输入数据data1;P (emptyR);P (mutexR);bufferR(inR):=data1;inR:=(inR+1) mod (k);V(mutexR);V(fullR);endend;procedure Mbeginwhile true dobeginP(fullR);P(mutexR);data2:=bufferR(outR);outR:=(outR+1)mod (k);V(mutexR);V(emptyR);对data2进行加工;P(emptyP);P(mutexP);bufferP(inP):=data2;inP:=(inP+1)mod (k);V(mutexP);V(fullP);endend;procedure P:beginwhile true dobeginP(fullP);P(mutexP)data3:=bufferP(outP);outP:=(outP+1)mod(k);V(mutexP);V(emptyP);打印 data3;endend;beginseminitinal,1;,1;,k;,0;,k;,0);inR:=0;outR:=0;inP:=0;outP:=0;cobeginR;M;P;coendend.(2)单缓冲区,大小为kvarempty,full,ok,mutex : semaphere;inR,outR,inP,outP : integer;buffer : array 0..k-1 of item; procedure R:beginwhile true dobegin输入数据 data1;P(empty);P(mutex);buffer(inR):=data1;inR:=(inR+1) mod (k);V(mutex);V(full)endend;procedure M:beginwhile ture dobeginP(full);P(mutex);data2:==buffer(outR);outR:=(outR+1) mod (k);V(mutex);对data2 加工;P(mutex);buffer(inP):=data2;inP:=(inP+1)mod (k);V(mutex);V(ok);endend;proedure P:beginwhile ture dobeginP(ok);P(mutex);data3:=buffer(outP);outP:=(outP+1) mod(k);V(mutex);V(empty);打印data3;end;endbeginseminitial,k;,0;,0;,1);inR:=0;outR:=0;inP:=0;outP:=0;cobeginR;M;P;coendend.5 在生产者与消费者问题的算法中,交换两个V操作的次序会有什么结果交换两P操作的次序呢说明理由。
答:交换两P操作的次序有可能造成死锁。
例如,当无空缓冲区时,如果此时生产者先做互斥操作,即:P(mutex),然后才做同步操作P(empty),由于此时empty=-1造成生产者被阻塞。
当消费者执行到互斥操作P(mutex)时,由于生产者已执行过P(mutex)并未作释放,所以此时mutex=-1,造成消费者也被阻塞,生产者等消费者释放空缓冲区,而消费者则等待生产者释放临界资源的使用权,所以两个进程都无法向前推进而造成死锁。
交换两个V操作的次序不会发生死锁。
6 设有三个进程A、B、C,其中A与B构成一对生产者与消费者(A为生产者,B为消费者),共享一个由n个缓冲块组成的缓冲池;B与C也构成一对生产者与消费者(此时B 为生产者,C为消费者),共享另一个由m个缓冲块组成的缓冲池。
用P、V操作描述它们之间的同步关系。
答:varmutexA,emptyA,fullA,mutexC,emptyC,fullC : semaphere; i,j,a,b : integer;bufferA : array 0..n-1 of itembufferC : array 0..m-1 of item;procedure produceA:生产者进程Abeginwhile ture dobeginProduce next product;P(emptyA);P(mutexA);bufferA(i) :=products;i:=(i+1) mod(n) ;V(mutexA);V(fullA)endendprocedure consumer_procedurerB: 消费者和生产者进程B beginwhile ture dobeginP(fullA);P(mutexA);Goods:=buffer(j);j:=(j+1)mod(n);V(mutexA);V(emptyA);Consume goods and Produce next product C;P(emptyC);P(mutexC);BufferC(a):=product C;a:=(a+1) mod(m);V(mutexC);V(fullC)endend;procedure consumerC ; 消费者C进程beginwhile ture dobeginP(fullC);P(mutexC);Goods:=bufferC(b);b:=(b+1) mod(m);V(mutexC);V(emptyC);Consume product;endend;beginSeminitsal,1;,1; ,n;,m;,0;,0);i:=0;j:=0;a:=0;b:=0;cobeginproduce Aconsumer_procedurerB;consumerCcoendend.7 有一阅览室,共有100个座位。
读者进入时必须先在一张登记表上登记,该表为每一座位列一表目,包括座号和读者姓名。
读者离开时要消掉登记内容。
试用P、V操作描述读者进程的同步结构。
答:varmutex : semaphere;信号量,用于互斥full : semaphere; 信号量,用于同步table : array 0..n-1 of item; 登记表procedure reader; 读者进程beginP(full);P(mutex);Register_name(table);V(mutex);Reading;P(mutex);Delet_name(table);V(mutex);V(full)end;beginseminitsal,1; ,100); 初始化cobeginreader;reader;...coendend.8.引入线程的目的是什么答:引入线程的目的是提高程序执行的并行度。
9 引入管程的目的是什么答:引入管程的目的把分散的临界区集中起来管理,为每个可共享的资源设立一个专门的机构来统一管理各进程对该共享资源的访问。
这样使互斥操作更安全,既便于系统管理共享资源,又能保证互斥访问。
10 用管程实现读者与写者关系。
管程部分描述如下:monitor rw;condition wrt;var readcount: integer;procedure entry read _start( );beginreadcount:=readcount+1;end;procedure entry read_finish( );beginreadcount:=readcount-1;if readcount=0 then singal(wrt)end;procedure entry write( );beginif readcount>0 then wait(wrt);perform writing;endbeginreadcount:= 0endend;主程序部分:procedure writter:beginrepeat( );until false;endprocedure reader:beginrepeat( );perform reading;( );until false;endcobeginreader;writter;coend.11 何谓进程通信答:进程通信是指进程之间的信息交换。