版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1 1第二章 进程的描述与控制复习复习进程是什么?进程实体组成?进程是什么?进程实体组成?进程的特征?与程序的区别。进程的特征?与程序的区别。进程的状态及转换进程的状态及转换2 2第二章 进程的描述与控制进程特征:进程特征:动态性、并发性、独立性、异步性动态性、并发性、独立性、异步性进程实体(进程影像)组成:进程实体(进程影像)组成:程序、程序、数据、进程控制块(数据、进程控制块(PCB)。)。PCB是系统感知进程存在的是系统感知进程存在的唯一标唯一标识识。PCB包含进程的描述信息、控包含进程的描述信息、控制信息、资源信息等。制信息、资源信息等。3进程与程序的区别:1)进程是一次运行的过程,属
2、于一种动态的概念;进程是一次运行的过程,属于一种动态的概念;而程序是而程序是指令的集合,是一个静态的概念。指令的集合,是一个静态的概念。5) 一个程序可以对应多个进程。一个程序可以对应多个进程。当当同一程序同一程序同时运行于若干同时运行于若干个个不同的数据集合不同的数据集合上时,它将属于若干个上时,它将属于若干个不同的进程不同的进程。3)进程是有生命期的;进程是有生命期的;而程序是永久的。而程序是永久的。2)进程可以并发执行;进程可以并发执行;而程序不能。而程序不能。4)进程是系统资源分配的独立单位,进程是系统资源分配的独立单位,而程序则不行。而程序则不行。 编译程序编译程序 user1.c
3、user2.c4 4第二章 进程的描述与控制进程状态及转换进程状态及转换就绪就绪执行执行等待等待阻塞阻塞调度调度1.时间片到时间片到2.高优先级高优先级等待某事等待某事件而睡眠件而睡眠因等待事件因等待事件发生而唤醒发生而唤醒创建创建终止终止结束结束5 5第二章 进程的描述与控制CPU就就 绪绪 队队 列列阻阻 塞塞 队队 列列 1时间片完、高优先级时间片完、高优先级进程进程调度调度事件事件1出现出现完成完成阻阻 塞塞 队队 列列 2事件事件2出现出现阻阻 塞塞 队队 列列 3事件事件n出现出现.等待事件等待事件1等待事件等待事件2等待事件等待事件n创建创建进程进程6 6第二章 进程的描述与控制
4、7 7第二章 进程的描述与控制 将内存中暂时不能运行的进程,或将内存中暂时不能运行的进程,或暂时不用的数据和程序,暂时不用的数据和程序,换出到外存换出到外存,以腾出足够的内存空间,把已具备运行以腾出足够的内存空间,把已具备运行条件的进程,或进程所需要的数据和程条件的进程,或进程所需要的数据和程序,序,换入内存换入内存。交换技术交换技术8 8第二章 进程的描述与控制挂起(挂起(Suspend)操作:)操作:把一个进程从把一个进程从内存内存转到转到外存外存; 可能有以下几种情况:可能有以下几种情况:阻塞阻塞 (活动阻塞活动阻塞) 阻塞挂起阻塞挂起 (静止阻塞静止阻塞) 就绪就绪 (活动就绪活动就绪
5、) 就绪挂起就绪挂起 (静止就绪静止就绪) 执行执行 就绪挂起就绪挂起 (静止就绪静止就绪) 9 9第二章 进程的描述与控制阻塞阻塞对应对应唤醒唤醒,挂起挂起对应对应激活激活挂起与阻塞挂起与阻塞阻塞与否:阻塞与否:是否等待事件是否等待事件挂起与否:挂起与否:是否被换出内存是否被换出内存4种状态组合:种状态组合:就绪:就绪:进程在内存,准备执行进程在内存,准备执行阻塞:阻塞:进程在内存,等待事件进程在内存,等待事件就绪挂起:就绪挂起:进程在外存,需调入内存,准备执行进程在外存,需调入内存,准备执行阻塞挂起:阻塞挂起:进程在外存,等待事件进程在外存,等待事件10 10第二章 进程的描述与控制2.2
6、.3 2.2.3 挂起操作和进程状态的转换挂起操作和进程状态的转换1. 1. 挂起操作的引入挂起操作的引入引入挂起操作的原因,是基于系统和用户的如下需要:引入挂起操作的原因,是基于系统和用户的如下需要:(1) 终端用户的需要。终端用户的需要。(2) 父进程请求。父进程请求。(3) 负荷调节的需要。负荷调节的需要。为运行进程为运行进程提供足够内存提供足够内存:资源:资源紧张时,暂停某些进程,如:紧张时,暂停某些进程,如:CPU繁忙(或实时任务执行),繁忙(或实时任务执行),内存紧张内存紧张(4) 操作系统的需要。操作系统的需要。 (5) 进程全部阻塞,处理机空闲。进程全部阻塞,处理机空闲。11
7、11第二章 进程的描述与控制12 12第二章 进程的描述与控制激活(激活(Activate):):把一个进程从把一个进程从外存转到内存外存转到内存;可能有以下几种情况:可能有以下几种情况:就绪挂起就绪挂起就绪:就绪:没有就绪进程没有就绪进程或或挂起就绪进程挂起就绪进程优先级高优先级高于就绪进程时,会进行这种转换;于就绪进程时,会进行这种转换;阻塞挂起阻塞挂起阻塞:阻塞:当一个进程当一个进程释放足够内存释放足够内存时,时,系统会把一个高优先级阻塞挂起(系统认为会很系统会把一个高优先级阻塞挂起(系统认为会很快出现所等待的事件)进程激活;快出现所等待的事件)进程激活;13 13第二章 进程的描述与控
8、制活动就绪状态活动就绪状态(Readya):进程在进程在内存,内存,准备进入运行状态;准备进入运行状态;活动阻塞状态活动阻塞状态(Blockeda):进程在进程在内存内存并等待某事件的出现;并等待某事件的出现;静止阻塞状态(静止阻塞状态(Blockeds):):进程在进程在外存外存并等待某事件的出现;并等待某事件的出现;静止就绪状态(静止就绪状态(Readys):):进程在进程在外存外存,但只要进入内存,即,但只要进入内存,即可准备运行;可准备运行;14 14第二章 进程的描述与控制2. 2. 引入挂起原语操作后三个进程状态的转换引入挂起原语操作后三个进程状态的转换在引入挂起原语在引入挂起原语
9、Suspend和激活原语和激活原语Active后,在它们的作后,在它们的作用下,进程将可能发生以下几种状态的转换:用下,进程将可能发生以下几种状态的转换:(1) 活动就绪活动就绪静止就绪。静止就绪。一般,一般,OS挂起阻塞进程,但有时挂起阻塞进程,但有时也会挂起就绪进程,释放足够的内存空间。也会挂起就绪进程,释放足够的内存空间。(2) 活动阻塞活动阻塞静止阻塞。静止阻塞。OS通常将阻塞进程换出,腾出内通常将阻塞进程换出,腾出内存空间。存空间。(3) 静止就绪静止就绪活动就绪。活动就绪。OS需要调入内存执行。需要调入内存执行。(4) 静止阻塞静止阻塞静止就绪。静止就绪。期待的事件出现。期待的事件
10、出现。15 15第二章 进程的描述与控制15时间片到时间片到执行执行就绪就绪阻塞阻塞进程调度进程调度等待某事件发生等待某事件发生而阻塞而阻塞所等待的事件发生所等待的事件发生而唤醒而唤醒 进程状态的扩展及其转换进程状态的扩展及其转换 外存外存 内存内存静止静止就绪就绪静止静止阻塞阻塞所等待的事件发生所等待的事件发生而唤醒而唤醒换出换出换出换出换进换进换进换进创建创建终止终止许可许可挂起挂起许可许可终止终止3. 3. 引入挂起操作进程状态的转换引入挂起操作进程状态的转换16 16第二章 进程的描述与控制3. 3. 引入挂起操作进程状态的转换引入挂起操作进程状态的转换(1) 活动阻塞活动阻塞静止阻塞
11、;静止阻塞; (2) 静止阻塞静止阻塞活动阻塞;活动阻塞;(3) 活动就绪活动就绪静止就绪;静止就绪; (4) 静止就绪静止就绪活动就绪;活动就绪; (5) 静止阻塞静止阻塞静止就绪静止就绪(6) 创建创建静止就绪:如果内存空间不足。静止就绪:如果内存空间不足。(7) 执行执行静止就绪:静止就绪: (8) 活动阻塞活动阻塞执行:执行:对对抢先式抢先式分时系统,当有分时系统,当有高优先级高优先级阻塞挂起进程因事件出现而进入就绪阻塞挂起进程因事件出现而进入就绪挂起时,系统可能会把运行进程转到就绪挂起状态挂起时,系统可能会把运行进程转到就绪挂起状态17 17第二章 进程的描述与控制2.2.4 2.2
12、.4 进程管理中的数据结构进程管理中的数据结构1. 1. 操作系统中用于管理控制的数据结构操作系统中用于管理控制的数据结构 OS是将各类是将各类资源抽象资源抽象为各种为各种数据结构数据结构。 对于每个资源和每个进程都设置了一个数据结构,用于对于每个资源和每个进程都设置了一个数据结构,用于表征其实体,我们称之为表征其实体,我们称之为资源信息表资源信息表或或进程信息表进程信息表,其中包,其中包含了含了资源或进程的标识、描述、状态资源或进程的标识、描述、状态等信息以及等信息以及一批指针一批指针。 通过这些指针,可以将同类资源或进程的信息表,或者通过这些指针,可以将同类资源或进程的信息表,或者同一进程
13、所占用的资源信息表分类链接成不同的队列,便于同一进程所占用的资源信息表分类链接成不同的队列,便于操作系统进行查找。操作系统进行查找。 18 18第二章 进程的描述与控制OS管理的这些数据结构一般分为以下四类:管理的这些数据结构一般分为以下四类:内存表内存表、设备表设备表、文件表文件表和用于进程管理的和用于进程管理的进程表进程表,通常进程表又被,通常进程表又被称为称为进程控制块进程控制块PCB。 19 19第二章 进程的描述与控制2. 2. 进程控制块进程控制块PCBPCB的作用的作用(1) 作为作为独立运行基本单位独立运行基本单位的的标志标志。唯一标志唯一标志(2) 能能实现间断性实现间断性运
14、行方式。运行方式。 CPU现场保护和恢复现场保护和恢复 (3) 提供提供进程管理所需要的信息进程管理所需要的信息。 内外存起始地址、资源清单内外存起始地址、资源清单(4) 提供提供进程调度所需要的信息进程调度所需要的信息。 状态、优先级、执行等待时间状态、优先级、执行等待时间(5) 实现与其它进程的实现与其它进程的同步与通信同步与通信。2020第二章 进程的描述与控制3. 3. 进程控制块中的信息进程控制块中的信息在进程控制块中,主要包括:在进程控制块中,主要包括:1) 进程标识符进程标识符 (1) 外部标识符。外部标识符。(2) 内部标识符。内部标识符。2) 处理机状态处理机状态处理机状态信
15、息处理机状态信息也称为也称为处理机的上下文处理机的上下文,主要,主要是由处理机的各种寄存器中的内容组成的。是由处理机的各种寄存器中的内容组成的。 通用寄通用寄存器、指令计数器、程序状态字、用户栈指针存器、指令计数器、程序状态字、用户栈指针21 21第二章 进程的描述与控制3) 进程调度信息进程调度信息 进程状态进程状态, 进程优先级进程优先级, 进程调度所需的其它进程调度所需的其它信息,它们与所信息,它们与所采用的采用的进程调度算法有关进程调度算法有关,比如,进程已等,比如,进程已等待待CPU的时间总和、进程已执行的的时间总和、进程已执行的时间时间总和等;总和等; 事件事件,是指进程由执行状态
16、转变为阻塞状态所等待发生的事件,即是指进程由执行状态转变为阻塞状态所等待发生的事件,即阻塞原因。阻塞原因。4) 进程控制信息进程控制信息是指用于进程控制所必须的信息,它包括:是指用于进程控制所必须的信息,它包括: 程序和程序和数据的地址数据的地址 ; 进程同步和通信机制进程同步和通信机制; 资源清单资源清单; 链链接指针接指针2222第二章 进程的描述与控制4. 4. 进程控制块的组织方式进程控制块的组织方式PCB组织方式有以下三种。组织方式有以下三种。 (1) 线性方式,线性方式,即将系统中即将系统中所有所有的的PCB都组织在一张线性表中,将都组织在一张线性表中,将该该表的首址存放在内存的一
17、个专用表的首址存放在内存的一个专用区域区域中。该方式实现简单、开销小,中。该方式实现简单、开销小,但每次查找时都需要扫描整张表,但每次查找时都需要扫描整张表,因此适合进程数目不多的系统。因此适合进程数目不多的系统。2323第二章 进程的描述与控制(2) 链接方式,链接方式,即把具有即把具有相同状态进程相同状态进程的的PCB分别通过分别通过PCB中的链接字链接成一个队列。这样,可以形成中的链接字链接成一个队列。这样,可以形成就绪队就绪队列列、若干个阻塞队列若干个阻塞队列和空白队列等。和空白队列等。2424第二章 进程的描述与控制(3) 索引方式,索引方式,即系统根据所有进程状态的不同,建立即系统
18、根据所有进程状态的不同,建立几张索引表,例如,就绪索引表、阻塞索引表等,并把各索几张索引表,例如,就绪索引表、阻塞索引表等,并把各索引表在内存的首地址记录在内存的一些专用单元中。在每个引表在内存的首地址记录在内存的一些专用单元中。在每个索引表的表目中,记录具有相应状态的某个索引表的表目中,记录具有相应状态的某个PCB在在PCB表中表中的地址。的地址。第二章 进 程 管 理 2.3 进程控制进程控制 与与硬件紧密硬件紧密相关的模块(中断处理程序)相关的模块(中断处理程序) 常用设备的常用设备的驱动程序驱动程序(键盘、显示器)(键盘、显示器) 运行频率高运行频率高的模块(时钟管理、进程调度等)的模
19、块(时钟管理、进程调度等) 关键性的数据结构关键性的数据结构(如进程控制块(如进程控制块PCB)2.3.1 OS内核内核第二章 进 程 管 理 2.3 进程控制进程控制 处理机两种执行状态处理机两种执行状态:系统态系统态和和用户态用户态。两种两种执行模式执行模式 系统态:系统态:核心态核心态(Kernel State),管态管态。具有较高。具有较高的特权,能执行一切命令,访问所有寄存器和的特权,能执行一切命令,访问所有寄存器和存储区。存储区。OS内核运行在核心态,进程控制是由内核运行在核心态,进程控制是由OS内核实现的。内核实现的。 用户态用户态(User State):目态。:目态。具有较低
20、的特权,具有较低的特权,只能执行规定的指令,访问指定的寄存器和存只能执行规定的指令,访问指定的寄存器和存储区。运行用户程序。储区。运行用户程序。OS内核两大内核两大方面功能方面功能进程管理进程管理存储器管理存储器管理 设备管理设备管理资源管理资源管理中断处理中断处理原语原语 时钟时钟操作操作 管理管理支撑支撑硬件如系统调用、键如系统调用、键盘命令输入、进盘命令输入、进程调度、设备驱程调度、设备驱动、文件操作等。动、文件操作等。时间片轮转调时间片轮转调度、截止时间度、截止时间控制、最长时控制、最长时间控制等间控制等原语:由若干条指令构成、原语:由若干条指令构成、用于完成一定功能的一个过用于完成一
21、定功能的一个过程。程。原子操作:一个操作中的所原子操作:一个操作中的所有动作要么不做、要么全部有动作要么不做、要么全部完成。完成。进程的调度、分派、进程的调度、分派、创建、撤消等。创建、撤消等。内存分配与回收、内存分配与回收、内存保护与对换、内存保护与对换、虚拟内存管理等。虚拟内存管理等。设备驱动程序:缓和设备驱动程序:缓和CPU与与I/O不匹配的矛盾,不匹配的矛盾,实现设备分配和设备的实现设备分配和设备的独立性等。独立性等。O S内核2.3.2 进程的创建 当当子进程创建子进程创建时,子进程时,子进程继承继承父进程所拥有的资源;父进程所拥有的资源; 当当子进程撤消子进程撤消时将从父进程那里继
22、承的资源时将从父进程那里继承的资源归还归还给父进程。给父进程。 撤消父进程时撤消父进程时,也必须同时,也必须同时撤销其所有子进程撤销其所有子进程ABCDEFGHIJ父进程(Parent Process)子进程(Progeny Process)祖先(Ancestor)Unix构成进程家族,构成进程家族,Windows不存在进程的层次结构不存在进程的层次结构进程创建过程创建进程请求调用创建进程原语Creat()申请PCB、分配进程ID为进程分配资源初始化PCB将进程放进Ready队列产生新进程事件:用户登录:当合法用户登录时作业调度:批处理系统,把一个作业调度执行时。提供服务:当系统收到服务请求时
23、。应用请求:当应用本身需要并发进程时。为新进程分配一个唯一为新进程分配一个唯一的进程的进程ID,并申请一个空并申请一个空白的白的PCB。为进程的程序代码、为进程的程序代码、数据用户栈分配内存数据用户栈分配内存空间。空间。(1)将系统分配的进)将系统分配的进程程ID、父进程、父进程ID写入写入PCB。(2)将程序计数器指)将程序计数器指向程序的入口地址、向程序的入口地址、栈指针指向栈顶。栈指针指向栈顶。(3)设置进程状态、)设置进程状态、优先级等。优先级等。将进程拥有的资源归还给父进程或OS2.3.3 进程的终止引发进程的终止事件调用进程终止原语Destroy()从PCB集中检索出该进程的PCB读出进程的状态在Running状态:终止执行、设置调度状态为真。有子进程:终止所有的子孙进程。把对应的PCB设成空三大类:三大类:1、正常结束;、正常结束;2、异常结束:、异常结束:(
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 大学后勤奖惩制度规定
- 剧院技术部内部奖惩制度
- 施工车辆安全奖惩制度
- 考核工资分配与奖惩制度
- 中西医联合查房会诊制度
- 安全评价人员奖惩制度
- 工程质量验收奖惩制度
- 无烟学校控烟奖惩制度
- 小学生三年级奖惩制度
- 电厂保安奖惩制度范本
- 宫颈癌根治性放疗指南2026
- 2026年春节后复工复产安全培训试题(附答案)
- 未来五年卫星通信地面站上下变频器行业跨境出海战略分析研究报告
- 2025年西南财经大学天府学院辅导员考试笔试题库附答案
- 通信工程师在电信公司的绩效评定表
- 塞来昔布课件
- 2025年兵团两委考试题及答案
- 党的二十届四中全会学习试题
- 通信建设项目管理
- 血液透析合并心力衰竭患者的护理要点
- 2025年黑龙江单招真题卷全套
评论
0/150
提交评论