第三章 处理机调度与死锁 3.1 处理机调度的基本概念 3.2 调度算法 3.3 实时调度 3.4 多处理机系统中的调度

Slides:



Advertisements
Similar presentations
定 格 入 格 破 格 —— 新诗仿写复习训练 仿照下列句子,再把 “ 人生 ” 比喻成 “ 大海 ”“ 天空 ” , 造两个句子。 如果说人生是一首优美的乐曲,那么痛苦则 是其中一个不可或缺的音符。 参考答案: 1 、如果说人生是一望无际的大海,那么挫折则 是其中一个骤然翻起的浪花。 2 、如果说人生是一片湛蓝的天空,那么失意则.
Advertisements

早自修課推動班級家長說故事及 經驗分享活動。 寒假親師生戶外參訪 ~ 原鄉文化、田園野趣學 習之旅 ~ 造訪鍾理和紀 念館、文學步道。親師生戶外參訪.
第 3 章操作系统基础 3.1 操作系统概述 3.2 操作系统的功能模块 3.3 典型操作系统概述.
传媒学生应该如何度 过四年大学生活?. 进入大学一个多月了,用一个词形容大 学生活 自卑感 不适应 空虚感 被动感 孤独感 失望感 一、大学新生不适应大学生活的表现:
第五章 话语的语用意义(上) 主讲人:周明强.
台北市立聯合醫院南軟門診部 皮膚科醫師簡介 溫素瑩醫師 學經歷: 中山醫學院醫學系畢業 台北醫學大學醫學資訊研究所碩士
学党章党规、学系列讲话,做合格党员 学习教育
舌尖上的昭通.
Foundations of Computer Science
4.5 实时调度算法 实时调度是为了完成实时处理任务而分配计算机处理器的调度方法。实时处理任务要求计算机在用户允许的时限范围内给出计算机的响应信号。 实时处理任务可分为 硬实时任务(hard real-time task) 软实时任务(soft real-time task)。 其中,前者要求计算机系统必须在用户给定的时限内完成,后者允许计算机系统在用户给定的时限左右处理完毕。
主办:泰兴市质量强市领导小组办公室 承办:泰 兴 市 市 场 监 督 管 理 局.
First Priority Consulting
防制學生藥物濫用 高雄市教育局校外分會 林永興教官.
第二章 项目一:企业厂区与车间平面设计 1.
正确保养皮肤的原则 皮肤的保养要依肤质进行 皮肤保养要分区进行 根据季节变化适时调整保养计划 依据年龄进行皮肤保养 肌肤保养还要分时进行
中央广播电视大学开放教育试点课程 计算机操作系统.
评价是为了促进 学生发展的评价。. 评价是为了促进 学生发展的评价。 语言有温度,字词知冷暖.
第五章 处理机管理 5.1 引言 5.2 调度算法 5.3 调度算法性能分析 5.4 实时调度 5.5 多处理机调度 5.6 调度算法举例
第五章 资源分配与调度 (一) 资源管理功能 (二) 资源分配的机构和策略 (三) 死锁概念.
第2章 操作系统的用户界面 2.1 运行一个用户程序的过程 2.2 操作系统的用户界面 2.3 操作系统提供给用户程序的服务
第8章 机床操作 主讲:臧红彬 博士.
第四章 存储器管理.
本章主要讨论处理机分配问题 调度策略考虑: ①周转时间 ②吞吐率 ③相应时间 ④设备利用率 研究的内容有:
走出人生的冰原 勇敢迎向挑戰.
第五章 设备管理 5.1 I/O系统 5.2 I/O控制方式 5.3 缓冲管理 5.4 设备分配 5.5 设备处理 5.6 磁盘存储器管理.
第五章 设 备 管 理 5.1 I/O系统 5.2 I/O控制方式 5.3 缓冲管理 5.4 I/O软件 5.5 设备分配
雷射磨皮醫學美容報告 姓名:王宥臻 導師:彭立祥 YAHOO奇摩資料來源
2009年 初夏 某天 我 一個人 一輛車 計劃 沒有計劃 只想 漫無目的 到處亂晃 感覺夏天的散漫.
第10章 多处理器和实时调度 主要内容: 多处理器调度 实时调度 操作系统调度例 分类与粒度 设计问题 进程调度 实时进程的要求与特点
班級:夜師資一甲 指導老師:蘇國榮老師 姓名:929201林佑蓉 石依縈 李玉玫 桂秀媛
项目申报及投资推进工作实务 更多模板、视频教程: 兰溪市发展和改革局 2013年9月 1.
《生活与哲学》第一轮复习 第七课唯物辩证法的联系观.
Operating System CPU Scheduing - 2 Monday, August 11, 2008.
Operating System CPU Scheduing - 3 Monday, August 11, 2008.
常见辐射与饮食营养 —08食检 曹珊珊.
也許你很疑惑: 最近升官的同事,專業能力又沒你強! 情場得意的朋友,長的又沒你帥或美! 小曹要交新朋友,為什麼就是比較簡單!
第6章 電腦軟體 應用軟體 多元程式處理 系統軟體 記憶體配置 作業系統簡介 虛擬記憶體 作業系統的演進與發展 行程管理
C H A P T E R 11 体系结构对操作系统的支持.
第七章 生產管理 第一節 生產管理基本概念 第二節 生產計畫 第三節 途程計畫 第四節 生產排程 第五節 計畫評核術及要徑法 第六節 工作分派與跟催 第七節 生產管制 工業工程與管理 第二版.
第8章作業系統.
第二章 行程管理 朱肇明 資管系 講師 大華技術學院.
作 業 系 統 第三組 楊育翰 顏瑞霖.
第三章 处理机调度与死锁 3.1 处理机调度的层次和调度算法的目标 3.2 作业与作业调度 3.3 进程调度 3.4 实时调度
子曰:「父母之年,不可不知也。一則以喜, 一則以懼。」 國一乙 S 李千昀
詩文的形成 有意義的字詞 句子 段落 一首詩文的形成,是由有意義的字詞組成句子,再由句子組成段落。
第三章 用户接口与作业管理 用户与操作系统的接口 批处理操作系统的作业管理 作业的基本概念:作业、作业步、作业流 交互式系统作业管理
李元金 计算机与信息工程学院 第 8 讲 处理机调度与死锁(2) 李元金 计算机与信息工程学院 1/
7.1.1 设备管理的功能(P95) 分配设备:按设备的不同类型和操作系统选用的算法分配。包括分配相应的通道、设备控制器以及对未分配到的任务或怍业进行排队等; 控制和实现真正的输入输出操作。包括通道程序控制、启动设备、及时响应及处理中断讯号等; 对输入输出缓冲区进行管理。例如逻辑名的管理,多个缓冲区的分时以及串并行操作,同类多个外部设备的均衡工作,避免“忙的忙”和“闲的闲”;
作業系統 第三章 作業系統結構.
Operation System(OS).
第四章 存储器管理 4.1 存储器的层次结构 4.2 程序的装入和链接 4.3 连续分配方式 4.4 基本分页存储管理方式
作業系統 第九章 虛擬記憶體.
飯店業的介紹.
Chap2 Stack & Queue.
第五章 设备管理 5.1 I/O系统 5.2 I/O控制方式 5.3 缓冲管理 5.4 设备分配 5.5 设备处理 5.6 磁盘存储器管理.
第五章 虚 拟 存 储 器 5.1 虚拟存储器概述 5.2 请求分页存储管理方式 5.3 页面置换算法 5.4 “抖动”与工作集
李元金 计算机与信息工程学院 第 14 讲 存储器管理(3) 李元金 计算机与信息工程学院 1/
5 Chapter 整體規劃 5-1 整體規劃的意義與特性 5-2 整體規劃流程與因素 5-3 需求與供給變數的運用 5-4 整體規劃之技術
2009年 初夏 某天 我 一個人 一輛車 計劃 沒有計劃 只想 漫無目的 到處亂晃 感覺夏天的散漫 按鍵換頁--輕音樂欣賞.
信用部財務專業人員初級研習班 台灣債券市場簡介
第一章 操作系统引论 1.1 操作系统的目标和作用 1.2 操作系统的发展过程 1.3 操作系统的基本特性 1.4 操作系统的主要功能
第一章 运动的描述 第四节 实验:用打点计时器测速度.
李元金 计算机与信息工程学院 第 12 讲 存储器管理(1) 李元金 计算机与信息工程学院 1/
自动控制原理.
李元金 计算机与信息工程学院 第7讲 处理机调度与死锁(1) 李元金 计算机与信息工程学院 1/
进程调度算法和作业调度算法。 (1) 先来先服务(FCFS)调度算法
PURSUING EXCELLENCE / TOWARD SUCCESS WUCHANG UNIVERSITY OF TECHNOLOGY
多姿多彩的世界.
Nachos Project Assignment 2
第六章 直接成本法.
Presentation transcript:

