多核处理器运行模式

多核处理器的运行模式有 AMP(非对称多处理)、 SMP(对称多处理)和 BMP(受约束多处理)三种运行模式。
AMP(非对称多处理asymmetric multi-processing):多个内核相对独立的运行不同的任务,每个内核相互隔离,可以运行不同的操作系统。

SMP(对称多处理symmetric multi-processing): ,多个处理器运行一个操作系统,这个操作系统管理多个内核。
BMP(受约束多处理bound multi-processing): BMP运行和SMP运行模式类似,开发者可以指定将某个任务仅在某个指定内核上执行。
我们可从Xilinx官方文档UG585手册中找到如下简介:

多核处理器运行模式_第1张图片

AMP-非对称多处理,多个核心相对独立的运行不同的任务,每个核心可能运行不同的操作系统或裸机程序,或者不同版本的操作系统。但是有一个主要核心,用来控制整个系统以及其它从核心。具有主从模式。举个例子,比如一个主要核心控制用户界面UI,从核心控制数据采集以及输出。还有POS机,一个负责UI,一个负责交易。也就是两者负责不同的任务。每个核心有自己的内存空间(同时会有共享的内存空间),另外两者之间还有一定的通信机制。从硬件上来说,这种多处理模式可能是同构的,也可能是异构的,但大多情况是异构多处理器。如MCU+DSP,MCU+FPGA等。同构的当然也有。
SMP-对称多处理,这个是目前用的最多的,一个OS同等的管理各个内核,为各个内核分配工作负载。目前,大多数的系统都支持SMP模式,如Linux,Vxworks,windows。这种模式就是简单提高运行性能。比如PC机上双核、四核运行windows,linux等。所有的核心共享内存。另外,这种模式的通常都是同构多核处理器,因为异构的结构不同,实现比较复杂。
 

 

你可能感兴趣的:(iot)