您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 公司方案 > OS02进程描述-2014-2015-2
操作系统OperatingSystemsWINDOWSUNIXLINUXOS2VxWorksMacOS第二章进程管理中断其他模块(I/O,存储器)可以中断处理器的正常执行序列中断类型•程序性中断:如算术溢出,除零•定时器:由处理器内的定时器产生。•I/O中断:由I/O控制器产生,通知操作正常完成的或各种错误情况。•硬件故障,如电源故障STARTHALTFetchnextinstructionFetchStageExecuteStageInterruptStageInterruptsDisabledInterruptsEnabledExecuteinstructionCheckforinterrupt;initiateinterrupthandlerFigure1.7InstructionCyclewithInterrupts•在中断阶段中,处理器检查是否有中断发生。•如果没有中断,处理器取当前程序的下一条指令。•如果发生中断,处理器暂停当前程序,并执行中断处理程序。•在中断处理程序程序一般是操作系统的一部分。•当中断处理程序完成后,处理器在断点处继续执行用户程序。12ii+1MInterruptoccurshereUserProgramInterruptHandlerFigure1.6TransferofControlviaInterruptsTheprocessorandtheOSareresponsibleforsuspendingtheuserprogramandthenresumingitatthesamepoint.DevicecontrollerorothersystemhardwareissuesaninterruptProcessorfinishesexecutionofcurrentinstructionProcessorsignalsacknowledgmentofinterruptProcessorpushesPSWandPContocontrolstackProcessorloadsnewPCvaluebasedoninterruptSaveremainderofprocessstateinformationProcessinterruptRestoreprocessstateinformationRestoreoldPSWandPCHardwareSoftwareFigure1.10SimpleInterruptProcessing设备控制器或其他系统硬件发出中断处理机完成当前指令执行处理机发出中断应答信号处理机保存现场,如保存PC值处理机将中断服务程序入口地址装入到PC保存剩余的处理状态处理中断恢复处理状态信息恢复旧PC第二章进程管理2.1前趋图和程序执行2.2进程的描述2.3进程控制2.4进程同步2.5经典进程的同步问题进程通信2.6进程通信2.7线程的基本概念2.1前趋图和程序执行程序的顺序执行及其特征S1:a:=x+y;S2:b:=a-5;S3:c:=b+1;1.顺序性---顺序执行;2.封闭性---程序运行时独占全机资源,不受外界影响;3.可再现性---程序重复执行时将得到相同结果;S1S2S3ab2.1.3程序的并发执行对于具有下述四条语句的程序段:S1:a:=x+2S2:b:=y+4S3:c:=a+bS4:d:=c+bS1S3S4acS2bd程序的并发执行时的特征间断性---并发执行导致间断性;失去封闭性---多个程序共享资源,受外界影响;不可再现性---程序重复执行时可能到不同结果;缓存区BUFP1P2案例例如:某交通路口设置了一个自动计数系统,该系统由观察者和报告者共同组成。观察者报告者交通路口自动计数系统观察到一辆卡车将计数值N累加1将计数值N清0输出计数值N11Procedure观察者begin观察到一辆卡车;N=N+1;endProcedure报告者beginprintN;N=0;end假设某时刻N的值为m,可能出现下面情况:print的N值N的最终取值(1)m+10(2)m1(3)m0观察者;报告者报告者;观察者报告者PrintN;观察者N=N+1;报告者N=0操作系统为什么要引入进程概念?刻画系统的动态性,发挥系统的并发性,提高资源利用率。•程序是并发执行的,即不是连续而是走走停停的。•程序的并发执行引起资源共享和竞争问题,执行的程序不再处在封闭环境中。“程序”自身只是计算任务的指令和数据的描述,是静态概念•无法刻画程序的并发特性,•系统需要寻找一个能描述程序动态执行过程的概念进程实体为使程序(含数据)能独立运行,应为之配置一进程控制块(PCB,ProcessControlBlock);•由程序段、相关的数据段和PCB三部分便构成了进程实体(进程映像)。程序段数据段PCB动态特征的集中反映描述要完成的功能操作对象及工作区进程的定义较典型的进程定义有:(1)进程是程序的一次执行。(2)进程是一个程序及其数据在处理机上顺序执行时所发生的活动。(3)进程是程序在一个数据集合上运行的过程,它是系统进行资源分配和调度的一个独立单位。我们可以把传统OS中的进程定义为:•“进程是进程实体的运行过程,是系统进行资源分配和调度的一个独立单位”进程的特征动态性并发性独立性异步性进程的特征动态性•进程的最基本的特征。•程序只是一组有序指令的集合,并存放于某种介质上,其本身并不具有运动的含义,因而是静态的。•进程实体有一定的生命期:“它由创建而产生,由调度而执行,由撤消而消亡”•作业调度与进程调度进程的特征并发性•并发性是进程的重要特征,也成为OS的重要特征。•引入进程的目的:正是为了使其进程实体能和其它进程实体并发执行;独立性•在传统的OS中,独立性是指进程实体是一个能独立运行、独立分配资源和独立接受调度的基本单位。异步性•进程按各自独立的、不可预知的速度向前推进,或说进程实体按异步方式运行。进程的三种基本状态就绪(Ready)状态•进程已分配到除CPU以外的所有必要资源。•就绪队列执行状态•进程已获得CPU,其程序正在执行。•在单处理机系统中,只有一个进程处于执行状态;•在多处理机系统中,则有多个进程处于执行状态。阻塞状态•正在执行的进程由于发生某事件而暂时无法继续执行时,便放弃处理机而处于暂停状态。•引起阻塞的事件就绪队列和各种I/O设备队列进程三个基本状态及其转换执行就绪阻塞进程调度时间片完I/O请求I/O完成创建状态创建状态•OS已完成为创建一进程所必要的工作为一个新进程创建PCB,并填写必要的管理信息;已构造了进程标识符已创建了管理进程所需的表格•但还没有允许执行该进程该进程所必需的资源或其它信息尚未分配进程还不能被调度运行终止状态终止状态•中止后,它将进入终止状态。•终止态的进程不能再执行。•一旦其它进程完成了对终止状态进程的信息提取之后,操作系统将删除该进程。如:一个实用程序为了分析性能和利用率,可能需要提取进程的历史信息进程的五种基本状态及转换执行就绪阻塞进程调度时间片完I/O请求I/O完成创建终止许可结束挂起状态引入挂起状态的原因(1)终端用户的请求。(2)父进程请求。(3)负荷调节的需要。•为了让某些进程暂时不参与进程调度,对换到外存中,释放它占有的资源(4)操作系统的需要。挂起状态(静止状态)非挂起状态(活动状态)具有挂起状态的进程状态图释放激活挂起调度时间片完I/O请求执行活动就绪释放静止就绪激活挂起静止阻塞活动阻塞挂起具有创建、终止和挂起状态的进程状态图释放激活挂起调度时间片完I/O请求执行活动就绪释放静止就绪激活挂起静止阻塞活动阻塞挂起创建许可许可终止结束2.2.4进程管理中的数据结构ProcessorI/OI/OFigure3.10ProcessesandResources(resourceallocationatonesnapshotintime)I/OMainMemoryComputerResourcesVirtualMemoryP1P2Pn进程管理中的数据结构操作系统构造和维护它所管理的每个实体的信息表。MemoryDevicesFilesProcessesProcess1MemoryTablesProcessImageProcess1ProcessImageProcessnI/OTablesFileTablesFigure3.11GeneralStructureofOperatingSystemControlTablesPrimaryProcessTableProcess2Process3Processn进程表(PCB)进程控制块进程控制块PCB(ProcessControlBlock)•系统为每个进程定义的一个数据结构•PCB中记录了操作系统所需的、用于描述进程的当前情况以及控制进程运行的全部信息。进程控制块作用1.作为独立运行基本单位的标志•PCB是进程存在的惟一标志。2.能实现间断性运行方式。•保存CPU现场信息3.提供进程管理所需要的信息•程序或数据地址;源清单4.提供进程调度所需要的信息5.实现与其他进程的同步和通信进程控制块中的信息1.进程标识符2.处理机状态3.进程调度信息4.进程控制信息1进程控制块——进程标识符内部标识符•一个惟一的数字标识符,它通常是一个进程的序号。外部标识符•它由创建者提供,通常是由字母、数字组成,往往是由用户(进程)在访问该进程时使用。•为了描述进程的家族关系,还应设置父进程标识及子进程标识。•设置用户标识,以指示拥有该进程的用户。2进程控制块——处理机状态处理机状态信息主要是由处理机的各种寄存器中的内容组成的这些寄存器包括:①通用寄存器,它们是用户程序可以访问的,用于暂存信息;②指令计数器,其中存放了要访问的下一条指令的地址③程序状态字PSW,含有状态信息,如条件码、执行方式、中断屏蔽标志等;④用户栈指针,指每个用户进程都有一个或若干个与之相关的系统栈,用于存放过程和系统调用参数及调用地址,栈指针指向该栈的栈顶。3进程控制块——进程调度信息在PCB中还存放一些与进程调度和进程对换有关的信息,包括:①进程状态;②进程优先级,优先级高的进程应优先获得处理机;③进程调度所需的其它信息,它们与所采用的进程调度算法有关,比如,进程已等待CPU的时间总和、进程已执行的时间总和等;④事件,指进程由执行状态转变为阻塞状态所等待发生的事件,即阻塞原因。4进程控制信息①程序和数据的地址,指进程的程序和数据所在的内存或外存地(首)址②进程同步和通信机制,指实现进程同步和进程通信时必需的机制;③资源清单,即一张列出了除CPU以外的、进程所需的全部资源及已经分配到该进程的资源的清单;④链接指针,它给出了本进程(PCB)所在队列中的下一个进程的PCB的首地址。进程控制块的组织方式线性方式•线性表的首址存放在内存的一个专用区域链接方式索引方式PCB表PCB2PCB3PCB4PCB5PCB6PCBnPCB7…PCB1链接方式PCB表PCB10PCB25PCB30PCB40PCB50PCB64执行指针就绪队列指针阻塞队列1指针阻塞队列2指针…PCBn7PCB70…空闲队列指针链接方式索引方式执行指针就绪表指针阻塞表1指针PCB表PCB1PCB2PCB3PCB4PCB5PCB6……PCBn…就绪索引表…阻塞索引表1阻塞表2指针…作业P8467假设在时间5时,系统资源只有处理器和内存被使用。考虑如下事件:时间5:P1执行对磁盘单元3的读操作。时间15:P5的时间片结束。时间18:P7执行对磁盘单元3的写操作。时间20:P3执行对磁盘单元2的读操作。时间24:P5执行对磁盘单元3的写操作。时间28:P5被换出。时间33:P3读磁盘单元2操作完成,产生中断。时间36:P1读磁盘单元3操作完成,产生中断。时间38:P8结束。时间40:P5写磁盘单元3操作完成,产生中断。时间44:P5被调入。时间48:P7写磁盘单元3操作完成,产生中断。请分别写出
本文标题:OS02进程描述-2014-2015-2
链接地址:https://www.777doc.com/doc-7330493 .html