第三章 处理机调度与死锁 3.1 处理机调度的基本概念 3.2 调度算法 3.3 实时调度 3.4 多处理机系统中的调度 3.1 处理机调度的基本概念 3.2 调度算法 3.3 实时调度 3.4 多处理机系统中的调度 3.5 产生死锁的原因和必要条件 3.6 预防死锁的方法 3.7 死锁的检测与解除 淮海工学院计算机科学系

批处理系统才有作业的概念,分时系统没有作业的概念; 作业的状态分为:提交、后备、运行和完成 3.1 处理机调度的基本概念 作业的状态及其转换 批处理系统才有作业的概念,分时系统没有作业的概念; 作业的状态分为:提交、后备、运行和完成 淮海工学院计算机科学系

提交状态:作业在输入设备上并准备进入外存输入井前的状态。用户作业通常包括:程序、数据和作业说明书 后备状态:由SPOOLing输入程序输入到外存输入井中,为其建立作业控制块(JCB),并将JCB插入到后备作业队列中的状态 运行状态:作业被作业调度程序选中,由外存输入井调入到内存,为其分配了所需的资源并建立了进程,此时作业就进入到运行状态。 完成状态:当作业正常结束或异常终止时,就进入完成状态。由作业调度程序做收尾工作:撤销JCB、回收分给该作业的系统资源等。 淮海工学院计算机科学系

