第三章进程管理

  • 格式:ppt
  • 大小:384.00 KB
  • 文档页数:56

下载文档原格式

  / 56
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

解挂 active
Readys
挂起suspend
事件发生 wakeup (唤醒)
Blockeds
图:具有挂起功能的进 程状态变化
2020/9/11
• 下列进程状态的转换中,哪些是不正确的? 1、活动就绪——运行 被进程调度程序选中,获得CPU 2、运行——活动就绪 时间片用完,或CPU被优先级高的进程抢占 3、活动就绪——活动等待 不正确 4、活动等待——活动就绪 进程获得等待的事件或设备。 5、运行——活动等待 进程需要获得某一事件或资源后,才能继续运行 6、运行——挂起就绪 系统故障或用户要求挂起自己的进程 7、活动就绪——挂起就绪 CPU负荷过重或系统出现故障 8、挂起就绪——活动就绪 CPU负荷减轻或系统恢复正常 9、挂起等待——挂起就绪 进程获得等待的事件或设备。 10、活动等待——挂起等待 内存的负荷过重或系统出现故障 11、挂起等待——活动等待 内存的负荷减轻或系统恢复正常 12、挂起就绪——挂起等待 不正确 13、活动就绪——挂起等待 不正确
说明:在5-10时间段,由于 B进程在处理机上运行,故进程B 处于运行状态;在10-20时间段,由于等待I/O2的工作,故进 程B的状态转为等待状态;在20-25时间段,由于I/O2工 作完成,但CPU被进程A占用,故进程B处于就绪状态; 在25-30时间段,由于获得了运行所需的全部资源(包括
2020I/9//1O1 2和CPU),故进程B处于运行状态。
2020/9/11
1. 多道程序系统中程序的特点
并行性. 主存中存放多道作业,并同时处于运行状态; 制约性. 各程序因资源竞争或并行程序间需要相互协同
而引起的相互制约关系;
动态性. 各程序在系统中所处的状态不断变化的。 (运行—等待—运行)
用户程序A 请求盘输入
中断返回CPU空间,则可调度A,否则等待
3.2.2 进程的挂起和解除挂起的状态
实际上,为了更好地管理和调度进程及适应系统的功能目 标,许多系统中都有“挂起” 和“解除挂起 ” (即解挂)进程的 功能,被“挂起”的进程将从内存调至外存,此时它不能参 与争夺处理器。在系统中设置“挂起”和“解挂”功能的原因是
1. 系统有时可能出现故障或某些功能受到破坏,这时
的是“一个进程”,而该杀毒“进程”包含的则
2020/9/11 是“一个‘杀毒程序’和其调用的三个子程序,
§3.2 进程的状态和进程控制块
3.2.1 进程的状态及变化 ·进程有着“执行-暂停-执行 ” 的活动规律, 一般说来一个进程不是自始至终一口气运行到 底的。 ·各进程相互制约,当使它暂停的原因消失后, 它又可准备运行。因此进程有多种状态。
2020/9/11
三种基本状态: (1) 运行状态 (Running) 当一个进程正在处理机上运行时,称为运行状态。
(2) 就绪状态 (Ready) 一个进程获得了除处理机外的一切所需资源,一旦 得到处理机即可运行,称此进程处于就绪状态。
(3) 等待状态 (Blocked)
一个进程正在等待某一事件发生而暂时停止运行, 即使这时把处理机分配给此进程也无法运行。则称 此进程处于等待状态,又称为阻塞状态。
程序是一组指令的有序集合。
(一)进程同程序的差别: 1. 进程是程序的执行,属于动态,程序是静态的。
2.进程的存在是暂时的,程序的存在是永久的。因 为进程是 “一次运行活动 ” ,因此在活动结束 后进程也就不存在了。
2020/9/11
3. 进程=程序+数据+PCB (进程控制块),即进程 是一个程序及其数据在处理机上顺序地执行时所发 生的活动。
需要暂时将系统中的进程挂起,以便系统把故障消 除后,再恢复原来状态。
2. 用户检查自己作业的中间执行情况和中间结果时,因 同预期想法不符而产生怀疑,这时用户要求挂起他的 进程,以便进行某些检查和改正。
2020/9/11
3. 系统中有时负荷过重 (进程数过多),资源数相对 不足,从而造成系统效率下降,此时需挂起一部 分进程以调整系统负荷,等系统中负荷减轻后再 将挂起进程恢复运行。
具有挂起和解挂功能的系统中进程的状态,增加 了两个新的状态:
挂起就绪 (readys) 挂起等待 (Blockeds) 活动就绪 (readya) 活动等待 (Blockeda)
2020/9/11
Readya
事件发生
Blockeda
挂起 suspend
解挂 active
Running
挂起 suspend
用户程序B
请求带输入
CPU运行
监督程序 启动盘
磁盘操作 I/OA
磁带操作 I/OB
调度B
2020/9/11
启动带
中断处理
调度A
结束中断
中断处理 调度B
结束中断
设备运行
t
由于在多道程序系统带来的更为复杂的环境中,使程 序具有了并行、制约和动态的特征,使得原有的程 序概念已难以刻划和反映系统中的情况了。 (1) 程序概念反映不了系统中的“动态性”:程序
2020/9/11
如:等待磁盘机成为可用资源,或等待输入 输出任务完成,或等待其他进程给它发来信 息等
进程在系统中,其状态可以变化,各状态间变化如下图所示:
Running
③等待事件
Ready
④事件发生
Blocked
① 就绪状态的进程被进程调度程序选中后,就分配到处理机来运行,进入运行 状态。 其主要功能是按照某种原则将处理机分配给就绪 进程,它必须常驻主存,是操作系统内核的主要部分。
本身完全是一个静态的概念 (程序是完成某个功 能的指令集合),而系统中各程序实际上处于不 断变化的状态中程序概念反映不了这种动态性。
(2) 程序概念已不能反映了系统中的“并行性”
(3) 程序概念已不能反映了系统中的“制约性”
2020/9/11
二、进程的定义 进程是一个具有一定独立功能的程序关于
某个数据集合的一次运行活动。
第三章 进程管理
2020/9/11
§3.1 进程的概念
一、进程的引入
进程的概念是操作系统中最基本、最重要的概念。 它是在多道程序系统出现后,为了刻划系统内部出现 的情况,描述系统内部各作业的活动规律而引进的一 个新的概念。
引入进程这个概念的直接原因是:“程序”这个概念 已经难以刻画和反映多道程序系统中的情况。因而, 需要引入一个新的概念——“进程”。
②Βιβλιοθήκη Baidu运行状态的进程时间片用完不得不让出处理机,变为就绪状态。
③ 运行状态的进程需等待某一事件发生后,才能继续运行,变为等待状态。(如 请求I/O设备)
④ 等待状态的进程:若其等待的事件已发生,变为就绪状态。(如完成I/O任务)
2020/9/11
例:
A B I/O1 I/O2
0 5运行10 等待 2就0 绪25运行30
4. 一个程序可以对应多个进程。 例:3个源程序同时进行编译工作,编译工作由系统 中的“编译程序”负责,“编译程序”对任一程
序进行编译的过程都是一个进程。因此,即有一
个“编译程序”对应“三个进程”的现象。
5. 一个进程可以包含多个程序。 例:某“杀毒程序”在运行过程中,会调用到三个子
程序。此时,“杀毒程序”的一次杀毒活动对应