APP下载

简谈多处理机操作系统

2020-10-21张菡

科学与财富 2020年8期

张菡

摘 要:20世纪70年代出现了多处理器系统即MPS,进入90年代中后期,功能较强的主机系统和服务器几乎都采用了多处理机系统,本文主要介绍了多处理机系统的引入,多处理机系统的类型和多处理机系统的结构这三方面内容。

关键词:多处理机操作系统;多处理机类型;多处理机结构

提高计算机系统性能的主要途径有两条:一是提高构成计算机的元器件运行速度;二是改进计算机系统的体系结构,特别是在系统中引入多个处理器或多台计算机,以实现对信息的高度并行处理。

1 多处理机系统的引入

多處理机系统MPS就是采用并行技术,令多个单CPU同时运行,使总体计算能力比单CPU计算机系统强大得多。引入多处理机系统的原因大致如下:

1.1 CPU时钟频率问题

CPU的时钟频率受限于信号在介质上的传输时间,显然这对缩小元器件体积的要求越来越高。但是,随着元器件,尤其是CPU体积的缩小,散热又成了一个棘手的问题。CPU时钟频率越高,产生的热量也越多,散热问题越难解决。目前在高端的Pentium系统中,CPU散热器的体积已经超过了其本身的体积。可见目前的这种依靠提高CPU时钟频率来提高计算机运算速度的方法,已经接近了极限。

1.2 增加系统吞吐量

随着系统中处理机数目的增加,系统的处理能力也相应增强,这可使系统在单位时间内完成更多的工作,即增加系统吞吐量。为了能使多个处理机协调工作,系统必须为此付出一定的开销。因此利用n台处理机运行时所获得的加速比,并不能达到一台处理机时的n倍。

1.3 节省投资

在达到相同处理能力的情况下,与n台独立的计算机相比,采用具有n个处理机的系统,可以更节省费用。因为此时的n个处理机可以做在同一个机箱中,使用同一个电源和共享一部分资源。

1.4 提高系统可靠性

在MPS中,通常都具有系统重构的功能,即当其中任何一个处理机发生故障时,系统可以进行重构,然后继续运行。可以立即将故障处理机上所处理的任务迁移到其他的一个或多个处理机上继续处理,保证整个系统仍能正常运行,其影响仅仅表现为系统性能上的少许降低。

2 多处理机系统的类型

对于多处理机系统而言,为了解决某个问题,需要多个CPU协同处理,彼此之间交换大量的信息。为此必须将这些处理机加以互连。但是不同互连技术形成了不同类型的系统及软件组织结构。一般可以从不同角度对多处理机系统的结构进行如下分类:

2.1 紧密耦合MPS和松散耦合MPS

从多处理机之间耦合的紧密程度上,可把MPS分为两类:

(1)紧密耦合MPS。紧密耦合是通过高速总线或高速交叉开关来实现多个处理器之间的互连的。系统有两种实现方式:多处理器共享主存储器系统和I/O设备,每台处理器都可以对整个存储器进行访问;将多处理器与多个存储器分别相连,或将主存储器划分为若干个能被独立访问的存储器模块,每个处理器对应一个存储器模块,每个处理器只能访问其所对的存储器模块。

(2)松散耦合MPS。在松散耦合MPS中,通常是通过通道或通道线路来实现多台计算机之间的互连。每台计算机都有自己的存储器和I/O设备,并配置了OS来管理本地资源和在本地运行的进程。因此每一台计算机都能独立地工作,必要时可通过通信线路与其他计算机交换信息,以及协调它们之间的工作。

2.2 对称多处理器系统和非对称多处理器系统

根据系统中所用处理器相同与否,可将MPS分为两类:

(1)对称多处理器系统。在系统中所包含的各处理器单元,在功能和结构上都相同,当前绝大多数的MPS都属于SMP系统。

(2)非对称多处理器系统。在系统中有多种类型的处理单元,它们的功能和结构各不相同。系统中只有一个主处理器,有多个从处理器。

3 多处理机系统的结构

由于程序或进程对不同存储器模块的读写速度可能存在差异,形成了不同的多处理机体系结构:UMA多处理机结构和NUMA多处理机结构。

3.1 UMA多处理机结构

所谓UMA即统一内存访问。在这种结构的多处理机系统中,各处理器单元在功能和结构上都是相同的,在处理上没有主从之分,每个处理机可以访问不同模块中的存储器单元,并且对于每个存储单元的读写速度是相同的,根据处理机与存储器模块的连接方式不同,可以分为以下三种结构:基于单总线的SMP结构、使用多层总线的SMP结构、使用单级交叉开关的系统结构。

3.2 NUMA多处理机结构

所谓NUMA多处理机结构即非统一内存访问。在这种结构的多处理机系统,其访问时间随存储字的位置不同而变化,系统中的公共存储器和分布在所有处理机的本地存储器共同构成了系统的全局地址空间,可被所有的处理机访问。

NUMA多处理机结构的特点:所有共享存储器在物理上是分布式的,在逻辑上是连续的,所有这些存储器的集合就是全局地址空间,系统中的每一个CPU都可以访问整个系统的内存,但访问时所使用的指令不同。

参考文献:

[1]陈向群,向勇,王雷等.Windows操作系统原理(2版)[M].北京:机械工业出版社,2004.

[2]吴旭光,何军红.嵌入式操作系统原理与应用[M].北京:化学工业出版社,2007.

[3]张尧学等.计算机操作系统教程[M].北京:清华大学出版社,2013.