操作系统--第二章--第二部分

2.2_3_调度算法的评价指标

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0RwdLszF-1646621191537)(C:/Users/ben/AppData/Roaming/Typora/typora-user-images/image-20220302112231955.png)

CPU利用率

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

利用率 = 忙碌的时间/总时间

Eg:某计算机只支持单道程序,某个作业刚开始需要在CPU上运行5秒,再用打印机打印输出5秒,之后再执行5秒,才能结束。在此过程中,CPU利用率、打印机利用率分别是多少?

CPU利用率 = (5+5)/(5+5+5) = 66.66%

打印机利用率 = 5/15 = 33.33%

系统吞吐率

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

系统吞吐量= 总共完成了多少道作业/总共花了多少时间

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

10/100 = 0.1 道/秒

周转时间

对于计算机的用户来说,他很关心自己的作业从提交到完成花了多少时间。周转时间,是指从作业被提交给系统开始,到作业完成为止的这段时间间隔。

它包括四个部分:作业在外存后备队列上等待作业调度(高级调度)的时间、进程在就绪队列上等待进程调度(低级调度)的时间、进程在CPU上执行的时间、进程等待I/O操作完成的时间。后三项在一个作业的整个处理过程中,可能发生多次。

(作业)周转时间 = 作业完成时间 - 作业提交时间

平均周转时间 = 各作业周转之和 / 作业和

带权周转时间 = 作业周转时间 / 作业实际运行时间 = (作业完成时间 - 作业提交时间) / 作业实际运行时间

平均带权周转时间 = 各作业带权周转时间之和 / 作业数

等待时间

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

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

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

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

一个作业总共需要被CPU服务多久,被I/O设备服务多久一般是确定不变的,因此调度算法其实只会

影响作业/进程的等待时间。当然,与前面指标类似,也有“平均等待时间”来评价整体性能。

响应时间

对于计算机用户来说,会希望自己的提交的请求(比如通过键盘输入了一个调试命令)尽早地开始被系

统服务、回应。

响应时间,指从用户提交请求首次产生响应所用的时间。

调度算法

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3kqvaMER-1646621191539)(C:/Users/ben/AppData/Roaming/Typora/typora-user-images/image-20220302172025749.png)]

先来先服务

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-y0FnPa61-1646621191540)(C:/Users/ben/AppData/Roaming/Typora/typora-user-images/image-20220302172051882.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-IN6ecPNw-1646621191541)(C:/Users/ben/AppData/Roaming/Typora/typora-user-images/image-20220302172109527.png)]

短作业优先

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wLiEnyAt-1646621191542)(C:/Users/ben/AppData/Roaming/Typora/typora-user-images/image-20220302172205333.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-oDr0Ou0g-1646621191543)(C:/Users/ben/AppData/Roaming/Typora/typora-user-images/image-20220302172306359.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-lCPUpU3E-1646621191544)(C:/Users/ben/AppData/Roaming/Typora/typora-user-images/image-20220302172341649.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cSqr7ToK-1646621191545)(C:/Users/ben/AppData/Roaming/Typora/typora-user-images/image-20220302172400814.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-crcuaHKj-1646621191545)(C:/Users/ben/AppData/Roaming/Typora/typora-user-images/image-20220302172423096.png)]

高响应比优先

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-71JemdbG-1646621191546)(C:/Users/ben/AppData/Roaming/Typora/typora-user-images/image-20220302172449953.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-auhWjYgT-1646621191547)(C:/Users/ben/AppData/Roaming/Typora/typora-user-images/image-20220302172512855.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Nih1SnZs-1646621191548)(C:/Users/ben/AppData/Roaming/Typora/typora-user-images/image-20220302172530460.png)]

2.2_5_调度算法:时间片轮转、优先级、多级反馈队列

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-1GpC8wtF-1646621191549)(C:/Users/ben/AppData/Roaming/Typora/typora-user-images/image-20220305195442943.png)]

时间片轮转调度算法

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-sRg4WPvg-1646621191550)(C:/Users/ben/AppData/Roaming/Typora/typora-user-images/image-20220305195645235.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-UYuRyQFA-1646621191551)(C:/Users/ben/AppData/Roaming/Typora/typora-user-images/image-20220305200112061.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-RhKnN6TE-1646621191552)(C:/Users/ben/AppData/Roaming/Typora/typora-user-images/image-20220305200713781.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-iicHOa3L-1646621191553)(C:/Users/ben/AppData/Roaming/Typora/typora-user-images/image-20220305200745445.png)]

  • 如果时间片太大,使得每个进程都可以在一个时间片内完成,则时间片轮调度算法退化为先来先服务调度算法,并且会增大进程响应时间,因此时间片不能太大
  • 另一方面,进程调度、切换是有时间代价的(保存、恢复运行环境),因此如果时间片太小,会导致进程切换过于频繁,系统会花大量时间来处理进程切换,从而导致实际用于执行的时间比例减少。可见时间片也不能太小
优先级调度算法

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tnO1USZ6-1646621191554)(C:/Users/ben/AppData/Roaming/Typora/typora-user-images/image-20220305201454155.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-W2ShlDsK-1646621191555)(C:/Users/ben/AppData/Roaming/Typora/typora-user-images/image-20220305201516591.png)]

在这里插入图片描述

在这里插入图片描述

多级反馈队列调度算法

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-St4cS3Tt-1646621191558)(C:/Users/ben/AppData/Roaming/Typora/typora-user-images/image-20220305201924677.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-F0DtTciD-1646621191559)(C:/Users/ben/AppData/Roaming/Typora/typora-user-images/image-20220305201939857.png)]

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
操作系统是计算机系统中最基础的软件之一,它负责管理和控制计算机的硬件和软件资源,为用户和应用程序提供一个良好的工作环境。在第二章的课后programming project中,我们需要实现一个简单的操作系统,下面我将用300字中文来回答这个问题。 为了完成这个项目,我们需要考虑以下几个关键概念: 1. 进程管理:操作系统需要管理计算机中的进程,包括创建、终止、切换和调度进程。我们可以使用多线程来模拟进程,并使用调度算法决定进程的执行顺序。 2. 内存管理:操作系统需要管理计算机的内存资源,包括为进程分配内存空间、地址映射和内存回收。我们可以使用虚拟内存和页表来实现内存管理。 3. 文件系统:操作系统需要提供文件管理功能,包括文件的创建、读写和删除。我们可以使用文件控制块来描述和管理文件,并使用文件系统调用来实现文件操作。 4. 设备管理:操作系统需要管理计算机的硬件设备,包括输入输出设备、磁盘和网络等。我们可以使用设备驱动程序来控制硬件设备,并使用中断来处理设备的响应和中断事件。 在实现这个操作系统的过程中,我们需要熟悉操作系统的原理和概念,如进程管理、内存管理、文件系统和设备管理等。我们可以使用编程语言如C、C++或Java来实现这个操作系统,并使用模拟器来模拟计算机硬件的行为。 总的来说,课后programming project是一个很好的方式来深入学习和理解操作系统的概念和原理。通过实际动手实现一个简单的操作系统,我们可以更好地理解操作系统的工作原理,提高我们的编程能力和操作系统的应用能力。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值