[计算机软件及应用]第三章处理机调度与死锁.pptVIP

  • 27
  • 0
  • 约2.93万字
  • 约 10页
  • 2018-03-04 发布于浙江
  • 举报

[计算机软件及应用]第三章处理机调度与死锁.ppt

[计算机软件及应用]第三章处理机调度与死锁

本章主要内容 3.1 处理机调度的基本概念 The basic concepts of processor scheduling 何时执行进程调度功能?(When) 1、当进程从执行态转换为阻塞态; 2、分时系统中时间片到; 3、当有一个优先级更高的进程就绪; 4、一个进程运行完毕,或由于错误而终止。 如何执行进程调度? 分派程序取出进程; 进行进程切换; 转到用户态; 执行被选中进程。 二、调度队列模型 1 只有进程调度的调度队列模型(如分时系统) 三、选择调度方式和算法的若干准则 一般和OS的类型和目标有关。 1 面向用户的准则(User-oriented criterion) 周转时间短 (short turnaround time)(针对批处理系统) 响应时间快 (quick response time) (针对分时系统) 截止时间的保证 (guaranteed deadline) (针对实时系统) 截止时间指任务必须开始执行的最迟时间和必须完成的最迟时间。 优先权原则 (priority principle) (适用于各种OS) 保证紧急作业得到及时处理,有时还需抢占调度方式。 周转时间和平均周转时间 周转时间(从作业提交系统到完成为止)包括: 驻外存等待作业调度的时间; 驻内存等待进程调度的时间; 执行时间; 阻塞时间。 3.2 调度算法 Scheduling Algorithm 进程 到达时间 服务时间 P1 0.0 7 P2 2.0 4 P3 4.0 1 P4 5.0 4 二、高优先权优先调度算法 HPF—Highest Priority First scheduling algorithm 举例:HPF----非抢占式 EG: 进程 到达时间 服务时间 优先数 P1 0.0 7 3 P2 2.0 4 2 P3 4.0 1 4 P4 5.0 4 1 Gantt图 EG: 进程 到达时间 服务时间 优先权 P1 0.0 7 3 P2 2.0 4 2 P3 4.0 1 4 P4 5.0 4 1 Gantt图 3、优先权:通常用某范围内的整数表示,称为优先数。不同的系统,优先数表示的优先权级别不同。如: 优先权的类型: 静态优先权(static priority) :优先权在创建进程时就确定好,且在进程的整个运行期间保持不变。 确定优先权的依据: 进程类型:通常系统进程的优先权高于用户进程; 对资源的需求:需求越少,优先权越高; 用户要求:紧迫程度、交费多少等。 优点:简单。 缺点:出现“饥饿”现象。 动态优先权(dynamic priority):优先权在创建进程时规定,但可以随着进程的运行而改变。 例如:UNIX的动态优先数计算公式为: P-pri=(P-cpu/2)+用户基本优先数 说明: 1、P-cpu的确定:系统时钟中断处理程序每20ms工作一次,每工作一次将当前运行进程的P-cpu加1。每到1秒依次检查系统中所有进程的P-cpu,若P-cpu10,则该进程在1秒内所使用CPU时间200ms,置P-cpu=0;若P-cpu10,则P-cpu减10。 2、UNIX计算优先数的时机: 对所有优先数大于100的进程,系统每秒计算1次, 每次系统调用命令处理完毕之前,重新计算现进程的优先数。 单道程序环境下若有四道作业,其进入系统及所需的执行时间如下表所示。若按响应比高者优先的调度算法调度,其平均周转时间是多少? 三、基于时间片轮转调度算法 Round-Robin scheduling algorithm based on time-slice 1 基本轮转法 (basic time-slice RR method) 算法思想:将所有的就绪进程按先来先服务的原则排成队列,每次调度队首进程,执行一个时间片后,将其排入队尾,再重新调度。 例如: 只应用于进程调度。 时间片大小的确定(Determination of time-slice size) q过长-退化为FCFS算法,进程在一个时间片内都执行完,响应时间长。 q过短-用户的一次请求需要多个时间片才能处理完,上下文切换次数增加,响应时间长。 算法实施过程(The steps o

文档评论(0)

1亿VIP精品文档

相关文档