操作系统第三章处理机管理1

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

一般地说,作业调度目标主要有以下四点: 一般地说,作业调度目标主要有以下四点: (1)对所有的作业应该是公平合理的; )对所有的作业应该是公平合理的; (2)应使设备有高的利用率; )应使设备有高的利用率; (3)每天执行尽可能多的作业; )每天执行尽可能多的作业; (4)有快的响应时间。 )有快的响应时间。
二、低级调度(Low 二、低级调度(Low Level Scheduling) Scheduling)
也称进程调度 进程调度,它决定在就绪队列中哪 进程调度 一个进程将分配到处理机,并由分派程序把 处理机实际分配给这个进程。
就绪队列进程
获得处理机
进程调度可采用下述两种方式:
非抢占方式 抢占方式
抢占原则: (1)时间片原则 (2)优先权原则 (3)短作业优先原则
进程调度
进程调度的任务就是按照一定的策略负责把 处理机分配给某一就绪进程。 处理机分配给某一就绪进程。由进程调度程序具 体实现处理机在进程之间的转换。 体实现处理机在进程之间的转换。
进程调度的时机
进程调度的时机与引起进程调度的原因 以及进程调度的方式有关。 以及进程调度的方式有关。 一、引起进程调度的原因 (1)正在执行的进程执行完毕。 )正在执行的进程执行完毕。 (2)执行中的进程提出 请求后 )执行中的进程提出I/O请求后 被阻塞。 被阻塞。 (3)执行某种原语操作,比如 )执行某种原语操作,比如wait(s), , block原语,wakeup原语。 原语, 原语。 原语 原语
§3.2 调度算法
中调度的实质是一种资源分配, 在OS中调度的实质是一种资源分配, 中调度的实质是一种资源分配 因而调度算法是指: 因而调度算法是指:根据系统的资源分配 策略所规定的资源分配算法。 策略所规定的资源分配算法。
3.2.1先来先服务和短作业优先调度算法 3.2.1先来先服务和短作业优先调度算法
(4)分时系统中,由于分配给该进程的时 )分时系统中, 间片已经用完。 间片已经用完。 (5)执行中进程自己调用阻塞原语将自己 ) 阻塞起来。 阻塞起来。 (6)执行完系统程序后返回用户进程时, )执行完系统程序后返回用户进程时, 可看作系统进程执行完毕,从而可以调度选 可看作系统进程执行完毕, 择一个新的用户进程执行。 择一个新的用户进程执行。 以上是在不可剥夺方式下的引起进程调度 的原因, 执行方式是可剥夺时, 的原因,在CPU执行方式是可剥夺时,还有 执行方式是可剥夺时 一个原因。 一个原因。
第三章 处理机调度与死锁
3.1 处理机调度的基本概念
处理机调度的基本类型:
按调度层次分:
一、高级调度 High Scheduling (Long-Term Scheduling ) 二、低级调度 Low -Level Scheduling(Short-Term Scheduling P71 三、中级调度 Intermediate-Level Scheduling(Medium-Term
作业调度功能
1、记录系统中各作业的状态。 记录系统中各作业的状态。 不同的批处理系统,作业控制块JCB JCB的内容 不同的批处理系统,作业控制块JCB的内容 也不同。一般JCB有以下内容: 也不同。一般JCB有以下内容: JCB有以下内容 (1)作业名:由用户提供,系统把它转换为 )作业名:由用户提供, 系统可识别的作业标识符。 系统可识别的作业标识符。 (2)作业类型:计算型、管理型、图形设计 )作业类型:计算型、管理型、 型。 资源要求:由用户提供,要求的内、 (3)资源要求:由用户提供,要求的内、外 存大小,外设类型台数,软件支持, 存大小,外设类型台数,软件支持,作业估计 执行时间。 执行时间。
响应时间是从用户通过键盘提交一个请求开始, 响应时间是从用户通过键盘提交一个请求开始, 用户通过键盘提交一个请求开始 直至系统首次产生响应为止的时间。 首次产生响应为止的时间 直至系统首次产生响应为止的时间。或者说直到 屏幕上显示出结果为止的一段时间间隔。 屏幕上显示出结果为止的一段时间间隔。 包括: 包括: (1)从键盘输入的请求信息传送到处理机的时间; )从键盘输入的请求信息传送到处理机的时间; (2)处理机对请求信息进行处理的时间; )处理机对请求信息进行处理的时间; (3)将所形成的响应回送到终端显示器的时间。 )将所形成的响应回送到终端显示器的时间。
作业的四个状态: 作业的四个状态
输入状态:作业的信息正在从输入设备上预输入。 输入状态:作业的信息正在从输入设备上预输入。 后备状态:作业预输入结束但尚未被选中执行。 后备状态:作业预输入结束但尚未被选中执行。 执行状态: 执行状态:作业已经被选中并构成进程去竞争处 理器资源以获得运行。 理器资源以获得运行。 完成状态:作业已经运行结束,正在等待缓输出。 完成状态:作业已经运行结束,正在等待缓输出。
超时
进程调度 processor
完成
事件1出现
等待事件1
等待事件2 事件2出现

