计算机操作系统(第三版)第二章复习课件_第1页
计算机操作系统(第三版)第二章复习课件_第2页
计算机操作系统(第三版)第二章复习课件_第3页
计算机操作系统(第三版)第二章复习课件_第4页
计算机操作系统(第三版)第二章复习课件_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第二章进程管理进程基本概念引入状态前趋图进程控制进程同步进程通信同步与互斥临界资源和临界区同步机制四规则同步方法信号量管程类别经典同步问题线程线程同步与控制用户级与内核级基本概念区别区别消息管道共享存储器小结前趋图是一个有向无循环图,图中每个结点可以表示一条语句、一个程序段或一个进程。边表示两个结点的前趋关系。并发程序和顺序程序有本质上的差异。为了能更好地描述程序的并发执行,程序并发执行与顺序执行相比产生了一些新特性:间断性、失去封闭性、不可再现性。实现操作系统的并发性和共享性,引入“进程”的概念。进程:是具有一定独立功能的程序关于某个数据集合上的一次运行活动,是系统进行资源分配和调度的一个独立单位。(重点)进程具有五特性:并发性、动态性、独立性、交互性、异步性。进程是动态的概念,而程序是静态的概念。在操作系统核心中,为进程定义了一个专门的数据结构,称为进程控制块PCB。系统利用PCB来描述进程的基本情况以及进程的运行变化过程。PCB是进程存在的唯一标志:进程由程序、数据和进程控制块PCB三部分组成。(重点)进程控制块的初始化工作包括初始化标识符信息、初始化处理机状态信息、初始化控制信息。运行中的进程可以处于三种状态之一:运行、就绪、阻塞(等待)。系统中进程排成队列,就绪队列、阻塞队列。当进程执行的时间片用完时,进行由执行状态转变为就绪状态。执行状态只能由就绪状态转换;而无法由阻塞状态直接转换。(重点)临界资源:也称独占资源,是指在一段时间内只允许一个进程访问的资源。在进程中,访问临界资源的代码称为临界区。用P、V操作管理临界区时,任何一个进程在进入临界区之前应调用P操作,退出临界区时调用V操作。(重点)访问临界资源应遵循的四准则为:空闲让进、忙则等待、有限等待、让权等待。信号量的物理意义是当信号量值大于零时表示可用资源的数目:当信号量值小于零时,其绝对值为在该信号量上等待的进程个数。多道程序系统中,并发运行的进程之间存在着两种相互作用关系:直接相互作用和间接相互作用。进程间的直接相互作用构成进程的同步。进程间的间接相互作用构成进程互斥。设信号量为S,并在其上实施P-V操作,以实现进程间的同步和互斥。同类进程即为互斥关系,不同类进行即为同步关系。进程之间必须互相协调,彼此之间交换信息,这就是进程之间的通信。P-V操作只是低级通信原语,解决大量信息交换问题要采用高级通信原语。目前常用的高级通信机构有:消息缓冲通信、管道通信和信箱通信。进程控制的作用是:对进程在整个生命周期中各种状态之间的转换进行有效的控制。进程控制是通过原语来实现的,用于进程控制的原语一般有:创建进程、撤消进程、阻塞进程、唤醒进程等。在支持线程的操作系统中,线程是进程的一个实体,是系统实施调度的独立单位。引入线程的目的是进一步提高系统的并发度,减少系统的开销。在操作系统中引入线程概念的主要目的是减少程序并发执行时所需付出的时空开销,提高程序执行的并发程度。线程的定义存在多种不同的提法。这些提法可以相互补充对线程的理解:线程是进程内的一个执行单元,比进程小。线程是进程内的一个可调度实体。线程是程序或进程中相对独立的一个控制流序列。线程本身不能单独运行,只能包含在进程中,只能在进程中执行。系统开销:由于创建进程进程时,系统都要为之分配或回收资源,如内存空间、IO设备等,操作系统所付出的开销远大于创建或撤销线程时的开销。经典进程的同步问题

:生产者—消费者问题读者-写者问题哲学家进餐问题关于PV问题的解题思路:主要是看进程等的信号和要发出的信号是什么,等信号用P/wait,发信号用V/signal。主要步骤是:分析清楚题目涉及的进程和它们之间的制约关系(同步或互斥)。设置信号是(包括信号量的个数和初值及其物理含义),合作进程间需要收发几条消息相应就设置几个信号量。给出进程相应程序的算法描述或流程控制,并把P/wait、V/signal操作加到程序的适当地方。某一进程若收不到另一进程给它提供的必要信息就不能继续下去,这种情况表明了两个进程之间在某些点上要交换信息,相互交流运行情况。这种制约关系称为同步关系,基本形式是“进程-进程”。

这种制约关系主要源于进程间的合作,同步设置在不同进程之间以达到多种进程间的同步若某一进程要求使用某种资源,而该资源被另一进程使用。并且这一资源不允许两个进程同时使用,那么该等待已占用资源释放资源后再使用,这种制约关系称为互斥,基本形式为“进程-资源-进程。”

这种制约关系源于多个同种进程需要互斥地共享某种系统资源,互斥是设置在同种进程之间以达到互斥地访问资源的目的。信号量及P、V操作讨论1)

信号量的物理含义

S>0表示有S个资源可用

S=0表示无资源可用S<0则|

S

|表示S阻塞(等待)队列中的进程个数Wait(S)或P(S):表示申请一个资源、或等消息signal(S)或V(S):表示释放一个资源、或发消息信号量的初值应该大于等于0信号量及Wait或P、signal或V操作讨论2)Wait/signal或P/V操作应该成对出现,有一个Wait或P操作就一定有一个signal或V操作–当为互斥操作时,它们同处于同类进程–当为同步操作时,则在不同类进程中出现–如果Wait(S1)或