作业调度程序 SPOOLing 内存 运行 程序 进程调度 程序 提交 后备 就绪 阻塞 完成 输入设 外存输 备 入井 中级调度 就绪 作业的状态及其转换 作业调度程序 SPOOLing 内存 运行 程序 进程调度 程序 提交 后备 就绪 阻塞 完成 输入设 外存输 备 入井 中级调度 就绪 阻塞 外存 淮海工学院计算机科学系

3.1.1 处理机调度的层次 在多道批处理系统中,一个作业可能需要经历三级调度: 1. 高级调度(High Scheduling) 高级调度又称为作业调度或宏观调度或长程调度(多道批处理系统需要作业调度;分时系统和实时系统一般不需要高级调度。 ) 2. 中级调度(Intermediate-Level Scheduling) 引入中级调度的主要目的是为了提高内存的利用率和系统吞吐量。 3.低级调度(Low Level Scheduling) 低级调度又称进程调度或微观调度或短程调度 淮海工学院计算机科学系

引起调度的原因:1)当前进程运行结束或发生某事件而终止;2)当前进程因提出I/O请求而阻塞;3)进程之间通信或同步而由于执行原语而等待。 4、进程调度方式 非抢占方式(Nonpreemptive):在这种调度方式下,一旦一个进程被选中运行,它就一直运行下去,直到它运行结束并自愿放弃CPU,或者因等待某一事件而被阻塞或终止时为止,才把CPU出让给其他进程,即得到CPU的进程不管运行多长时间,都一直运行下去,不会因为当前进程以外的原因而被迫让出CPU。 引起调度的原因:1)当前进程运行结束或发生某事件而终止;2)当前进程因提出I/O请求而阻塞;3)进程之间通信或同步而由于执行原语而等待。 淮海工学院计算机科学系

