第3章 进程与进程管理ppt课件.ppt
《第3章 进程与进程管理ppt课件.ppt》由会员分享,可在线阅读,更多相关《第3章 进程与进程管理ppt课件.ppt(57页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第3章 进程与进程管理第第3 3章章 进程与进程管理进程与进程管理操作系统(第四版)操作系统(第四版)第3章 进程与进程管理3.1 3.1 进程的引入进程的引入3.2 3.2 进程进程3.3 3.3 进程调度进程调度3.4 3.4 线程的基本概念线程的基本概念3.5 Linux3.5 Linux的进程与进程管理的进程与进程管理3.1 进程的引入q前趋图的定义前趋图的定义 前趋图前趋图(Procedence GraphProcedence Graph)是一个有向无循环图)是一个有向无循环图(DAGDAG)。图中的每个结点可用于表示一条语句、一个程序段)。图中的每个结点可用于表示一条语句、一个程序
2、段或进程;结点间的有向边则表示在两结点之间存在的偏序或前或进程;结点间的有向边则表示在两结点之间存在的偏序或前趋关系趋关系“”,=(P=(Pi i,P Pj j)| P)| Pi i必须在必须在P Pj j开始前完成开始前完成 。 3.1 进程的引入q程序顺序执行程序顺序执行 定义定义 程序在执行时,必须按照某种先后次序逐个执行,仅当前程序在执行时,必须按照某种先后次序逐个执行,仅当前一操作执行完后,才能执行后继操作一操作执行完后,才能执行后继操作 程序顺序执行的特征程序顺序执行的特征 程序执行的顺序性程序执行的顺序性 处理机的操作严格按程序规定的顺序执行,即只有前一操处理机的操作严格按程序规
3、定的顺序执行,即只有前一操作结束后才能执行后继操作作结束后才能执行后继操作 3.1 进程的引入 程序执行的封闭性程序执行的封闭性 程序一旦开始运行,其执行结果不受外界因素的影响程序一旦开始运行,其执行结果不受外界因素的影响 程序执行结果的确定性程序执行结果的确定性 程序执行的结果与它的执行速度、时间无关程序执行的结果与它的执行速度、时间无关 程序结果的可再现性程序结果的可再现性 程序执行时的环境和初始条件相同,当程序多次重复程序执行时的环境和初始条件相同,当程序多次重复执行时,都将获得相同的结果执行时,都将获得相同的结果 3.1 进程的引入q程序并发执行程序并发执行 定义定义 在上图中的输入程
4、序、计算程序和打印程序三者之间,存在上图中的输入程序、计算程序和打印程序三者之间,存在着在着I Ii iCCi iPPi i这样的前趋关系,以致对一个作业的输入、计这样的前趋关系,以致对一个作业的输入、计算和打印三个操作必须顺序执行,但并不存在算和打印三个操作必须顺序执行,但并不存在P Pi iIIi+1i+1关系,关系,因而在对一批程序进行处理时,可使它们并发执行。因而在对一批程序进行处理时,可使它们并发执行。 3.1 进程的引入 程序并发执行特征程序并发执行特征 程序执行的间断性程序执行的间断性 程序执行的相互制约将导致并发程序具有程序执行的相互制约将导致并发程序具有“执行执行暂停暂停执行
5、执行执行执行”这种间断性的活动规律这种间断性的活动规律 程序执行失去封闭性程序执行失去封闭性 因多个程序共享系统中的资源,所以某程序在执行时因多个程序共享系统中的资源,所以某程序在执行时必然会受到其他程序的影响必然会受到其他程序的影响 3.1 进程的引入 程序执行结果的不可再现性程序执行结果的不可再现性 由于失去了封闭性,也将导致失去其可再现性由于失去了封闭性,也将导致失去其可再现性 资源共享资源共享 系统中的硬件资源和软件资源不再被单个用户或程序独占,系统中的硬件资源和软件资源不再被单个用户或程序独占,而为多个用户或作业共同使用而为多个用户或作业共同使用 程序和计算不再一一对应程序和计算不再
6、一一对应 程序和计算是两个不同的概念,在程序并发执行中一个共程序和计算是两个不同的概念,在程序并发执行中一个共享程序可对应多个享程序可对应多个“计算计算”,程序与,程序与“计算计算”已不再一一对应已不再一一对应 3.1 进程的引入q多道程序设计多道程序设计 定义定义 在采用多道程序设计的计算机系统中,允许多个程序同时在采用多道程序设计的计算机系统中,允许多个程序同时进入一个计算机系统的内存储器并运行,这种让多个程序同时进入一个计算机系统的内存储器并运行,这种让多个程序同时进入计算机计算的方法称为多道程序设计。进入计算机计算的方法称为多道程序设计。 目的目的 提高处理器的效率,从而提高整个系统的
7、效率提高处理器的效率,从而提高整个系统的效率q必须解决的问题必须解决的问题 存储保护与程序浮动存储保护与程序浮动 处理器的管理和调度处理器的管理和调度 系统资源的管理和调度系统资源的管理和调度 3.2 进程q 引入进程的原因引入进程的原因 为了使程序在多道程序环境下能够并发执行,并对并发执为了使程序在多道程序环境下能够并发执行,并对并发执行的程序加以控制和描述,引入进程的概念行的程序加以控制和描述,引入进程的概念 程序段程序段、数据段数据段及及进程控制块进程控制块三部分构成了一个进程的实三部分构成了一个进程的实体体 q 进程的概念进程的概念 进程的定义进程的定义 进程进程是具有独立功能的可并发
8、执行的程序在一个数据集合是具有独立功能的可并发执行的程序在一个数据集合上的运行过程,是系统进行资源分配和调度的独立单位。或者上的运行过程,是系统进行资源分配和调度的独立单位。或者说,说,“进程进程”是进程实体的运行过程。是进程实体的运行过程。3.2 进程 程序与进程的区别与联系程序与进程的区别与联系 区别区别: :进程是程序的一次执行,是一个动态的概念,程序是完进程是程序的一次执行,是一个动态的概念,程序是完成某个特定功能的指令的有序序列,是一个静态的概念成某个特定功能的指令的有序序列,是一个静态的概念一个进程可以执行一个或几个程序,同一程序也可能由一个进程可以执行一个或几个程序,同一程序也可
9、能由多个进程同时执行多个进程同时执行进程是系统进行资源分配和调度的一个独立单位,程序进程是系统进行资源分配和调度的一个独立单位,程序则不是则不是 程序可以作为一种软件资源长期保存,而进程是程序的程序可以作为一种软件资源长期保存,而进程是程序的一次执行过程,它是临时的,有生命期的一次执行过程,它是临时的,有生命期的 进程是具有结构的进程是具有结构的 联系联系: :进程是程序的运行进程是程序的运行3.2 进程 进程的特征进程的特征 动态性动态性:进程的基本特性。进程是进程实体的执行过程;:进程的基本特性。进程是进程实体的执行过程; 并发性并发性: :进程的主要特征。多个进程实体同存于内存中,进程的
10、主要特征。多个进程实体同存于内存中,能在一段时间内同时运行;能在一段时间内同时运行; 独立性独立性:进程实体是一个能独立运行的基本单位,同时也:进程实体是一个能独立运行的基本单位,同时也是系统中独立获得资源和独立调度的基本单位。是系统中独立获得资源和独立调度的基本单位。 异步性异步性:进程按各自独立的、不可预知的速度向前推进;:进程按各自独立的、不可预知的速度向前推进;或者说,进程按异步方式运行。或者说,进程按异步方式运行。 结构特征结构特征:从结构上看,进程实体是由程序段、数据段及:从结构上看,进程实体是由程序段、数据段及进程控制块三部分组成,有人把这三部分统称为进程控制块三部分组成,有人把
11、这三部分统称为“进程映像进程映像”。3.2 进程q进程的基本状态及其转换进程的基本状态及其转换进程的三种基本状态进程的三种基本状态 就绪状态就绪状态 当进程已分配到除当进程已分配到除CPUCPU以外的所有必要的资源后,只要能以外的所有必要的资源后,只要能再获得处理机便可立即执行,这时的状态称为就绪状态再获得处理机便可立即执行,这时的状态称为就绪状态 执行状态执行状态 指进程已获得处理机,其程序正在执行指进程已获得处理机,其程序正在执行 阻塞状态阻塞状态 进程因发生某种事件(如进程因发生某种事件(如I/OI/O请求、申请缓冲空间等)而请求、申请缓冲空间等)而暂停执行时的状态,亦即进程的执行受到阻
12、塞,故称这种状态暂停执行时的状态,亦即进程的执行受到阻塞,故称这种状态为阻塞状态,有时也称为为阻塞状态,有时也称为“等待等待”状态或状态或“睡眠睡眠”状态。状态。 思考思考: :刚刚创建的进程应该处于哪种状态刚刚创建的进程应该处于哪种状态? ?3.2 进程进程状态的转换进程状态的转换 就绪就绪执行状态执行状态 处于就绪状态的进程,当进程调度为之分配了处理机后处于就绪状态的进程,当进程调度为之分配了处理机后 执行执行阻塞状态阻塞状态 正在执行的进程因发生某种事件而无法执行正在执行的进程因发生某种事件而无法执行 执行执行就绪状态就绪状态 正在执行的进程如因时间片用完或一个优先权高的进程到正在执行的
13、进程如因时间片用完或一个优先权高的进程到来而被暂停执行来而被暂停执行 阻塞阻塞就绪状态就绪状态 处于阻塞状态的进程,其等待的事件已经发生处于阻塞状态的进程,其等待的事件已经发生 思考思考: :其他状态转换可以存在吗其他状态转换可以存在吗? ?3.2 进程进程基本状态及其转换图进程基本状态及其转换图3.2 进程进程的挂起状态进程的挂起状态 挂起状态的引入挂起状态的引入 终端用户的需要终端用户的需要 当终端用户在自己的程序运行期间发现有可疑问题时,当终端用户在自己的程序运行期间发现有可疑问题时,往往希望暂时使自己的进程静止下来。往往希望暂时使自己的进程静止下来。 父进程的需要父进程的需要 父进程常
14、常希望考察和修改子进程或者当要协调各子进父进程常常希望考察和修改子进程或者当要协调各子进程间的活动程间的活动 操作系统的需要操作系统的需要 操作系统有时需要挂起某些进程,检查运行中资源的使操作系统有时需要挂起某些进程,检查运行中资源的使用情况及进行记账,以便改善系统运行的性能。用情况及进行记账,以便改善系统运行的性能。3.2 进程 对换的需要对换的需要 为了缓解内存紧张的情况,即将内存中处于阻塞状态的为了缓解内存紧张的情况,即将内存中处于阻塞状态的进程换至辅存上,使进程又处于一种有别于阻塞状态的新状进程换至辅存上,使进程又处于一种有别于阻塞状态的新状态。态。 负荷调节的需要负荷调节的需要进程状
15、态的转换进程状态的转换 在引入挂起状态后,又将增加从挂起状态(又称静止状在引入挂起状态后,又将增加从挂起状态(又称静止状态)到非挂起状态(又称活动状态)的转换态)到非挂起状态(又称活动状态)的转换 活动就绪活动就绪静止就绪静止就绪 活动阻塞活动阻塞静止阻塞静止阻塞 静止就绪静止就绪活动就绪活动就绪 静止阻塞静止阻塞活动阻塞活动阻塞3.2 进程3.2 进程q进程控制块进程控制块PCBPCB 进程控制块的作用进程控制块的作用 进程控制块记录进程信息进程控制块记录进程信息 操作系统是根据进程控制块操作系统是根据进程控制块PCBPCB来对并发执行的进程进来对并发执行的进程进行控制和管理的行控制和管理的
16、 PCBPCB是进程存在的唯一标志是进程存在的唯一标志 思考思考: :进程控制块应该存放在何处进程控制块应该存放在何处? ?需要存放在磁盘中吗需要存放在磁盘中吗? ? 进程控制块中的信息进程控制块中的信息 进程标识符信息进程标识符信息 进程标识符用于唯一地标识一个进程,通常有外部标识进程标识符用于唯一地标识一个进程,通常有外部标识符和内部标识符符和内部标识符3.2 进程 外部标识符。由创建者提供,通常由字母、数字所组外部标识符。由创建者提供,通常由字母、数字所组成,往往是由用户(进程)在访问该进程时使用。成,往往是由用户(进程)在访问该进程时使用。 内部标识符。这是为了方便系统使用而设置的。在
17、所内部标识符。这是为了方便系统使用而设置的。在所有操作系统中都为每一个进程赋予一个惟一的整数作为内部有操作系统中都为每一个进程赋予一个惟一的整数作为内部标识符,它通常就是一个进程的序号。标识符,它通常就是一个进程的序号。 处理机状态信息处理机状态信息 处理机状态信息主要是由处理机各种寄存器中的内容所处理机状态信息主要是由处理机各种寄存器中的内容所组成组成 :通用寄存器、指令计数器、程序状态字:通用寄存器、指令计数器、程序状态字PSWPSW、用户栈、用户栈指针。指针。 进程调度信息进程调度信息 存放了一些与进程调度和进程对换有关的信息:进程状存放了一些与进程调度和进程对换有关的信息:进程状态、进
18、程优先级、进程调度所需的其他信息、事件。态、进程优先级、进程调度所需的其他信息、事件。 3.2 进程 进程控制信息进程控制信息 程序和数据的地址、程序和数据的地址、 进程同步和通信机制、资源清单、进程同步和通信机制、资源清单、链接指针。链接指针。 PCBPCB的组织方式的组织方式 - - 链接方式链接方式 把具有相同状态的把具有相同状态的PCBPCB链接成一个队列,这样可形成就绪链接成一个队列,这样可形成就绪队列、若干个阻塞队列和空队列等队列、若干个阻塞队列和空队列等 - - 索引方式索引方式 系统根据所有进程的状态建立几张索引表系统根据所有进程的状态建立几张索引表3.2 进程3.2 进程图3
19、-10 按索引方式组织的PCB3.2 进程q进程控制进程控制 进程控制的进程控制的主要任务主要任务是创建和撤消进程以及实现进程的是创建和撤消进程以及实现进程的状态转换,进程控制一般由操作系统的内核来实现。操作系统状态转换,进程控制一般由操作系统的内核来实现。操作系统内核通常是运行在系统态的。内核通常是运行在系统态的。 操作系统内核操作系统内核 定义定义 通常,将一些与硬件紧密相关的模块诸如中断处理程序、通常,将一些与硬件紧密相关的模块诸如中断处理程序、各种常用设备的驱动程序以及运行频率较高的模块都安排在紧各种常用设备的驱动程序以及运行频率较高的模块都安排在紧靠硬件的软件层次中并使它们常驻内存,
20、以便提高操作系统的靠硬件的软件层次中并使它们常驻内存,以便提高操作系统的运行效率,并对它们加以特殊的保护,把这一部分称为运行效率,并对它们加以特殊的保护,把这一部分称为操作系操作系统的内核统的内核 3.2 进程 操作系统内核的功能操作系统内核的功能 中断处理中断处理:中断处理功能在操作系统中,既是内核的最基:中断处理功能在操作系统中,既是内核的最基本功能,也是整个操作系统赖以活动的基础,即操作系统的重本功能,也是整个操作系统赖以活动的基础,即操作系统的重要活动最终都将依赖于中断。要活动最终都将依赖于中断。 进程管理进程管理:进程创建、撤消、进程状态的转换:进程创建、撤消、进程状态的转换 、进程
21、调、进程调度等。度等。 资源管理中的基本操作资源管理中的基本操作:包括对时钟、:包括对时钟、I/OI/O设备和文件系设备和文件系统进行控制和管理的基本操作统进行控制和管理的基本操作。 原子操作原子操作 所谓所谓原子操作原子操作是指:一个操作中的所有动作,要么全做,是指:一个操作中的所有动作,要么全做,要么全不做。换言之,原子操作是一个不可分割的操作要么全不做。换言之,原子操作是一个不可分割的操作 内核在执行上述操作时,往往是通过执行各种原语操作内核在执行上述操作时,往往是通过执行各种原语操作来实现的。来实现的。 3.2 进程 进程的创建进程的创建 进程图进程图 进程图是用于描述进程家族关系的有
22、向树进程图是用于描述进程家族关系的有向树 子进程可以继承父进程所拥有的资源,当子进程撤销时,子进程可以继承父进程所拥有的资源,当子进程撤销时,应将从父进程那里获得的资源归还给父进程;在撤销父进程时,应将从父进程那里获得的资源归还给父进程;在撤销父进程时,也必须同时撤销其所有的子进程也必须同时撤销其所有的子进程 引起创建进程的事件引起创建进程的事件 用户登录用户登录 作业调度作业调度 提供服务提供服务 应用请求应用请求3.2 进程 进程的创建过程进程的创建过程 调用进程创建原语调用进程创建原语create( )create( )创建进程创建进程 申请空白申请空白PCB PCB 为新进程分配资源为
23、新进程分配资源 初始化进程控制块初始化进程控制块 将新进程插入就绪队列将新进程插入就绪队列 思考思考: :前两步骤是否可以颠倒顺序前两步骤是否可以颠倒顺序? ?3.2 进程 进程的终止进程的终止 引起进程终止的事件引起进程终止的事件 - - 正常结束正常结束 - - 异常结束异常结束 - - 外界干预外界干预 进程的终止过程进程的终止过程 调用进程终止原语调用进程终止原语destroy( )destroy( )终止进程终止进程 根据被终止进程的标识符从根据被终止进程的标识符从PCBPCB集合中检索出该进程的集合中检索出该进程的PCBPCB,从中读出该进程的状态,从中读出该进程的状态 若被终止进
24、程正处于执行状态,应立即终止该进程的执若被终止进程正处于执行状态,应立即终止该进程的执行并设置调度标志为真行并设置调度标志为真 3.2 进程 若该进程还有子孙进程,还应将其所有子孙进程予以终止若该进程还有子孙进程,还应将其所有子孙进程予以终止 将该进程所拥有的全部资源,或者归还其父进程或者归还将该进程所拥有的全部资源,或者归还其父进程或者归还给系统给系统 释放进程的释放进程的PCBPCB 进程的阻塞与唤醒进程的阻塞与唤醒 引起进程阻塞和唤醒的事件引起进程阻塞和唤醒的事件 - - 请求系统服务请求系统服务 - - 启动某种操作启动某种操作 - - 新数据尚未到达新数据尚未到达 - - 无新工作可
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第3章 进程与进程管理ppt课件 进程 管理 ppt 课件
限制150内