当前位置:文档之家› 第2章挂起和进程控制课件

第2章挂起和进程控制课件

(7) 执行→静止就绪: 第2章挂起和进程控制
为资源信息表或进程信息表,其中包含了 资源或进程的标识、描述、状态等信息以 及一批指针。
通过这些指针,可以将同类资源或进 程的信息表,或者同一进程所占用的资源 信息表分类链接成不同的队列,便于操作
第2章挂起和进程控制
分为以下四类:内存表、设备表、 文件表和用于进程管理的进程表, 通常进程表又被称为进程控制块 PCB。
第2章挂起和进程控制
2. 进程控制块PCB的作用 (1) 作为独立运行基本单位的标志。唯一标志 (2) 能实现间断性运行方式。 CPU现场保护和恢复 (3) 提供进程管理所需要的信息。
内外存起始地址、资源清单 (4) 提供进程调度所需要的信息。
状态、优先级、执行等待时间 (5) 实现与其它进程的同步与通信。
(1) 活动就绪→静止就绪。一般, OS挂起阻塞进程,但有时也会挂起 就绪进程,释放足够的内存空间。
(2) 活动阻塞→静止阻塞。OS 通常将阻塞进程换出,腾出内存空 间。
(3) 静止就绪→活动就绪。OS
Байду номын сангаас第2章挂起和进程控制
3. 引入挂起操作进程状态的转换
进程调度
终止
执行
等待某事件发生
终止
而阻塞
许可
第2章挂起和进程控制
索引表,例如,就绪索引表、阻 塞索引表等,并把各索引表在内 存的首地址记录在内存的一些专 用单元中。在每个索引表的表目 中,记录具有相应状态的某个 PCB在PCB表中的地址。
(1) 线性方式, 即将系统中所有的 PCB都组织在一张 线性表中,将该表 的首址存放在内存 的一个专用区域中。 该方式实现简单、
第2章挂起和进程控制
(2) 链接方式,即把具有相 同状态进程的PCB分别通过PCB 中的链接字链接成一个队列。这 样,可以形成就绪队列、若干个 阻塞队列和空白队列等。
4种状态组合: 就绪:进程在内存,准备执行 阻塞:进程在内存,等待事件 就绪挂起:进程在外存,需调入内存,准备执行 阻塞挂起:进程在外存,等待事件
阻塞对应唤醒,挂起对应激活
第2章挂起和进程控制
于系统和用户的如下需要: (1) 终端用户的需要。 (2) 父进程请求。 (3) 负荷调节的需要。为运
行进程提供足够内存:资源紧张 时,暂停某些进程,如:CPU繁 忙(或实时任务执行),内存紧
它们与所采用的进程调度算法有
关,比如,进程已等待CPU的时
间总和、进程已执行的时间总和
等;4) ④进程控事制信件息,是指进程由执行状
是指用于进程控制所必须的信息,它包括:① 程序和
态数据转的变地址为;②阻进塞程同状步和态通信所机制等;③待资发源清生单;的④ 链
接指针
事件,即阻塞原因。
第2章挂起和进程控制
第2章挂起和进程控制
活动就绪状态(Readya):进程在内存,准备进入运行状态; 活动阻塞状态(Blockeda):进程在内存并等待某事件的出现; 静止阻塞状态(Blockeds):进程在外存并等待某事件的出现; 静止就绪状态(Readys):进程在外存,但只要进入内存,即
可准备运行;
第2章挂起和进程控制
第2章挂起和进程控制
第2章挂起和进程控制
• 激活(Activate):把一个进程从外存转到内存; • 可能有以下几种情况:
• 就绪挂起就绪:没有就绪进程或挂起就绪进程 优先级高于就绪进程时,会进行这种转换;
• 阻塞挂起阻塞:当一个进程释放足够内存时, 系统会把一个高优先级阻塞挂起(系统认为会很 快出现所等待的事件)进程激活;
复习
进程是什么?进程实体组成? 进程的特征?与程序的区别。 进程的状态及转换
第2章挂起和进程控制
进程实体(进程影像)组成:程序、 数据、进程控制块(PCB)。
PCB是系统感知进程存在的唯一标 识。PCB包含进程的描述信息、控 制信息、资源信息等。
进程特征: 动态性、并发性、独立性、异步性
第2章挂起和进程控制
第2章挂起和进程控制
3. 进程控制块中的信息 在进程控制块中,主要包括: 1) 进程标识符
(1) 外部标识符。(2) 内部标识符。
2) 处理机状态 处理机状态信息也称为处理机的上下文,主要
是由处理机的各种寄存器中的内容组成的。 通用寄 存器、指令计数器、程序状态字、用户栈指针
第2章挂起和进程控制
级,③ 进程调度所需的其它信息,
阻塞队列 2 …...
阻塞队列 3
等待事件1 等待事件2

等待事件n
第2章挂起和进程控制
第2章挂起和进程控制
交换技术
将内存中暂时不能运行的进程,或 暂时不用的数据和程序,换出到外存, 以腾出足够的内存空间,把已具备运行 条件的进程,或进程所需要的数据和程 序,换入内存。
PCB能换出到外存? 换出到外存的进程现在是什么状态?
编译程序
user1.c
user2.c
第2章挂起和进程控制
3
进程状态及转换
创建
就绪
调度
执行 结束 终止
因等待事件 1.时间片到 发生而唤醒 2.高优先级 等待
阻塞
等待某事 件而睡眠
第2章挂起和进程控制
创建 进程 事件1出现
事件2出现 …
事件n出现
时间片完、高优先级
就绪队列
进程 调度
完成 CPU
阻塞队列 1
进程与程序的区别:
1)进程是一次运行的过程,属于一种动态的概念;而程序是 指令的集合,是一个静态的概念。 2)进程可以并发执行;而程序不能。 3)进程是有生命期的;而程序是永久的。 4)进程是系统资源分配的独立单位,而程序则不行。 5) 一个程序可以对应多个进程。当同一程序同时运行于若干 个不同的数据集合上时,它将属于若干个不同的进程。
第2章挂起和进程控制
• 挂起(Suspend)操作:把一个进程从内存转到外存;
• 可能有以下几种情况: • 阻塞 (活动阻塞) 阻塞挂起 (静止阻塞) • 就绪 (活动就绪) 就绪挂起 (静止就绪) • 执行 就绪挂起 (静止就绪)
第2章挂起和进程控制
挂起与阻塞
阻塞与否:是否等待事件 挂起与否:是否被换出内存
创建
许可
时间片到
就绪
所等待的事件发生
换进 而唤醒
阻塞
换进
内存
换出
挂起
换出
外存
静止 就绪
所等待的事件发生
静止 阻塞
而唤醒
进程状态的扩展及其转换
第2章挂起和进程控制
(2) 静止阻塞→活动阻塞; (3) 活动就绪→静止就绪; (4) 静止就绪→活动就绪; (5) 静止阻塞→静止就绪 (6) 创建→静止就绪:如果内 存空间不足。
相关主题