抢占方式(Preemptive):抢占方式允许调度程序根据某种策略中止当前进程的执行,将其移入就绪队列,并将处理机分派给另一个进程使之投入运行。 抢占原则:1)优先权原则:允许高优先权进程抢占低优先权的CPU;2)短作业原则:允许短进程抢占长进程的处理机;3)时间片原则:分时系统中的当前进程,若时间片规定的时间用完,不管是否运行结束,都要立即中止放到就绪队列中,再将CPU分派给其它进程。 淮海工学院计算机科学系

3.1.2 调度队列模型 不同OS对高级、中级和低级调度的选取形成了不同的调度队列模型,共有3种类型。 1.仅有进程调度的调度队列模型 2. 具有高级和低级调度的调度队列模型 3. 同时具有三级调度的调度队列模型 淮海工学院计算机科学系

具有三级调度时的调度队列模型 作业 CPU 就绪挂起队列 阻塞挂起队列 阻塞队列 就绪队列 时间片到 作业调度 调入 中级调度 事件出现 进程调度 作业调度 调入 中级调度 事件出现 交互式用户 等待事件 进程完成 挂起调出 具有三级调度时的调度队列模型 淮海工学院计算机科学系

3.1.3 选择调度方式和调度算法的若干准则 1. 面向用户的准则 周转时间短:周转时间是指作业从提交给系统开始,到作业完成为止所消耗的时间。常用于衡量系统性能、作业调度算法的优劣的重要指标。 可把平均周转时间描述为: 作业的周转时间T与系统为它提供服务的时间TS之比,即W=T/TS,称为带权周转时间,而平均带权周转时间则可表示为: 淮海工学院计算机科学系

响应时间快:分时系统性能的主要评价指标。响应时间指用户从键盘键入一个命令开始,到系统首次给出响应信息为止这段时间。 截止时间的保证:评价实时系统性能的重要指标。截止时间是指系统为处理某事件/任务必须开始执行的最迟时间,或必须完成的最迟时间。 优先权准则:批处理、分时和实时系统中的调度算法都应该遵循的原则。这种调度思想就是“急事急办”,优先权高者为急。 淮海工学院计算机科学系

处理机利用率好:CPU的利用率是衡量大中型系统性能的重要指标。 2. 面向系统的准则 系统吞吐量高:评价批处理系统整体性能的重要指标。吞吐量是指单位时间内系统所完成的作业数。作业调度算法对系统吞吐量有直接影响,选择确定时应考虑这一准则。 处理机利用率好:CPU的利用率是衡量大中型系统性能的重要指标。 各类资源的平衡利用:选择适当调度算法,保证各种资源的利用都处于忙碌状态。 淮海工学院计算机科学系

3.2 调度算法 1、先来先服务(FCFS)调度算法 适应范围:适应作业调度和进程调度; 3.2 调度算法 1、先来先服务(FCFS)调度算法 适应范围:适应作业调度和进程调度; 调度过程:FCFS用于作业(进程)调度时,从后备(就绪)队列中选择若干或一个先到来的作业(进程)投入运行。进程在分派到CPU进入运行过程中,只有当进程运行结束或因某事件发生而被阻塞才放弃CPU。 算法特点:算法容易实现,但效率不高;只顾及作业等候时间,没考虑作业要求服务时间的长短,不利于短作业而优待了长作业(CPU繁忙型作业);作业调度不分轻重缓急,人人平等;FCFS为非抢占式调度。 淮海工学院计算机科学系

