有效工作时间

更新时间:2022-11-27 15:10

在计算机系统中,CPU运行速度与辅存及外设运行速度不在一个数量级,所以CPU运行一段时间以后等待辅存或外设的数据。有效工作时间是指处理机真正用于处理程序或计算时间;或者指进程或作业真正被处理机运行的时间。提高处理机有效工作时间措施一般有:使外设和处理机并行工作;优化进程任务调度。

简介

在计算机中,有效工作时间是指处理机真正用于处理程序或计算时间;或者指进程或作业真正被处理机运行的时间。也可以用CPU利用率来说明。CPU真正用于处理程序和数据的时间很少,主要是因为速度不匹配。在内存-处理机级中,常见的做法是增加缓存,来弥补速度之间的差别。CPU与辅存或外设速度差别太大了,一般采取的措施使二者并行,尽量减少主机对 I/O 控制的干预,把主机从繁杂的 I/O 控制事务中解脱出来,以便更多地去完成数据处理任务。常见的方法如DMA。还有一种措施是改进进程的调度策略,使更多进程得到运行,从而增加有效工作时间。

调度

在多道程序环境下,主存中有着多个进程,其数目往往多于处理机数目。这就要求系统能按某种算法,动态地把处理机分配给就绪队列中的一个进程,使之执行。分配处理机的任务是由处理机调度程序完成的。由于处理机是最重要的计算机资源,提高处理机的利用率及改善系统性能(吞吐量、响应时间),在很大程度上取决于处理机调度性能的好坏,因而,处理机调度便成为操作系统设计的中心问题之一。

调度在计算机中是分配工作所需资源的方法。资源可以指虚拟的计算资源,如线程、进程或数据流;也可以指硬件资源,如处理器、网络连接或扩展卡。

进行调度工作的程序叫做调度器。调度器通常的实现使得所有计算资源都处于忙碌状态(在负载均衡中),允许多位用户有效地同时共享系统资源,或达到指定的服务质量。调度是计算自身的基础,同时也是编程语言计算模型固有的部分。调度器使得在单处理器上通过多任务处理,从而让执行多个进程成为可能。

调度器可能会针对不同的目标设计,例如:吞吐率最大化、响应时间最小化、最低延迟[1]、或最大化公平。在实践中,这些目标通常是互相冲突的,因此,调度器会实现一个权衡利弊的折中方案,而侧重点则可能是前文提到的任何一种,这取决于用户的需求和目的。

调度算法可分为:

事件驱动调度算法:根据事件的先后以及任务的优先级安排任务的执行。如先来先服务调度算法。

时钟驱动调度算法:一般用于周期任务。如基于时间片的轮转调度算法,多级反馈队列调度算法。

事件驱动调度:依赖外部硬件设备,通过产生中断方式为任务调度提供信号。分两种,集成事件驱动调度:中断的优先级与任务的优先级相对应,中断只有在其优先级高于正在执行的任务时才会被处理器响应。 非集成事件驱动调度:任务通过外部中断启动,中断优先级与相关任务优先级没有关系。

DMA

直接内存访问(Direct Memory Access,DMA)是计算机科学中的一种内存访问技术。它允许某些电脑内部的硬件子系统(电脑外设),可以独立地直接读写系统内存,而不需中央处理器(CPU)介入处理 。在同等程度的处理器负担下,DMA是一种快速的数据传送方式。很多硬件的系统会使用DMA,包含硬盘控制器、绘图显卡、网卡和声卡。

虽然中断驱动I/O 比程序 I/O 方式更有效,但须注意,它仍是以字(节)为单位进行 I/O的,每当完成一个字(节)的 I/O 时,控制器便要向 CPU 请求一次中断。换言之,采用中断驱动 I/O 方式时的 CPU 是以字(节)为单位进行干预的。如果将这种方式用于块设备的 I/O,显然是极其低效的。例如,为了从磁盘中读出 1 KB 的数据块,需要中断 CPU 1K 次。为了进一步减少 CPU 对 I/O 的干预而引入了直接存储器访问方式,见图 5-7(c)所示。该方式的特点是:

(1) 数据传输的基本单位是数据块,即在 CPU 与 I/O 设备之间,每次传送至少一个数据块;

(2) 所传送的数据是从设备直接送入内存的,或者相反;

(3) 仅在传送一个或多个数据块的开始和结束时,才需 CPU 干预,整块数据的传送是在控制器的控制下完成的。

可见,DMA方式较之中断驱动方式,又是成百倍地减少了 CPU 对 I/O 的干预,进一步提高了 CPU 与 I/O 设备的并行操作程度。

免责声明
隐私政策
用户协议
目录 22
0{{catalogNumber[index]}}. {{item.title}}
{{item.title}}