1.CPU 利用率

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

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

$利用率=\frac{忙碌的时间}{总时间}$

有的题目还会要求计算某种设备的利用率:

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

$CPU利用率=\frac{5+5}{5+5+5}=66.665$ $打印机利用率=\frac{5}{15}=33.335$

2.系统吞吐量

对于计算机来说,希望使用尽可能少的时间完成尽可能多的多页

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

$系统吞吐量=\frac{总共完成了多少道作业}{总共花了多少时间}$

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

$\frac{10}{100}=0.1(道/秒)$

即平均每秒可以完成 0.1 道作业。

3.周转时间

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

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

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

  • 对于用户来说,更关心自己的单个作业的周转时间:

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

  • 对于操作系统来说,更关心系统的整体表现,因此更关心所有作业周转时间的平均值。

$平均周转时间=\frac{各作业周转时间之和}{作业数}$

  • 有的作业运行时间长,有的作业运行时间短,因此在周转时间相同的情况下,运行时间不同的作业,给用户的感受肯定是不一样的。

$戴荃周转时间=\frac{作业周转时间}{作业实际运行的时间}=\frac{作业完成时间-作业提交时间}{作业实际运行的时间}$

$平均带权周转时间=\frac{各作业带权周转时间之和}{作业数}$

带权周转时间必然>=1 带权周转时间与周转时间都是越小越好

对于周转时间相同的两个作业,实际运行时间长的作业在相同的时间内被服务的时间更过,带权周转时间更小,用户满意度更高。

对与实际运行时间相同的两个作业,周转时间短的带权周转时间更小,用户满意度更高。

4.等待时间

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

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

当一个作业被建立之后,作业会被放在外存的“作业后备队列”等待被服务(调度)。当作业被服务之后作业会被调入内存。作业被调入内存后,建立对应的进程,这个进程会被 CPU 服务,会被 I/O 设备服务,当然也会有等待被服务的时候。

对于进程来说,等待时间就是指进程建立后等待被服务的时间之和,在等待 I/O 完成的期间其实进程也是在被服务的,所以不计入等待时间。 对于作业来说,不仅要考虑建立进城后的等待时间,还要加上作业在外存后备队列中等待的时间。

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

$平均等待时间=\frac{所有进程/作业的等待时间之和}{作业数量}$

5.响应时间

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

响应时间:是指用户提交请求首次产生响应所用时间。

6.知识回顾

Lso3yq.png