在计算机体系结构中,并发和并行执行的区别是什么?


并发执行

这是N客户端-1服务器模型的本质行为,其中任何给定时刻只服务一个客户端。该模型具有双重特性。在较小的时间尺度上它是顺序的,但在较大的时间尺度上它是并发的。

在这种方法中,核心问题是如何调度竞争的客户端、处理器或线程通过单一级别(处理器)进行服务(执行)。调度策略可以面向高效服务,例如最高吞吐量(最小干预)或较短的平均响应时间等等。

调度策略可以被认为涵盖两种方法:第一种方法处理是否可以停止为客户端提供服务,以及在什么情况下停止(抢占规则)。另一种方法说明如何从竞争的客户端中选择一个进行服务(选择规则),如图所示。

如果未启用抢占,则为客户端提供所需的服务。这会导致等待时间略长,或阻止来自不同客户端的重要服务请求。抢占规则可以确定分时,这将每个客户端的持续服务限制在一个时间片内,或者可以基于优先级,在更高优先级的客户端请求服务时中断客户端的功能。

选择规则取决于特定参数,包括优先级、到达时间等。此规则定义一个算法,以根据给定参数指定一个数值,我们将其称为等级。

并行执行

并行执行与N客户端-N服务器模型相关联。它拥有多个服务器,可以同时为多个客户端(进程或线程)提供服务,这被称为并行执行。

并行执行的目的是加快计算机处理效率并提高其吞吐量,即在给定的时间间隔内可以完成的处理数量。并行执行增加了硬件数量,从而提高了系统性能。

并行执行是通过在多个功能单元之间分配信息来实现的。例如,算术、逻辑和移位操作可以分成三个单元,操作数在控制单元的指挥下被导向到每个单元。

更新于:2021年7月20日

632 次浏览

启动你的职业生涯

通过完成课程获得认证

开始学习
广告