北京大学计算机专业操作系统第7讲-处理机调度.

上传人:我** 文档编号:117886335 上传时间:2019-12-11 格式:PPT 页数:17 大小:160KB
返回 下载 相关 举报
北京大学计算机专业操作系统第7讲-处理机调度._第1页
第1页 / 共17页
北京大学计算机专业操作系统第7讲-处理机调度._第2页
第2页 / 共17页
北京大学计算机专业操作系统第7讲-处理机调度._第3页
第3页 / 共17页
北京大学计算机专业操作系统第7讲-处理机调度._第4页
第4页 / 共17页
北京大学计算机专业操作系统第7讲-处理机调度._第5页
第5页 / 共17页
点击查看更多>>
资源描述

《北京大学计算机专业操作系统第7讲-处理机调度.》由会员分享,可在线阅读,更多相关《北京大学计算机专业操作系统第7讲-处理机调度.(17页珍藏版)》请在金锄头文库上搜索。

1、第四章 处理机调度 4.1 分级调度 4.2 作业调度 4.3 进程调度 4.4 调度算法 1 为什么要管理处理机 处理机是计算机系统中一个十分重要的资源。 早期计算机系统中,处理机为一个作业独占。 多道批处理系统中,需要提高处理机的效率和增 加作业吞吐量。 应尽可能使作业搭配合理,充分利用各种资源 交互式系统中用户以交互方式工作,好象整个计 算机都为一个用户工作,这时希望系统的响应时 间快。 由此可以看出,不同的操作系统类型和用户要求 ,处理机的管理策略应该有所不同。 2 衡量调度策略的指标 周转时间一个作业从提交给计算机系统 到该作业的结果返回给用户所需要的时间。 吞吐量在给定的时间内,一

2、个计算机系 统所完成的总工作量。 响应时间从用户向计算机发出指令到计 算机将结果返回给用户需要的时间。 设备利用率主要指输入输出设备的使用 情况。 3 4.1 分级调度 操作系统中一个程序运行相关的概念:作 业、进程、线程。它们是程序在计算机中 不同运行阶段的不同体现,为此应该有不 同的调度程序。 4 程序的各种状态及相应的调度方式 5 作业的状态 提交状态:一个作业在其处于从输入设备进入外存的过 程称为提交状态,这时的作业不能被调度。 后备状态:当一个作业的全部都已经进入了输入井,未 运行之前叫做后备状态,也称为收容状态。 运行状态:作业调度程序从后备作业中选择一个作业到 内存运行,并为它创

3、建进程和分配资源。这些被选中的 作业处于执行状态。 执行状态的作业并不一定占用处理机,哪个进程占用处理机由 进程调度程序决定。这个状态中包括:就绪状态、执行状态和 等待状态。 完成状态:当作业运行完毕后,它所占用的资源并未全 部释放时。 6 调度的层次 哪些作业的哪些进程可以参与竞争CPU? 必需资源都已得到满足的进程才可以竞争 内存、外设、有关数据结构 这些进程处于内存就绪状态 作业调度须调用存储管理、外设管理程序,按 一定策略选择后备作业并分配资源、创立根进 程。 处于执行状态的作业一般包含多个进程 单机系统中,每一时刻只有一个进程占有处理机 有些操作系统中,把一部分内存就绪或内存等待的进

4、 程、作业换出到外存 外存中,除了后备状态的作业,还有就绪状态或等待 状态的作业 7 处理机调度分四个级别 作业调度(高级):按一定的原则从作业输入 井中选择作业,为其创建进程、分配资源,当 作业运行完毕后回收作业占用的资源。也叫高 级调度。 交换调度(中级):按某种策略将处于外存交 换区的就绪进程调入内存、把内存中就绪状态 或等待状态的进程调出内存。 进程调度(低级):按某种策略选择一个就绪 进程占用处理机,在确定了占用处理机的进程 后,必须进行进程上下文切换,以便为运行进 程准备好环境。 线程调度(微级):负责各个线程的调度。 思考:分时系统和实时系统中有作业调度吗?8 作业和进程的区别

5、作业 作业是用户需要计算 机完成某项任务而要 求它所做工作的集合 它由程序、数据和作 业说明书组成 由顺序相连的作业步 构成:编译、链接、 执行 作业的完成经过提交 、收容、执行和完成 四个阶段 作业执行时,至少有 一个进程 作业的概念主要用在 批处理系统中 进程 进程是一个程序的执行 过程和分配资源的基本 单位 进程被创建后,总有相 应的部分存在于内存 进程的概念用在几乎所 有的多道程序系统中 9 进程和线程之间的关系 10 进程和线程的区别 进程是资源分配的基本单位,所有与该进程有关 的资源都被记录在PCB中。 除CPU之外,线程与资源分配无关;它属于一个 进程,并与进程内的其他线程一起共

6、享进程的资 源。 进程有完整的虚拟地址空间。 线程没有自己的地址空间,同一个进程内的线程 共享同一地址空间 进程切换时涉及到进程上下文的保存和恢复,是 一个比较庞大的场面。 线程切换时,由于共享进程的资源和地址空间, 减少了系统的开销。 进程的调度由操作系统内核完成,线程的调度既 可以由系统内核完成也可以由用户程序进行 11 4.2 作业调度 作业调度程序的功能 作业调度程序的目标 作业调度算法的性能指标 12 作业调度程序的功能 记录已经进入系统的各个作业的情况。作业调度程序为了选 择一个作业运行,并且在作业运行中对其进行管理,必须知 道各个作业进入系统时的一些信息,并跟踪作业在运行中的 状

7、态变化情况。这些信息记录在作业控制块JCB,它建立和 撤消都是由作业调度程序完成的。 选择作业。从输入井中选择符合“条件”的作业送到内存的作 业缓冲区中,使这些作业的状态由“后备”状态变为“运行”状态 。调度多少个作业由系统的缓冲区大小和一些系统参数确定 。 为被选中的作业做执行前的准备。建立进程,分配作业运行 需要的资源,如内存和外部设备。作业调度程序只能保证该 作业具有使用处理机的资格,而不能分配处理机资源。 作业运行结束后的善后处理和资源回收。统计作业的运行时 间,作业执行状态等信息的输出。撤消该作业的所有进程和 该作业的JCB。 13 作业调度程序的处理流程 14 作业调度算法的目标

8、对所有作业应该是公平合理的 应该使设备有高的利用率 每天执行尽可能多的作业 有快的响应时间 大多数系统采用兼顾某些目标的简单调度算法 15 作业的周转时间 周转时间=作业完成时间 作业提交时间。 Ti = Tei Tsi 平均周转时间: 注意: 一个作业的周转时间说明了它在系统内部停留的时 间,应该包括两部分:等待时间和执行时间。 Ti = Twi + Tri Twi:是作业由后备状态到执行状态的等待时间,不 包括作业进入执行状态后的等待时间。 Tri :是作业在执行状态的时间。 16 作业的带权周转时间 带权周转时间= 作业的周转时间 作业执行时间 Wi = Ti / Tri 如果有多个作业同时进入系统,则平均带权周转 时间: W=1/N(Wi) i=1.n 一般来说,作业的平均周转时间短,说明作业 在系统的时间短,用户等待的时间短,系统的 利用率高,所以,应该选择平均周转时间短的 作业调度算法。 17

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号