- 1、本文档共47页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第4章 处理机调度 衡量调度策略的指标: 周转时间:作业提交计算机到返回用户的时间。 吞吐率:在给定的时间内,计算机系统完成的总工作量。 响应时间:用户发送指令给计算机到计算机返回结果给用户的时间。 设备利用率:输入输出设备的使用情况。 4.1 分级调度 4.1.1作业的状态及其转换 批处理系统需要多级调度,如图: 4.1.2调度的层次 (1)作业调度(高级调度、宏观调度、长程调度、接纳调度) 按一定的原则对外存输入井上的大量后备作业进行选择,给选定的作业分配内存、输入输出设备等必要的资源,并建立相应的进程,使得该作业的进程获得竞争处理机的权利。将外存作业调入内存,创建PCB等,插入就绪队列。作业数、调度策略。 (2)交换调度(中级调度、中程调度) 为提高系统吞吐量和内存利用率而引入的一内-外存对换功能(换出时,进程为挂起或外存就绪状态) (3)进程调度(低级调度、微观调度、短程调度) 按照某种策略和方法选取一个处于就绪状态的进程占用处理机。时间片,优先级,抢占和非抢占等 (4)线程调度 补充:调度的队列模型 4.1.3作业与进程的关系 4.2 作业调度 4.2.1作业调度功能 4.2.2 作业调度目标与性能衡量 作业调度目标: (1)对所有作业应该是公平合理的; (2)应使设备有高的利用率; (3)每天执行尽可能多的作业; (4)有快的响应时间。 性能衡量: 1. 周转时间短(常用于批处理系统) 概念:作业从提交― 完成的时间。分为: (1)驻外等待调度时间; (2)驻内等待调度时间; (3)执行时间; (4)阻塞时间。 平均周转时间 2.响应时间快:(分时系统) 概念:键盘提交请求到首次响应时间 (1)输入时间 (2)处理时间 (3)响应时间 3.截止时间的保证:(特别用于实时系统) 4.优先级准则:(需要抢占调度) 4.3 进程调度 4.3.1 进程调度的功能 4.3.2进程调度的时机 引起进程调度的原因: (1)正在执行的进程执行完毕。 (2)执行中进程自己调用阻塞原语进入睡眠等待状态。 (4)执行中进程调用了P原语阻塞或V原语唤醒了一个等待进程。 (5)执行中进程提出了I/O请求而被阻塞。 (6)分时系统中时间片已经用完。 (7)执行完系统调用,系统程序返回用户进程时,调度用户进程。 (8)就绪队列中某进程的优先级变得高于当前执行进程的优先级。 两种占用CPU的方式: 可剥夺式 (可抢占式 preemptive):就绪队列中一旦有优先级高于当前执行进程优先级的进程存在时,便立即发生进程调度,转让处理机。 不可剥夺式 (不可抢占式 non_preemptive):即使在就绪队列存在有优先级高于当前执行进程时,当前进程仍将占用处理机,直到该进程自己因调用原语操作或等待I/O而进入阻塞、睡眠状态,或时间片用完时才重新发生调度让出处理机。 (UNIX System V的5种情况 P92,,Linux P160 ) 4.3.3 进程调度性能评价 方法:定性和定量。 定性:可靠性、简洁性(系统开销、响应时间)。 定量:CPU的利用率、进程在就绪队列的等待时间与执行时间之比。 4.4 调度算法 1. FCFS(FIFO) 基本思想:按先后顺序进行调度。是最简单的调度算法 。 算法:(1)按照作业提交或进程变为就绪状态的先后次序,分派CPU; (2)当前作业或进程占用CPU,直到执行完或阻塞,才出让CPU(非抢占方式); (3)在作业或进程唤醒后(如I/O完成),并不立即恢复执行,通常等到当前作业或进程出让CPU。 2. 轮转法(RR) 基本思想:让每个进程在就绪队列中的等待时间与享受服务的时间成比例。分时技术 q=R/Nmax。 时间片大小的确定: 太大:退化为FCFS; 太小:系统开销过大 3. 优先级法 基本思想:系统或用户按某种原则为作业或进程指定一个优先级来表示该作业或进程所享有的调度优先权。适用于作业调度和进程调度,算法的核心是确定优先级,分静态法和动态法两类,另外还可分成抢先式和非抢先式。 优先级类型: 静态优先级: 进程优先级在整个运行期不变。 确定优先级依据 (1)根据用户紧急程度需求输入。 (2)系统或操作员据作业类型(CPU型或I/O型)指定。 (3)系统据作业对资源的需求确定。 特点:简单,但低优先权作业可能长期不被调度。 进程的静态优先级的确定原则: (1)按进程的类型给予不同的优先级。 (2)将作业的静态优先级作为它所属进程的优先级。 动态优先级: 如:优先级随执行时间而下降,随等待时间而升高。 响应比Rp=(等待时间+
文档评论(0)