操作系统第三次笔记(处理机调度)

1.三级调度:高级调度:按照一定原则从外存的后备队列上取得作业后分配内存建立进程。无->创建态->就绪态。
中级调度:将暂时不能运行的进程调入外存,称为挂起态。直到其所需的条件符合且内存有空间时调入主存进入就绪队列。阻塞态->挂起态->就绪态。
低级调度:从就绪态寻找一个进程分配处理机。就绪态->执行态。
2.进程调度的性能指标:
CPU利用率:CPU有效工作时间/CPU总工作时间=CPU有效工作时间/CPU有效工作时间+CPU空闲等待时间。
系统吞吐量:单位时间完成工作的数量。
周转时间:作业提交到完成的时间。作业完成时间-作业提交时间。
平均周转时间:多个作业完成时间的平均。作业1完成时间+作业2完成时间+…+作业n完成时间/n。
带权周转时间:作业周转时间和作业实际运行时间的比值。作业周转时间/作业实际运行时间。(≥1的,越小越好)
平均带权周转时间:多个作业平均的带权周转时间。作业1的平均带权周转时间+作业2的平均带权周转时间+…+作业n的平均带权周转时间/n。
等待时间:作业等待处理机的时间。
相应时间:从用户调教请求到系统产生相应的时间。
3.用户级线程调度和内核级线程调度的区别:只有对内核级线程内核才会调度,对于用户级线程内核只会固定的给进程一个时间片,进程会自己调度线程。
4.调度算法:
①FCFS(Frist come frist service):先来先服务调度,谁先就绪谁先进处理机,直到运行完成或阻塞才下处理机。属于非抢占式算法,缺点是当一个长作业占用处理机时后面的进程会长时间得不到处理机。对长作业有利,对CPU繁忙型作业有利。因为IO繁忙型作业下处理机后就要等待另一个作业完成后才能再上处理机。
②SJF(Short job frist):短作业优先,每次选择进程都会从就绪队列中找到估计时间最短的作业先执行直到完成或阻塞。对短作业有利,对长作业不利且会产生饥饿现象。平均等待时间和平均周转时间最短。
③优先级调度算法:每一次处理机都会从就绪队列中找到优先级最高的那个先执行。会引起饥饿。一般优先级系统进程>用户进程。交互进程>非交互性进程。IO型进程>CPU型进程。
④高相应比优先调度算法:主要用于高级调度。
相应比:等待时间+要求服务时间/要求服务时间
在等待时间少的时候,长作业和短作业优先级差不多,等待时间越长短作业相应比越大优先级越高,所以能提高短作业的优先级且不会造成长作业饥饿。等待时间相同时要求服务时间越短优先级越高。要求服务时间相同时等待时间越长优先级越高。
⑤时间片轮转调度算法:主要用于分时系统,系统分出时间片后依次给各作业分配时间片,当时间片执行完毕后下处理机再执行下一个进程。当时间片分配过大时,每一个进程都能在一个时间片内执行完毕则退化成为先来先服务进程,时间片很小又会造成频繁的换入换出进程造成系统开销大。
⑥多级队列调度算法:将不同性质的进程分配在不同的就绪队列中,各队列中的调度优先级互不影响。
⑦多级反馈队列调度算法(集合了优点):设置多个就绪队列,在每个队列的优先级逐层递减,赋予在每层的时间片不同,时间片逐层递增,在每一层都采用FCFS算法。短作业可能在第一层来时就执行完,若稍长一点的作业会将剩下没有执行完的部分带入下一层中。长作业也会被执行不会产生饥饿。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值