2.2.2操作系统(CPU利用率 系统吞吐量 周转时间 调度算法 FCFS SJF HRRN)

简介: 调度算法的评价指标​1.CPU利用率2.系统吞吐量3.周转时间4.等待时间 5.响应时间调度算法1.先来先服务(FCFS, First Come First Serve)2.短作业优先(SJF, Shortest Job First)非抢占式 抢占式​注意几个小细节:对FCFS和SJF两种算法的思考…3.高响应比优先(HRRN, Highest Response Ratio Next)知识回顾与重要考点

调度算法的评价指标


1.CPU利用率


由于早期的 CPU 造价极其昂贵,因此人们会 希望让 CPU 尽可能多地工作


CPU 利用率 :指 CPU “忙碌”的时间占总时间的比例。




Eg :某计算机只支持单道程序,某个作业刚开始需要在 CPU 上运行 5 秒,

再用打印机打印输出 5 秒,之后再执行 5 秒,才能结束。在此过程中,

CPU 利用率、打印机利用率分别是多少?



2.系统吞吐量


对于计算机来说,希望能用尽可能少的时间处理完尽可能多的作业


系统吞吐量 :单位时间内完成作业的数量




Eg :某计算机系统处理完 10 道作业,共花费 100 秒,则系统吞吐量为?


10/100 = 0.1 道 / 秒


3.周转时间


对于计算机的用户来说,他很关心自己的作业从提交到完成花了多少时间。


周转时间 ,是指从 作业被提交给系统开始 ,到 作业完成为止 的这段时间间隔。


它包括四个部分:作业在外存后备队列上等待作业调度(高级调度)的时间、进程在就绪队列上等


待进程调度(低级调度)的时间、进程在 CPU 上执行的时间、进程等待 I/O 操作完成的时间。后三项在一个作业的整个处理过程中,可能发生多次。









4.等待时间


计算机的用户希望自己的作业尽可能少的等待处理机


等待时间 ,指进程 / 作业 处于等待处理机状态时间之和 ,等待时间越长,用户满意度越低。




对于 进程 来说,等待时间就是指进程建立后 等待被服务的时间之和 ,在等待 I/O 完成的期间其实进


程也是在被服务的,所以不计入等待时间。


对于 作业 来说,不仅要考虑 建立进程后的等待时间 , 还要加上作业在外存后备队列中等待的时间。


一个作业总共需要被 CPU 服务多久,被 I/O 设备服务多久一般是确定不变的,因此调度算法其实只会影响作业/ 进程的等待时间。当然,与前面指标类似,也有“ 平均等待时间 ”来评价整体性能。


5.响应时间


对于计算机用户来说,会希望自己的提交的请求(比如通过键盘输入了一个调试命令)尽早地开始被系统服务、回应。 响应时间 ,指从用户 提交请求 到 首次产生响应 所用的时间。





调度算法




Tips :各种调度算法的学习思路


1. 算法思想

2. 算法规则

3. 这种调度算法是用于 作业调度 还是 进程调度?

4. 抢占式?非抢占式?

5. 优点和缺点

6. 是否会导致 饥饿

1.先来先服务(FCFS, First Come First Serve)





例题:各进程到达就绪队列的时间、需要的运行时间如下表所示。使用 先来先服务 调度算法,计算各进程的等待时间、平均等待时间、周转时间、平均周转时间、带权周转时间、平均带权周转时间。



先来先服务调度算法:按照到达的先后顺序调度,事实上就

是等待时间越久的越优先得到服务。


因此, 调度顺序 为:




2.短作业优先(SJF, Shortest Job First)




非抢占式




抢占式





注意几个小细节:


1. 如果题目中 未特别说明 ,所提到的“短作业 / 进程优先算法” 默认 是 非抢占式 的


2. 很多书上都会说“ SJF 调度算法的平均等待时间、平均周转时间最少”


严格来说,这个表述是错误的,不严谨的。之前的例子表明,最短剩余时间优先算法得到的平均等待时间、平均周转时间还要更少


应该加上一个条件“在 所有进程同时可运行 时,采用 SJF 调度算法的平均等待时间、平均周转时间最少”;


或者说“在 所有进程都几乎同时到达 时,采用 SJF 调度算法的平均等待时间、平均周转时间最少”;


如果不加上述前提条件,则应该说“ 抢占式的 短作业 / 进程优先调度算法( 最短剩余时间优先 , SRNT 算法)的平均等待时间、平均周转时间最少”


3. 虽然严格来说, SJF 的平均等待时间、平均周转时间并不一定最少,但相比于其他算法(如 FCFS ), SJF依然可以获得较少的平均等待时间、平均周转时间


4. 如果选择题中遇到“ SJF 算法的平均等待时间、平均周转时间最少”的选项,那最好判断其他选项


是不是有很明显的错误,如果没有更合适的选项,那也应该选择该选项

对FCFS和SJF两种算法的思考…


3.高响应比优先(HRRN, Highest Response Ratio Next)




知识回顾与重要考点





