操作系统的进程调度算法

本文详细介绍了操作系统中调度算法的衡量标准,包括周转时间、响应时间、截止时间保证和优先权,并探讨了面向用户和系统的目标。接着,文章讨论了各种调度算法,如先来先服务、短作业优先、最短剩余时间优先、高响应比优先、优先级调度和时间片轮转,分析了它们的优缺点和适用场景。
摘要由CSDN通过智能技术生成

调度性能的衡量

面向用户

周转时间短

周转时间,指作业从提交系统开始,直到作业完成为止的时间间隔。周转时间细分包括:

  1. 作业在外存后备队列中的等待时间
  2. 作业调入内存后创建的相应进程在就绪队列中的等待时间
  3. 进程在CPU上执行的时间
  4. 进程等待某些操作完成后的时间

其中2、3、4在一个作业的整个处理过程中可能会发生多次。

带权周转时间是指作业周转时间与作业实际运行服务时间的比值。平均周转时间和平均带权周转时间是衡量批处理系统调度算法的重要准则。

响应时间快

响应时间,从用户提交请求开始,直达系统首次产生响应为止的时间间隔。是衡量分时系统调度算法的重要准则。

截止时间的保证

开始截止时间,指某任务必须开始执行的最迟时间。完成截止时间,指某任务必须完成的最迟时间。对于比较严格的实时系统,调度算法必须做到这一点,否则后果严重。

优先权

批处理系统、分时系统、实时系统都可以优先执行优先级别更高的作业。

面向系统

系统吞吐量高

系统吞吐量,系统在单位时间内所能完成的总的工作量,它与批处理系统中的作业长短有关。短作业执行时间短,吞吐量高,长作业相反。

CPU利用率

资源的平衡利用

调度的相关时间

  • 服务时间:作业需要运行的时间
  • 完成时间 = 开始时间 + 服务时间
  • 等待时间 = 开始时间 - 提交时间
  • 周转时间 = 完成时间 - 提交时间
  • 带权周转时间 = 周转时间 / 服务时间
  • 响应比 = (等待时间 + 服务时间) / 服务时间 = 等待时间/服务时间 + 1

调度算法

先来先服务

先来先服务调度算法(First Come First Served, FCFS)是最简单的调度算法,可以用于作业调度和进程调度。按照作业进入系统后备作业队列的先后次序来挑选作业,加入就绪队列,等待执行。

算例:假设系统中有4个作业,到达时间分别为8、8.5、9、9.5,服务时间分别为2、0.5、0.1、0.2,FCFS的调度为:

FCFS调度算法算例

FCFS是非抢占式的,易于实现,效率不高,性能不好,有利于长作业(CPU繁忙性)而不利于短作业(I/O繁忙性)。

短作业优先

短作业优先调度算法(Short Job First)用于进程调度时又被称为短进程优先调度算法(Short Process First)&#

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值