表注:周转时间=完成时间-到达时间;带权周转时间=周转时间/服务时间 先来先服务(FCFS)调度算法效率举例 表注:周转时间=完成时间-到达时间;带权周转时间=周转时间/服务时间 这两个时间都是越小越好! 淮海工学院计算机科学系

2、短作业/进程(SJF/SPF)优先调度算法 适应范围:适应作业调度和进程调度。SJF/SPF算法以进入系统的作业/进程所要求的CPU时间为标准,总选取估计计算时间最短的作业/进程投入运行。 算法特点:算法易于实现,效率不高;忽视长作业等待时间,会出现饥饿现象;不考虑紧迫作业/进程的需求;长短时间人为估计,不可靠,会出现以长乱短。 SPF算法类型:抢占或非抢占式。抢占式SPF调度算法在新进程进入就绪队列时,将其运行时间与当前进程的剩余运行时间相比,若更短时,可抢占CPU;非抢占式SPF算法允许当前运行进程先执行直到释放CPU为止。可抢占SPF调度有时称为最短剩余时间优先(shortest-remaining-time-first)调度。 淮海工学院计算机科学系

FCFS和SJF调度算法的性能分析 淮海工学院计算机科学系

例题:假如5个就绪进程其到达系统和所需CPU时间如下表所示(单位:毫秒),如果忽略I/O以及其他开销,分别计算采用FCFS、非抢占式SPF和抢占式SPF调度算法进行CPU调度的平均周转时间和平均带权周转时间。 进程到达和运行时间 进程 到达时间 运行时间 A 3 B 2 6 C 4 D 5 E 8 淮海工学院计算机科学系

T=((3-0)+(9-2)+(13-4)+(18-6)+(20-8))/5=8.6 带权平均周转时间为:W=2.56 解答如下: (1)采用FCFS的调度顺序为: A B C D E 3 9 13 18 20 平均周转时间为: T=((3-0)+(9-2)+(13-4)+(18-6)+(20-8))/5=8.6 带权平均周转时间为:W=2.56 淮海工学院计算机科学系

(2)采用非抢占SJF的调度顺序为: 平均周转时间为:T=7.6 带权平均周转时间为:W=1.84 A B E C D 3 9 11 15 3 9 11 15 20 平均周转时间为:T=7.6 带权平均周转时间为:W=1.84 淮海工学院计算机科学系

(3)采用抢占SJF的调度顺序为: 平均周转时间为:T=7.2 带权平均周转时间为:W=1.59 A B1 E C B2 3 8 10 15 3 8 10 15 20 D 4 平均周转时间为:T=7.2 带权平均周转时间为:W=1.59 淮海工学院计算机科学系

3、高优先权优先调度算法(priority-scheduling algorithm) 1)优先权调度算法的类型 非抢占式优先权算法:系统一旦把CPU分配给就绪队列中优先权最高的进程后,该进程便一直执行下去,直至完成或因发生某事件使该进程放弃处理机时。主要用于批处理系统中;也可用于某些对实时性要求不严的实时系统中。 抢占式优先权算法:系统把处理机分配给优先权最高的进程使之执行。只要又有更高优先权新进程进入就绪队列,进程调度程序就立即停止当前进程的执行,将处理机重新分配。适应较严格的实时系统、性能要求较高的批处理和分时系统。 淮海工学院计算机科学系

静态优先权是在创建进程时确定的,且在进程的整个运行期间保持不变。 2)优先权的类型 静态优先权 静态优先权是在创建进程时确定的,且在进程的整个运行期间保持不变。 优先权的确定准则:系统进程者优先;资源需求少者优先;用户需求紧迫者优先。 动态优先权:动态优先权是指在创建进程时所赋予的优先权,可以随进程的推进而改变的,以便获得更好的调度性能。(如等待时间与优先权成正比) 淮海工学院计算机科学系