相关文章
|
5天前
|
机器学习/深度学习 人工智能 算法
基于Python深度学习的眼疾识别系统实现~人工智能+卷积网络算法
眼疾识别系统,本系统使用Python作为主要开发语言,基于TensorFlow搭建卷积神经网络算法,并收集了4种常见的眼疾图像数据集(白内障、糖尿病性视网膜病变、青光眼和正常眼睛) 再使用通过搭建的算法模型对数据集进行训练得到一个识别精度较高的模型,然后保存为为本地h5格式文件。最后使用Django框架搭建了一个Web网页平台可视化操作界面,实现用户上传一张眼疾图片识别其名称。
20 4
基于Python深度学习的眼疾识别系统实现~人工智能+卷积网络算法
|
27天前
|
机器学习/深度学习 人工智能 算法
猫狗宠物识别系统Python+TensorFlow+人工智能+深度学习+卷积网络算法
宠物识别系统使用Python和TensorFlow搭建卷积神经网络,基于37种常见猫狗数据集训练高精度模型,并保存为h5格式。通过Django框架搭建Web平台,用户上传宠物图片即可识别其名称,提供便捷的宠物识别服务。
249 55
|
15天前
|
存储 缓存 监控
局域网屏幕监控系统中的Python数据结构与算法实现
局域网屏幕监控系统用于实时捕获和监控局域网内多台设备的屏幕内容。本文介绍了一种基于Python双端队列(Deque)实现的滑动窗口数据缓存机制,以处理连续的屏幕帧数据流。通过固定长度的窗口,高效增删数据,确保低延迟显示和存储。该算法适用于数据压缩、异常检测等场景,保证系统在高负载下稳定运行。 本文转载自:https://www.vipshare.com
109 66
|
2天前
|
监控 搜索推荐 开发工具
2025年1月9日更新Windows操作系统个人使用-禁用掉一下一些不必要的服务-关闭占用资源的进程-禁用服务提升系统运行速度-让电脑不再卡顿-优雅草央千澈-长期更新
2025年1月9日更新Windows操作系统个人使用-禁用掉一下一些不必要的服务-关闭占用资源的进程-禁用服务提升系统运行速度-让电脑不再卡顿-优雅草央千澈-长期更新
2025年1月9日更新Windows操作系统个人使用-禁用掉一下一些不必要的服务-关闭占用资源的进程-禁用服务提升系统运行速度-让电脑不再卡顿-优雅草央千澈-长期更新
|
1月前
|
机器学习/深度学习 人工智能 算法
【宠物识别系统】Python+卷积神经网络算法+深度学习+人工智能+TensorFlow+图像识别
宠物识别系统,本系统使用Python作为主要开发语言,基于TensorFlow搭建卷积神经网络算法,并收集了37种常见的猫狗宠物种类数据集【'阿比西尼亚猫(Abyssinian)', '孟加拉猫(Bengal)', '暹罗猫(Birman)', '孟买猫(Bombay)', '英国短毛猫(British Shorthair)', '埃及猫(Egyptian Mau)', '缅因猫(Maine Coon)', '波斯猫(Persian)', '布偶猫(Ragdoll)', '俄罗斯蓝猫(Russian Blue)', '暹罗猫(Siamese)', '斯芬克斯猫(Sphynx)', '美国斗牛犬
174 29
【宠物识别系统】Python+卷积神经网络算法+深度学习+人工智能+TensorFlow+图像识别
|
9天前
|
算法
基于爬山法MPPT最大功率跟踪算法的光伏发电系统simulink建模与仿真
本课题基于爬山法MPPT算法,对光伏发电系统进行Simulink建模与仿真。使用MATLAB2022a版本,通过调整光伏电池的工作状态以实现最大功率输出。爬山法通过逐步优化工作点,确保光伏系统在不同条件下均能接近最大功率点。仿真结果显示该方法的有效性,验证了模型的正确性和可行性。
|
11天前
|
监控 算法 JavaScript
基于 Node.js Socket 算法搭建局域网屏幕监控系统
在数字化办公环境中,局域网屏幕监控系统至关重要。基于Node.js的Socket算法实现高效、稳定的实时屏幕数据传输,助力企业保障信息安全、监督工作状态和远程技术支持。通过Socket建立监控端与被监控端的数据桥梁,确保实时画面呈现。实际部署需合理分配带宽并加密传输,确保信息安全。企业在使用时应权衡利弊,遵循法规,保障员工权益。
25 7
|
1月前
|
机器学习/深度学习 缓存 人工智能
【AI系统】QNNPack 算法
QNNPACK是Marat Dukhan开发的量化神经网络计算加速库,专为移动端优化,性能卓越。本文介绍QNNPACK的实现,包括间接卷积算法、内存重排和间接缓冲区等关键技术,有效解决了传统Im2Col+GEMM方法存在的空间消耗大、缓存效率低等问题,显著提升了量化神经网络的计算效率。
42 6
【AI系统】QNNPack 算法
|
1月前
|
存储 人工智能 缓存
【AI系统】Im2Col 算法
Caffe 作为早期的 AI 框架,采用 Im2Col 方法优化卷积计算。Im2Col 将卷积操作转换为矩阵乘法,通过将输入数据重排为连续内存中的矩阵,减少内存访问次数,提高计算效率。该方法首先将输入图像转换为矩阵,然后利用 GEMM 库加速计算,最后将结果转换回原格式。这种方式显著提升了卷积计算的速度,尤其适用于通道数较多的卷积层。
54 5
【AI系统】Im2Col 算法
|
1月前
|
存储 机器学习/深度学习 人工智能
【AI系统】Winograd 算法
本文详细介绍Winograd优化算法,该算法通过增加加法操作来减少乘法操作,从而加速卷积计算。文章首先回顾Im2Col技术和空间组合优化,然后深入讲解Winograd算法原理及其在一维和二维卷积中的应用,最后讨论算法的局限性和实现步骤。Winograd算法在特定卷积参数下表现优异,但其应用范围受限。
38 2
【AI系统】Winograd 算法