1、考试大纲考试大纲 二、二、进程管理进程管理(一)进程与线程1.进程概念2.进程的状态与转换3.进程控制4.进程组织5.进程通信共享存储系统;消息传递系统;管道通信。6.线程概念与多线程模型(二)处理机调度1.调度的基本概念2.调度时机、切换与过程3.调度的基本准则4.调度方式5.典型调度算法先来先服务调度算法;短作业(短任务、短进程、短线程)优先调度算法;时间片轮转调度算法;优先级调度算法;高响应比优先调度算法;多级反馈队列调度算法。(三)进程同步1.进程同步的基本概念2.实现临界区互斥的基本方法软件实现方法;硬件实现方法。3.信号量4.管程5.经典同步问题生产者-消费者问题;读者-写者问题;
2、哲学家进餐问题。(四)死锁1.死锁的概念2.死锁处理策略3.死锁预防4.死锁避免系统安全状态:银行家算法。5.死锁检测和解除(一)(一)进程与线程进程与线程 u进程概念进程概念(1)进程是程序的一次执行。进程是程序的一次执行。(2)(2)进程是一个程序及其数据在处理机上顺序执行时所发进程是一个程序及其数据在处理机上顺序执行时所发 生的活动。生的活动。(3)进程是程序在一个数据集合上运行的过程,它是系统进程是程序在一个数据集合上运行的过程,它是系统 进行资源分配和调度的一个独立单位。进行资源分配和调度的一个独立单位。(一)(一)进程与线程进程与线程u进程的状态与转换进程的状态与转换 就绪阻塞执行
3、时间片完进程调度I/O完成I/O请求挂起?挂起?(一)(一)进程与线程进程与线程u进程控制进程控制u进程的创建进程的创建 申请空白申请空白PCB 分配资源分配资源-初始化初始化PCB 将新进程插入就绪队列将新进程插入就绪队列u进程的终止进程的终止 操作对象:操作对象:PCB、资源、子孙进程、资源、子孙进程u进程的阻塞和唤醒进程的阻塞和唤醒 当一个进程期待的某一事件尚未出现时,该进程调用阻塞原语当一个进程期待的某一事件尚未出现时,该进程调用阻塞原语阻塞阻塞自己自己;对处于阻塞状态的进程,期待事件发生时,;对处于阻塞状态的进程,期待事件发生时,由发现者用唤醒由发现者用唤醒原语唤醒原语唤醒,置于就绪
4、状态。一般唤醒者和被唤醒者是,置于就绪状态。一般唤醒者和被唤醒者是合作的并发进合作的并发进程程。(一)(一)进程与线程进程与线程u进程组织进程组织为了描述和记录进程的运行变化过程,并使之能正确运行,系统为了描述和记录进程的运行变化过程,并使之能正确运行,系统为每为每个进程建立一个进程控制块个进程建立一个进程控制块(PCB)。从结构上看,每个进程由程序段。从结构上看,每个进程由程序段、数据段和进程控制块三部分组成。、数据段和进程控制块三部分组成。PCB的组织方式(根据状态):链表(静态),索引的组织方式(根据状态):链表(静态),索引?进程优先级进程优先级?家族关系家族关系?占有资源清单占有资源
5、清单?CPUCPU现场保护区现场保护区?进程标识符进程标识符?进程当前状态进程当前状态?进程队列指针进程队列指针?程序和数据地址程序和数据地址(一)(一)进程与线程进程与线程u进程通信进程通信 1.共享存储器系统共享存储器系统2.相互通信的进程相互通信的进程共享某些数据结构共享某些数据结构或或共享存储区共享存储区3.互斥访问问题互斥访问问题4.2。消息传递系统。消息传递系统5.由消息头和消息正文组成。发送原语由消息头和消息正文组成。发送原语Send,接收原语,接收原语Receive。6.直接通信(同步问题)、间接通信(媒介和关系)直接通信(同步问题)、间接通信(媒介和关系)7.3。管道。管道(
6、Pipe)通信通信8.用于连接一个读进程和一个写进程以实现他们之间通信的一个共用于连接一个读进程和一个写进程以实现他们之间通信的一个共享文件,又名享文件,又名pipe文件。文件。9.读写同步问题读写同步问题发送进程发送进程接收进程接收进程字符流方式写入读出字符流方式写入读出先进先出顺序先进先出顺序(一)(一)进程与线程进程与线程u线程概念与多线程模型线程概念与多线程模型 有时称轻量级进程有时称轻量级进程进程中的一个运行实体进程中的一个运行实体是一个是一个CPU调度单位调度单位资源的拥有者还是进程或称任务资源的拥有者还是进程或称任务将原来进程的将原来进程的两个属性两个属性分开处理分开处理与进程比
7、较:与进程比较:系统开销系统开销轻型实体轻型实体调度调度独立调度和分派的基本单位。独立调度和分派的基本单位。并发性并发性可并发执行。可并发执行。拥有资源拥有资源共享进程资源。共享进程资源。(一)(一)进程与线程进程与线程(二)处理机调度(二)处理机调度 u调度的基本概念调度的基本概念 在多道程序系统中,一个作业被提交后,必须经过处理机调度后在多道程序系统中,一个作业被提交后,必须经过处理机调度后,方能因获得处理机而执行。,方能因获得处理机而执行。对于批量型作业而言,通常需要经历作业调度(对于批量型作业而言,通常需要经历作业调度(高级调度高级调度)和进)和进程调度(程调度(低级调度低级调度)两个
8、过程后,方能获得处理机。)两个过程后,方能获得处理机。对于终端型作业,则通常只须经过进程调度。在较完善的操作系对于终端型作业,则通常只须经过进程调度。在较完善的操作系统中,往往还设置了统中,往往还设置了中级调度中级调度。(二)处理机调度(二)处理机调度u调度时机、切换与过程调度时机、切换与过程调度时机主要有:调度时机主要有:(1)进程状态转换的时刻:进程终止、进程睡眠;进程状态转换的时刻:进程终止、进程睡眠;(2)当前进程的时间片用完时当前进程的时间片用完时(3)进程从中断、异常及系统调用返回到用户态时进程从中断、异常及系统调用返回到用户态时切换如下几步:(类似于中断切换的过程)切换如下几步:
9、(类似于中断切换的过程)(1)首先要把当前任务的首先要把当前任务的CPU寄存器的值保存寄存器的值保存(2)将准备就绪的最高级任务的处理器寄存器复制到自己的任务将准备就绪的最高级任务的处理器寄存器复制到自己的任务堆栈。堆栈。(3)然后将进入就绪状态的最高优先级的任务的寄存器值从堆栈然后将进入就绪状态的最高优先级的任务的寄存器值从堆栈中恢复到寄存器中。中恢复到寄存器中。(二)处理机调度(二)处理机调度u面向用户的准则面向用户的准则-为了满足用户需求为了满足用户需求周转周期短;(常用来评价批处理系统)周转周期短;(常用来评价批处理系统)响应时间快;(常用来评价分时系统)响应时间快;(常用来评价分时系
10、统)截止时间的保证;(常用来评价实时系统)截止时间的保证;(常用来评价实时系统)先后权准则;(批处理、实时、分时系统中都可采用)先后权准则;(批处理、实时、分时系统中都可采用)u面向系统的准则面向系统的准则-为了满足系统需求为了满足系统需求系统吞吐量高;(常用来评价批处理系统)系统吞吐量高;(常用来评价批处理系统)处理机利用率高;(在大中型设备中常考虑)处理机利用率高;(在大中型设备中常考虑)各类资源平衡利用;(在大中型设备中常考虑)各类资源平衡利用;(在大中型设备中常考虑)周转时间、带权周转时间、响应时间、吞吐量周转时间、带权周转时间、响应时间、吞吐量调调度度的的基基本本准准则则 (二)处理
11、机调度(二)处理机调度非抢占方式非抢占方式 指当某一进程正在处理机上执行时,即使有某个更为重要或紧迫指当某一进程正在处理机上执行时,即使有某个更为重要或紧迫的进程进入就绪队列,的进程进入就绪队列,仍然让正在执行的进程继续执行,直到该仍然让正在执行的进程继续执行,直到该进程完成或发生某种事件而进入完成或阻塞状态时进程完成或发生某种事件而进入完成或阻塞状态时,才把处理机,才把处理机分配给更为重要或紧迫的进程。非剥夺方式又称非抢占方式、不分配给更为重要或紧迫的进程。非剥夺方式又称非抢占方式、不可剥夺方式。可剥夺方式。抢占方式抢占方式 指当一个进程正在处理机上执行时,若有某个更为重要或紧指当一个进程正
12、在处理机上执行时,若有某个更为重要或紧迫的进程需要使用处理机,则迫的进程需要使用处理机,则立即暂停正在执行的进程,将处理立即暂停正在执行的进程,将处理机分配给这个更重要或紧迫的进程机分配给这个更重要或紧迫的进程。剥夺方式又称抢占方式、可。剥夺方式又称抢占方式、可剥夺方式。剥夺方式。调调度度方方式式 典型调度算法典型调度算法 u先来先服务调度算法先来先服务调度算法 FCFS调度算法有利于调度算法有利于CPU繁忙型的作业,而不利于繁忙型的作业,而不利于I/O繁忙型的作业繁忙型的作业典型调度算法典型调度算法 u短作业(短任务、短进程、短线程)优先调度算法短作业(短任务、短进程、短线程)优先调度算法
13、优先短作业运行,对长作业不利优先短作业运行,对长作业不利Process Arrival Time 运行时间运行时间 P1 0.0 7 P2 2.0 4 P3 4.0 1 P4 5.0 4SJF(非抢占式非抢占式)SJF(抢占式抢占式)P1P3P242110P457P2P116P1P3P273160P4812典型调度算法典型调度算法 u时间片轮转调度算法时间片轮转调度算法 CPU就就 绪绪 队队 列列系统将所有的就绪进程按先来先服务的原则,排成一个队系统将所有的就绪进程按先来先服务的原则,排成一个队列,每次调度时,把列,每次调度时,把CPU分配给队首进程,并令其执行一分配给队首进程,并令其执行一
14、个时间片。个时间片。时间片时间片的大小从几毫秒的大小从几毫秒 到几百毫秒。到几百毫秒。典型调度算法典型调度算法 u优先级调度算法优先级调度算法1)静态优先权)静态优先权 在创建进程时确定的,且在进程的整个运行期间保持不变。在创建进程时确定的,且在进程的整个运行期间保持不变。2)动态优先权)动态优先权 在创建进程时所赋予的优先权,是可以随进程的推进或随其等待时在创建进程时所赋予的优先权,是可以随进程的推进或随其等待时间的增加而改变的,以便获得更好的调度性能。间的增加而改变的,以便获得更好的调度性能。3)优先级依据)优先级依据 进程类型。进程对资源的需求。进程类型。进程对资源的需求。用户要求。用户
15、要求。典型调度算法典型调度算法 u高响应比优先调度算法高响应比优先调度算法 该算法既照顾了短作业,又考虑了作业到达的先后次序。优先权动态变化中。该算法既照顾了短作业,又考虑了作业到达的先后次序。优先权动态变化中。典型调度算法典型调度算法 u多级反馈队列调度算法多级反馈队列调度算法(三)进程同步(三)进程同步 u 进程同步的基本概念进程同步的基本概念 并发进程之间两种形式的制约关系:并发进程之间两种形式的制约关系:a.间接相互制约关系:间接相互制约关系:共享着某种系统资共享着某种系统资源。源。例,例,A和和B共享打印机。共享打印机。b.直接相互制约关系:主要源于进程间合直接相互制约关系:主要源于
16、进程间合作。作。Q:临界资源:临界资源AB、CD、EF:临界区:临界区(三)进程同步(三)进程同步 u实现临界区互斥的基本方法实现临界区互斥的基本方法 软件方法软件方法P1:repeat flag1=true;ture=2;while(flag2 and turn=2)do no_op;临界区临界区 flag1=false;剩余区剩余区 until false;P2:repeat flag2=true;ture=1;while(flag1 and turn=1)do no_op;临界区临界区 flag2=false;剩余区剩余区 until false;硬件方法硬件方法:Test-and-Se
17、t指令指令bool TS(lock:bool):bool TS=lock;lock=true;P:repeat while TS(lock)do skip;临界区临界区 lock=false;剩余区剩余区Until false;(三)进程同步(三)进程同步u信号量信号量 1)整型信号量)整型信号量2)记录型信号量)记录型信号量procedure wait(S)var S:semaphore;begin S.value =S.value-1;if S.value0 then block(S,L)end procedure signal(S)var S:semaphore;begin S.valu
18、e =S.value+1;if S.value0 then wakeup(S,L);end 整形整形变量变量S0 当前可用资源的数目当前可用资源的数目=0 阻塞临界阻塞临界0 因请求该类资源而被因请求该类资源而被阻塞的进程数目阻塞的进程数目(三)进程同步(三)进程同步信号量解决互斥问题信号量解决互斥问题 火车上的卫生间,门锁就是信号量,拨到红色即火车上的卫生间,门锁就是信号量,拨到红色即“有人有人”,绿,绿“无人无人”。(三)进程同步(三)进程同步信号量解决同步问题信号量解决同步问题 设置信号量设置信号量empty=1;full=0;(三)进程同步(三)进程同步u管程管程:一种同步机制:一种同
19、步机制 指关于共享资源的数据及在其上操指关于共享资源的数据及在其上操作的一组过程作的一组过程,或共享数据结构及其规定或共享数据结构及其规定的所有操作。的所有操作。信号量机制的同步操作信号量机制的同步操作分散在各进程中分散在各进程中,使用不当就可能导致各进程死锁。,使用不当就可能导致各进程死锁。如果某进程要进入临界区,必须得到管程如果某进程要进入临界区,必须得到管程的准许才能进入,而这个过程是通过个过程的准许才能进入,而这个过程是通过个过程来实现的,与信号量相比,增加了额外的处来实现的,与信号量相比,增加了额外的处理时间。理时间。使用信号量的效率要高些。使用信号量的效率要高些。(三)进程同步(三
20、)进程同步u经典同步问题经典同步问题(生产者(生产者消费者问题)消费者问题)Var mutex,empty,full:semaphore =1,n,0;buffer:array0,n-1 of item;in,out:integer =0,0;begin parbegin proceducer:begin repeat producer an item nextp;wait(empty);wait(mutex);buffer(in)=nextp;in =(in+1)mod n;signal(mutex);signal(full);until false;end consumer:begin r
21、epeat wait(full);wait(mutex);nextc =buffer(out);out =(out+1)mod n;signal(mutex);signal(empty);consumer the item in nextc;until false;end parend end(三)进程同步(三)进程同步u经典同步问题经典同步问题(读者(读者写者问题)写者问题)Reader:begin repeat wait(rmutex);if readcount=0 then wait(wmutex);Readcount =Readcount+1;signal(rmutex);perfor
22、m read operation;wait(rmutex);readcount =readcount-1;if readcount=0 then signal(wmutex);signal(rmutex);until false;end Var rmutex,wmutex:semaphore =1,1;Readcount:integer =0;begin parbegin writer:begin repeat wait(wmutex);perform write operation;signal(wmutex);until false;end parend end(三)进程同步(三)进程同步
23、u经典同步问题经典同步问题(哲学家进餐问题)(哲学家进餐问题)Var chopstick:array0,4 of semaphore;repeat wait(chopsticki);wait(chopstick(i+1)mod 5);eat;signal(chopsticki);signal(chopstick(i+1)mod 5);think;until false;(四)(四)死锁死锁 u死锁的概念死锁的概念 死锁简单的定义:死锁简单的定义:死锁就是两个或两个以上的进程等候着一个永远不会发生的死锁就是两个或两个以上的进程等候着一个永远不会发生的事件时所处的一种系统状态。事件时所处的一种系统
24、状态。较正式的定义:较正式的定义:两个或两个以上并发进程,如果每个进程持有某种资源,而两个或两个以上并发进程,如果每个进程持有某种资源,而又等待着别的进程释放它或它们现在保持着的资源,否则就又等待着别的进程释放它或它们现在保持着的资源,否则就不能向前推进。此时,每个进程都占用了一定的资源,但又不能向前推进。此时,每个进程都占用了一定的资源,但又都不能向前推进。这种现象称为死锁。都不能向前推进。这种现象称为死锁。(四)(四)死锁死锁u死锁处理策略死锁处理策略 为保证系统中诸进程的正常运行,应事先采取必为保证系统中诸进程的正常运行,应事先采取必要的措施,来要的措施,来预防死锁预防死锁发生。发生。在
25、资源的动态分配过程在资源的动态分配过程中,用某种方法去中,用某种方法去避免死锁避免死锁。在系统中已经出现死锁在系统中已经出现死锁后,则应及时后,则应及时检测死锁检测死锁的发生,并采取适当措施来的发生,并采取适当措施来解解除死锁除死锁。(四)(四)死锁死锁u死锁预防死锁预防 u破坏破坏“不可剥夺不可剥夺”条件条件 申请不到即放弃,反复操作申请不到即放弃,反复操作u破坏破坏“请求和保持请求和保持”条件条件 一次性申请,信号量集一次性申请,信号量集u破坏破坏“循环等待循环等待”条件条件例如:1,2,3,10P1:申请1申请3申请9P2:申请1申请2申请5P3 P10(四)(四)死锁死锁u死锁避免死锁
26、避免 安全状态与不安全状态安全状态与不安全状态在在T0时刻系统是安全的,因为这时存在时刻系统是安全的,因为这时存在一个安全序列一个安全序列,即只要系统,即只要系统按此进程序列分配资源,就能使每个进按此进程序列分配资源,就能使每个进程都顺利完成。程都顺利完成。(四)(四)死锁死锁5 processes P0 through P4;3 resource types:A(10 instances),B(5 instances),C(7 instances).Snapshot at time T0:Max Allocation Need Available A B C A B C A B C A B
27、CP07 5 3 0 1 0 7 4 3 3 3 2P13 2 2 2 0 0 1 2 2P29 0 2 3 0 2 6 0 0P32 2 2 2 1 1 0 1 1P44 3 3 0 0 2 4 3 1The system is in a safe state since the sequence satisfies safety criteria.银行家算法银行家算法(四)(四)死锁死锁Snapshot at time T0:Max Allocation Need Available A B C A B C A B C A B CP07 5 3 0 1 0 7 4 3 3 3 2P13 2
28、 2 2 0 0 1 2 2P2 9 0 2 3 0 2 6 0 0P32 2 2 2 1 1 0 1 1P44 3 3 0 0 2 4 3 1Snapshot at time P1 Request(1,0,2):P1 Request(1,0,2)Max Allocation Need Available A B C A B C A B C A B CP07 5 3 0 1 0 7 4 3 2 3 0P13 2 2 3 0 2 0 2 0P2 9 0 2 3 0 2 6 0 0P32 2 2 2 1 1 0 1 1P44 3 3 0 0 2 4 3 1Executing safety algo
29、rithm shows that sequence satisfies safety requirement.(四)(四)死锁死锁u死锁检测死锁检测 死锁定理死锁定理 如果资源分配图中没有环路,则系统中没有死锁,如果图中存在环路如果资源分配图中没有环路,则系统中没有死锁,如果图中存在环路则系统中可能存在死锁则系统中可能存在死锁.如果每个资源类中只包含一个资源实例,则环路是死锁存在的充分必如果每个资源类中只包含一个资源实例,则环路是死锁存在的充分必要条件要条件.有环有死锁有环有死锁有环无死锁有环无死锁找出及不阻塞又非独立的进程节点,消去其请求边和分配边,使其成为孤立节点。找出及不阻塞又非独立的进
30、程节点,消去其请求边和分配边,使其成为孤立节点。(四)(四)死锁死锁u死锁解除死锁解除重要的是以重要的是以最小的代价最小的代价恢复系统的运行撤消陷于死锁的全部进程恢复系统的运行撤消陷于死锁的全部进程逐个撤消陷于死锁的进程,直到死锁不存在;(最小生成树逐个撤消陷于死锁的进程,直到死锁不存在;(最小生成树)从陷于死锁的进程中逐个强迫放弃所占用的资源,直至死锁从陷于死锁的进程中逐个强迫放弃所占用的资源,直至死锁消失消失例例 题题1、设某类资源有、设某类资源有5个,由个,由3个进程共享,每个进程最多可申请(个进程共享,每个进程最多可申请()个资源而使系统不会死锁)个资源而使系统不会死锁。A 1 B 2
31、 C 3 D 4 2在分时系统中,假设就绪队列中有在分时系统中,假设就绪队列中有10个进程,系统将时间片设为个进程,系统将时间片设为200ms,CPU进行进程切换进行进程切换要花费要花费10ms。则系统开销所占的比率约为(。则系统开销所占的比率约为()A1%B5%C10%D20%3进程从等待状态进入就绪状态可能是由于(进程从等待状态进入就绪状态可能是由于()A 现运行进程运行结束现运行进程运行结束 B 现运行进程执行了现运行进程执行了P操作操作 C 现运行进程执行了现运行进程执行了V操作操作 D 现运行进程时间片用完现运行进程时间片用完 4、通过破坏产生死锁的四个必要条件之一,可以保证不让死锁
32、发生。其中采用资源按顺序申、通过破坏产生死锁的四个必要条件之一,可以保证不让死锁发生。其中采用资源按顺序申请法,是破坏(请法,是破坏()A互斥条件互斥条件 B不可剥夺条件不可剥夺条件 C部分分配条件部分分配条件 D循环等待条件循环等待条件5操作系统中,对信号量操作系统中,对信号量S的的P原语操作定义中,使进程进入相应等待队列等待的条件是(原语操作定义中,使进程进入相应等待队列等待的条件是()AS0 BS=0 CS0 DS!=06计算机操作系统中,若计算机操作系统中,若P、V操作的信号量操作的信号量S初值为初值为2,当前值为,当前值为-1,则表示有(,则表示有()等待进)等待进程程 A0个个 B
33、1个个 C2个个 D3个个7若有一进程拥有若有一进程拥有100个线程,这些线程属于用户级线程,则在系统调度执行时间上占用时个线程,这些线程属于用户级线程,则在系统调度执行时间上占用时间片(间片()A、1 B、100 C、1/100 D、08一个进程被唤醒,意味着(一个进程被唤醒,意味着()A该进程重新占有了该进程重新占有了CPU B进程状态变为就绪进程状态变为就绪 C它的优先权变为最大它的优先权变为最大 D其其PCB移到就绪队列的队首移到就绪队列的队首 例例 题题9、设有三个作业、设有三个作业J1、J2、J3,它们的到达时间分别为,它们的到达时间分别为8:00、8:45、9:30,计算时间分,
34、计算时间分别为别为2小时、小时、1小时、小时、0.25小时如下表,它们在一台处理机上按单道运行,小时如下表,它们在一台处理机上按单道运行,9点处理机点处理机开始运转开始运转,若采用响应比高者优先的调度算法,这三个作业的执行次序是(若采用响应比高者优先的调度算法,这三个作业的执行次序是()A J1、J2、J3 B J2、J1、J3 C J1、J3、J2 D J3、J2、J1 10、将以下有关死锁的问题及其解决方式用直线连起来、将以下有关死锁的问题及其解决方式用直线连起来 预防死锁预防死锁 避免死锁避免死锁 检测死锁检测死锁 解除死锁解除死锁 银行家算法银行家算法 最小生成树法最小生成树法 资源分
35、配图资源分配图 资源分配序列资源分配序列11、下面有关进程概念的描述正确的是(、下面有关进程概念的描述正确的是()A进程是程序的一次执行过程;进程是程序的一次执行过程;B进程是一段简单程序,是指令的静态集合;进程是一段简单程序,是指令的静态集合;C进程是可并发执行的程序,是在一个数据集合上的一次执行过程;进程是可并发执行的程序,是在一个数据集合上的一次执行过程;D进程是可以和其它计算并发执行的一个计算;进程是可以和其它计算并发执行的一个计算;12、进程和程序的本质区别是(、进程和程序的本质区别是()A、内存和外存、内存和外存 B、动态和静态、动态和静态 C、共享和独占使用计算机资源、共享和独占
36、使用计算机资源 D、顺序和非顺序执行机器指令、顺序和非顺序执行机器指令13、使用、使用P/V操作管理临界区时,信号量的初值为(操作管理临界区时,信号量的初值为()A-1 B0 C1 D任意值任意值14、下面的调度算法中,(、下面的调度算法中,()综合考虑了作业或者进程的执行时间和等待时间)综合考虑了作业或者进程的执行时间和等待时间 A高响应比优先高响应比优先 B先来先服务先来先服务 C短进程优先短进程优先 D时间片轮转调度时间片轮转调度例例 题题15、以下不可能引起进程调度的是()、以下不可能引起进程调度的是()A、一个进程完成工作后被撤消、一个进程完成工作后被撤消 B、一个进程从就绪状态变成
37、了运行状态、一个进程从就绪状态变成了运行状态 C、一个进程从等待状态变成了就绪状态、一个进程从等待状态变成了就绪状态D、一个进程从运行状态变成了的等待状态或就绪状态、一个进程从运行状态变成了的等待状态或就绪状态16、程序和与其有关进程的对应关系是()、程序和与其有关进程的对应关系是()A多对多多对多 B一对多一对多 C一对一一对一 D多对一多对一17、如果有、如果有4个进程共享同一程序段,每次允许个进程共享同一程序段,每次允许3个进程进入该程序段,若用个进程进入该程序段,若用PV操作作为同步机制,操作作为同步机制,则信号量的取值范围是()则信号量的取值范围是()A.4 3 2 1 1 B.2
38、1 0 1 2 C.3 2 1 0 1 D.2 1 0 2-318、下面关于系统的安全状态的描述中正确的是()、下面关于系统的安全状态的描述中正确的是()A、系统处于不安全状态可能会发生死锁、系统处于不安全状态可能会发生死锁 B、系统处于不安全状态一定会发生死锁、系统处于不安全状态一定会发生死锁 C、系统处于安全状态时也可能会发生死锁、系统处于安全状态时也可能会发生死锁 D、不安全状态是死锁的一个特例、不安全状态是死锁的一个特例19、以下关于死锁的叙述中正确的是()、以下关于死锁的叙述中正确的是()A、死锁的出现只与资源的分配策略有关、死锁的出现只与资源的分配策略有关 B、死锁的出现只与并发进
39、程的执行速度有关、死锁的出现只与并发进程的执行速度有关 C、死锁是系统的一种僵持状态,任何进程无法继续运行、死锁是系统的一种僵持状态,任何进程无法继续运行 D、进程竞争互斥资源是产生死锁的根本原因、进程竞争互斥资源是产生死锁的根本原因20、以下关于资源分配图的描述中正确的是()、以下关于资源分配图的描述中正确的是()A、有向边包括进程指向资源类的分配边和资源类指向进程申请边两类、有向边包括进程指向资源类的分配边和资源类指向进程申请边两类 B、矩阵框表示进程,其中的圆点表示申请同一类资源的各个进程、矩阵框表示进程,其中的圆点表示申请同一类资源的各个进程 C、圆圈结点表示资源类、圆圈结点表示资源类
40、 D、资源分配图是一个有向图,用于表示某时刻系统资源与进程之间的状态、资源分配图是一个有向图,用于表示某时刻系统资源与进程之间的状态例例 题题21、通过终止进程或抢夺资源可以解除死锁,下面说法中错误的是()、通过终止进程或抢夺资源可以解除死锁,下面说法中错误的是()A、一次终止一个进程比终止所有涉及死锁进程的耗费大、一次终止一个进程比终止所有涉及死锁进程的耗费大B、检测死锁适用于不经常发生死锁的系统中,不适用于经常发生死锁的系统中、检测死锁适用于不经常发生死锁的系统中,不适用于经常发生死锁的系统中C、终止进程可以终止涉及死锁的所有进程或一次终止一个进程、终止进程可以终止涉及死锁的所有进程或一次
41、终止一个进程D、抢夺资源时从执行时间短的进程中抢夺可以避免进程、抢夺资源时从执行时间短的进程中抢夺可以避免进程“死死”现象现象22、有、有5个进程个进程PA PB PC PD PE,它们同时依次进入就绪队列,它们的优先数和所需要的处,它们同时依次进入就绪队列,它们的优先数和所需要的处理器时间分别为理器时间分别为3-1-3-4-2和和10-1-2-1-5,忽略进程调度所花费的时间,请回答:,忽略进程调度所花费的时间,请回答:(1)写出采用)写出采用FCFS和非抢占优先数算法选中进程执行次序。和非抢占优先数算法选中进程执行次序。(2)分别计算出两种算法各个进程的等待时间以及两种算法下的平均等待时间
42、。)分别计算出两种算法各个进程的等待时间以及两种算法下的平均等待时间。23、某单处理器系统中采用多道程序设计,现有、某单处理器系统中采用多道程序设计,现有10个进程存在,则处于运行、阻塞、就绪的个进程存在,则处于运行、阻塞、就绪的进程数量最小和最大值分别可能是多少?进程数量最小和最大值分别可能是多少?24、一家人吃水果,只有一个盘子,且忽略可以装多少水果,爸爸一直往盘子里放苹果,妈、一家人吃水果,只有一个盘子,且忽略可以装多少水果,爸爸一直往盘子里放苹果,妈妈一直往盘子里放橘子;儿子只吃苹果,女儿只吃橘子,请用妈一直往盘子里放橘子;儿子只吃苹果,女儿只吃橘子,请用PV操作描述这些过程以及操作描
43、述这些过程以及输出盘子中水果的变化。输出盘子中水果的变化。25、有一个大学只有一个澡堂,门口上有一块牌子,如果有一个男生进去洗澡,他就会把牌、有一个大学只有一个澡堂,门口上有一块牌子,如果有一个男生进去洗澡,他就会把牌子转到子转到“男男”字样,这样只有男生会进去,女生就不会进去了;如果澡堂没人,一个女生字样,这样只有男生会进去,女生就不会进去了;如果澡堂没人,一个女生先进了澡堂,她就会把牌子转到先进了澡堂,她就会把牌子转到“女女”字样,那么女生就可以进去了;请用字样,那么女生就可以进去了;请用PV操作描述操作描述这个事件,避免男女生同时出现在澡堂。这个事件,避免男女生同时出现在澡堂。26、设有
44、一个数据区,有若干进程要去读或写它。写是互斥的,读可以同时进行。考虑、设有一个数据区,有若干进程要去读或写它。写是互斥的,读可以同时进行。考虑进程分别遵循下面两种原则:进程分别遵循下面两种原则:(1)读者优先。)读者优先。Reader进程不需要等待,除非有某个进程不需要等待,除非有某个Writer进程正在执行。也就是说,进程正在执行。也就是说,如果某个如果某个Reader进程正处于等待状态,则新的进程正处于等待状态,则新的Writer进程就不能开始写操作。进程就不能开始写操作。(2)写者优先。)写者优先。Writer进程不需要等待,除非有某个进程不需要等待,除非有某个Reader/Writer进程正在执行。也就进程正在执行。也就是说,如果某个是说,如果某个Writer进程正处于等待状态,则新的进程正处于等待状态,则新的Reader进程就不能开始读操作。进程就不能开始读操作。请用请用P/V操作写出读写过程同步算法,并给出所设信号量的初值。操作写出读写过程同步算法,并给出所设信号量的初值。
侵权处理QQ:3464097650--上传资料QQ:3464097650
【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。