P(S1)和Wait(S2)或P(S2)两个操作在一起,那么Wait或

P操作的顺序至关重要,一个同步Wait或

P操作与一个互斥Wait或

P操作在一起时同步Wait或

P操作在互斥Wait或

P操作前,而两个signal或

V操作无关紧要.信号量及Wait或P、signal或V操作讨论一、填空题(1)从静态角度上看,进程是由______、_______、_______三部分组成。(2)正在执行的进程由于用完其时间片而被暂停执行,此时进程应从执行状态变成为_________。(3)临界区是指进程中用于_____________的那段代码。(4)设有6个进程共享同一互斥段,若最多允许有3个进程进入互斥段,则所采用的互斥信号量的初值为____。(9)有3个进程共享同一程序段,而每次最多允许两个进程进入该程序段,若用P、V操作作同步机制,则信号量S的取值范围为__________。PCB程序段数据段就绪状态访问临界资源32,1,0,-11、若信号量S的初值为2,当前值为-1,则表示有()等待进程。 A、0个B、1个C、2个D、3个2、分配到必要的资源并获得处理机时的进程状态是()。

A、就绪状态B、执行状态C、阻塞状态D、撤销状态

3、在进程状态转换时,下列()转换是不可能发生的。

A、就绪态→运行态B、运行态→就绪态

C、运行态→阻塞态D、阻塞态→运行态

4.在一个单处理机系统中,若有6个用户进程,在非管态的某一时刻,处于就绪状态的用户进程最多有()个。

A.5B.6C.1D.4BBDA5.wait操作可能导致:()。A.

进程就绪

B.

进程结束

C.

进程阻塞

D.

新进程创建C6.()是一种只能进行wait操作和signal操作的特殊变量。

A、调度B、进程C、同步D、信号量

1.PCB(进程控制块)是标志进程存在的数据结构。(

)2.操作系统中进程是一个独立运行的单位,是系统进行资源分配和调度的基本单位(

)3.创建线程比创建进程开销小。(

)4.进程存在的唯一标志是它是否处于运行状态。(

5.在操作系统中引入线程概念的主要目的是处理进程与进程之间的竞争(

).DTTTFF1.进程控制块的作用是什么?PCB中应包括哪些信息?答:进程控制块的作用是:进程控制块用于保存每个进程和资源的相关信息,以便于操作系统管理和控制进程和资源。PCB中应包括:1、进程标识信息:本进程的标识、父进程的标识、进程所属用户的标识。2、处理机状态信息。保存进程的运行现场信息,包括用户可用寄存器的信息;控制和状态寄存器的信息;栈指针。2.请画图说明进程三种基本状态之间的转换,并指出转换原因。3.何谓临界资源?答:临界资源:也称独占资源,是指在一段时间内只允许一个进程访问的资源。例如打印机,也可以是进程共享的数据、变量等。

4.什么是临界区?答:每个进程中访问临界资源的那段程序称为临界区。每次只准许一个进程进入临界区,进入后不允许其他进程进入。

5、简述进程同步与互斥的概念与区别。所谓进程同步是指多个相互合作的进程,在一些关键点上可能需要互相等待或互相交换信息,这种相互制约关系称为进程同步。在操作系统中,当一个进程进入临界区使用临界资源时,另一个进程必须等待,当占用临界资源的进程退出临界区后,另一个进程才允许去访问此临界资源,称进程之间的这种相互制约关系为进程互斥。其实互斥是进程同步的一种特殊情况,互斥也是为了达到让进程之间协调推进的目的。应用题1.购物问题。某超级市场,可容纳100个人同时购物,入口处备有篮子,每个购物者可持一个篮子入内购物。出口处结账,并归还篮子(出、入口仅容纳一人通过)。请用wait(P)、signal(V)操作完成购物算法。答:同步信号量S表示同时在超级市场购物的人数;信号量mutex1表示入口临界资源;信号量mutex2表示出口临界资源。只要S<=100,顾客便可进入超级市场。S=100mutex1/mutex2的初始值为1VarS,mutex1,mutex2:semaphore;S:=100;mutex1:=1;mutex2:=1processPi:begin wait(S); wait(mutex1);

进入口处,取一只篮子;

signal(mutex1);

选购商品; wait(mutex2);

结账,并归还篮子;

signal(mutex2); signal(S);

end2、某处有一东、西向单行道,其上班交通并不繁忙。试用wait和signal操作正确实现该东、西向单行道的管理:当有车由东向西(或由西向东)行驶时,另一方向的车需要等待;同一方向的车可连续通过;当某一方向已无车辆在单行道行驶时,则另一方向的车可以驶入单行道(要求写出信号量含义和程序描述)。解:单车道意味着双向车流必须互斥地通过桥。设置信号量mutex控制双向车流对桥的互斥使用。初值mutex=1。

定义两个计数器C1和C2,分别记录由东向西行的车辆数和由西向东行的车辆数。设置信号量S1控制计数器C1的互斥使用。初值S1=1。设置信号量S2控制计数器C2的互斥使用。初值S2=1。Semaphore:S1=1,S2=1,mutex=1;int:C1=0;C2=0;cobegin由东向西行的车辆:beginwait(S1);C1=C1+1;if(Cl==l)thenwait(mutex);signal(S1);过桥;wait(S1);C1=C1-1;if(C1==0)thensignal(mutex);signal(S1);end由西向东行的车辆:beginwait(S2);C2=C2+1;if(C2==l)thenwait(mutex);signal(S2);过桥;wait(S2);C2=C2-1;if(C2==0)thensignal(mutex);signal(S2);en

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论