4、高响应比优先调度算法 动态优先权的变化规律可描述为: 系统对作业的响应时间=等待时间+服务时间,故该优先权又相当于响应比RP。据此,优先权变化规律又可表示为: 淮海工学院计算机科学系

如果作业的等待时间相同,则要求服务的时间愈短,其优先权愈高,因而该算法有利于短作业; 高响应比优先调度算法特点: 如果作业的等待时间相同,则要求服务的时间愈短,其优先权愈高,因而该算法有利于短作业; 当要求服务的时间相同时,作业的优先权决定于其等待时间,等待时间愈长,其优先权愈高,因而它实现的是先来先服务; 对于长作业,作业的优先级可以随等待时间的增加而提高,当其等待时间足够长时,其优先级便可升到很高, 从而也可获得处理机,避免了长作业饥饿现象。 淮海工学院计算机科学系

5、基于时间片的轮转调度算法 时间片调度算法适用于分时系统。划分为时间片轮转和多级反馈队列调度算法 1)时间片轮转法(Round Robin) 轮转法调度做法是:系统将所有的就绪进程按FIFO原则排队,每次调度时,把CPU分配给队首进程,并令其执行一个时间片(如20ms)。当执行的时间片用完时,停止该进程的执行,并将它送往就绪队尾;然后,再把处理机分配给就绪队列中新的队首进程,同时也让它执行一个时间片。如此反复和轮转,就可以保证就绪队列中的所有进程,在一给定的时间内,均能获得一时间片的处理机执行时间。 淮海工学院计算机科学系

多级反馈队列调度算法是目前公认的一种性能比较优良的调度算法,兼备了前述各种算法的优点。原理如下: 2)多级反馈队列调度算法 多级反馈队列调度算法是目前公认的一种性能比较优良的调度算法,兼备了前述各种算法的优点。原理如下: 设置多个就绪队列,并赋予不同的优先级和时间片:第一个队列的优先级最高,第二个队列次之,其余各队列的优先权逐个降低。该算法赋予各个队列中进程执行时间片的大小也各不相同,在优先权愈高的队列中,为每个进程所规定的执行时间片就愈小。图 3-5 是多级反馈队列算法的示意。 淮海工学院计算机科学系

新进程进入 (64ms) 多级反馈队列调度算法 淮海工学院计算机科学系

调度原则:当一个新进程进入内存后,首先将它放入第一队列的末尾,按FCFS原则等待调度。当轮到该进程执行时,如它能在该时间片内完成,便可准备撤离系统;如果它在一个时间片结束时尚未完成,调度程序便将该进程转入第二队列的末尾,再同样地按FCFS原则等待调度执行;如果它在第二队列中运行一个时间片后仍未完成,再依次将它放入第三队列,……,如此下去,当一个长作业(进程)从第一队列依次降到第n队列后,在第n队列中便采取按时间片轮转的方式运行。 淮海工学院计算机科学系

抢占原则:仅当第一队列空闲时,调度程序才调度第二队列中的进程运行; 仅当第1~i 队列均空时,才会调度第i+1队列中的进程运行。如果处理机正在第i队列中为某进程服务时,又有新进程进入优先权较高的队列(第1~(i-1)中的任何一个队列),则此时新进程将抢占正在运行进程的处理机,即由调度程序把正在运行的进程放回到第i队列的末尾,把处理机分配给新到的高优先权进程。 淮海工学院计算机科学系

多级反馈队列调度算法的性能与特点 终端型作业用户:短小作业及时完成,用户满意。 (2) 短批处理作业用户:短作业优先运行结束。 (3) 长批处理作业用户:不出现饥饿现象。 淮海工学院计算机科学系

作业3-1 P101:1、4、6、7 淮海工学院计算机科学系