事件n出现


等待事件n
具有高,低两级调度的调度队列模型 (批处理系统)
作业调度 后备作业队列 就绪队列
超时
进程调度 processor
完成
交互式用 户
中级调度 挂起就绪队列
挂起等待队列
中级调度
等待队列 事件 出现
等待事件
作业调度
作业调度是针对多道程序系统设计的。 作业调度是针对多道程序系统设计的。它 主要是完成作业从后备状态到执行状态的 的转变。 转变以及从执行状态到完成状态的转变。
执行状态
输 后 入 备 状 预输入 状 态 完成 态
执行状态
运行
进程调度 完 中级调度
作业 调度
就绪
等待
成 状 缓输出 态
作业调度与进程调度的关系
2、带权周转时间
带权周转时间: 带权周转时间:Wi=Ti/Tr 作业周转时间与作业执行时间之比。 作业周转时间与作业执行时间之比。 Ti:周转时间, Tr :实际执行时间 :周转时间, 平均带权周转时间: 平均带权周转时间:W=∑ Wi /n n为作业个数。 为作业个数。 为作业个数
3、分时系统中,还要考虑响应时间
3.1.2 进程调度队列模型
1、仅有进程调度的调度队列模型 2、具有高级和低级调度的调度队列模型 3、同时具有三级调度的调度队列模型
时间片完
交互用户 事 件 出 现
就 绪 队 列
进程调度
进源自文库完成 cpu
阻 塞 队 列
等待事件
仅有进程调度的调度队列模型(分时系统)
作业调度 后备作业队列 就绪队列
进程切换的步骤
保存被中断进程的处理器现场信息。 保存被中断进程的处理器现场信息。 修改被中断进程的进程控制块的有关信息, 修改被中断进程的进程控制块的有关信息, 如进程状态等。 如进程状态等。 把被中断进程的进程控制块加入有关队列。 把被中断进程的进程控制块加入有关队列。 选择下一个占有处理器运行的进程。 选择下一个占有处理器运行的进程。 修改被选中进程的进程控制块的有关信息。 修改被选中进程的进程控制块的有关信息。 根据被选中进程设置操作系统用到的地址转换和存 储保护信息。 储保护信息。 根据被选中进程恢复处理器现场。 根据被选中进程恢复处理器现场。
2、从后备队列中挑选一部分作业投入运行
作业调度程序根据一定调度的算法, 作业调度程序根据一定调度的算法,从后备队 列中挑选出一部分作业进入内存。 列中挑选出一部分作业进入内存。
3、为被选中作业做好执行前的准备工作 、
作业调度程序为作业建立进程, 作业调度程序为作业建立进程,分配它们所 需要的系统资源。 需要的系统资源。
Scheduling
按OS的类型分:
批处理调度 分时调度和实时调度 多处理机调度等
就绪态
运行态 新建态
终止态
等待态 低级调度 挂起等待态 挂起就绪态
高级调 度
中级调度
后备作业 操作系统 CPU
对换进程
一、高级调度(作业调度) High Level Scheduling
决定允许哪些作业竞争系统资源 允许哪些作业竞争系统资源。也就是说,高级调 允许哪些作业竞争系统资源 度用于把外存上处于后备状态的作业按照一定的算法,选 取出一个作业,当内存空间满足其要求时,为它分配存储 空间,调入内存,创建该作业的进程,再分配它所需的 I/0设备及其它资源,再将新进程排在就绪队列上,使新 进程具有了获得处理机的资格。
4、在作业执行结束时做善后处理工作
输出作业管理信息,回收资源、撤消与该 输出作业管理信息,回收资源、 作业有关的所有进程,以及作业控制块。 作业有关的所有进程,以及作业控制块。
作业调度目标和性能评价
一、作业调度目标 作业调度的主要原则应是在单位时间内运行 的作业并且应使CPU尽可能处于运行状 尽可能多的作业并且应使 尽可能处于运行状 的利用率最大; 态,使CPU的利用率最大;作业调度还应使输入输 的利用率最大 出设备并行运行; 出设备并行运行;处于多道程序中的各个作业还应 具有平等的运行机会。 具有平等的运行机会。
(4)资源使用情况。 )资源使用情况。 ·作业进入系统时间:所有信息输入到输入井, 作业进入系统时间: 作业进入系统时间 所有信息输入到输入井, 作业的状态成为后备状态的时间。 作业的状态成为后备状态的时间。 ·开始执行时间:作业被作业调度程序选中, 开始执行时间:作业被作业调度程序选中, 开始执行时间 状态由后备转为执行的时间。 状态由后备转为执行的时间。 ·内存地址:作业的内存区起始地址。 内存地址: 内存地址 作业的内存区起始地址。 ·外设台数:系统分配的外设实际台数。 外设台数: 外设台数 系统分配的外设实际台数。 (5)优先级:可由用户给定也可由系统动态产 )优先级: 生,决定作业的调度次序。 决定作业的调度次序。 当前状态:作业当前所处的状态。 (6)当前状态:作业当前所处的状态。
1、先来先服务调度算法 、 先来先服务FCFS调度算法是一种最 先来先服务 调度算法是一种最 简单的调度算法。 简单的调度算法。 作业调度中采用该算法时, 作业调度中采用该算法时,每次调度 是从后备作业队列中选择一个或多个最 先进入该队列的作业,将它们调入内存, 先进入该队列的作业,将它们调入内存, 为它们分配资源、创建进程,然后放入 为它们分配资源、创建进程, 就绪队列。 就绪队列。
二、作业调度算法的性能评价
1.周转时间: Ti =Tei-Tsi 周转时间: 周转时间 由等待时间、 由等待时间、执行时间 组成 Tei为作业 的完成时间,Tsi为作业的提交 为作业i的完成时间 的完成时间, 时间。 时间。 平均周转时间: 平均周转时间: T=∑Ti /n n>=1,n为作业流的作业个数。 为作业流的作业个数。 , 为作业流的作业个数
(7)一个比正在运行进程的优先数更高的进 ) 程进入就绪队列,从而引起调度。 程进入就绪队列,从而引起调度。 在以上所列的几种原因之一发生的情况下, 在以上所列的几种原因之一发生的情况下, OS进行进程调度。 进行进程调度。 进行进程调度
进程的切换
进程的切换就是让处于运行态的进程中断运 让出处理器,以便另外一个进程运行。 行,让出处理器,以便另外一个进程运行。
三、中级调度(Intermediate 三、中级调度(Intermediate Level Scheduling) Scheduling)
涉及进程在内外存间 进程在内外存间的交换,从存储 进程在内外存间 器资源管理的角度来看,把进程的部分或 全部换出到外存上,可为当前运行进程的 执行提供所需内存空间,将当前进程所需 部分换入到内存。指令和数据必须在内存 里才能被处理机直接访问 目的:是为了提高内存的利用率和系统吞吐 量。
在进程调度中,采用 在进程调度中,采用FCFS时每次调度 时每次调度 是从就绪队列中, 是从就绪队列中,选择一个最先进入该队 列的进程,把处理机分配给它, 列的进程,把处理机分配给它,使之投入 运行, 运行,该进程一直运行到完成或发生某事 件而阻塞后,才放弃处理机。 件而阻塞后,才放弃处理机。
具有三级调度时的调度队列模型
3.1.3 选择调度方式和调度算法的 若干准则
1、面向用户的准则 1 (1)周转时间短 (2)响应时间快 (3)截止时间的保证 (4)优先权准则
选择调度方式和调度算法的 若干准则(续)
2、面向系统的准则 (1)系统吞吐量高。 (2)处理机利用率好。 (3)各类资源的平衡利用。
相关文档
最新文档