并行作业系统是一种挖掘现代高性能计算机和现代作业系统的潜力的计算机作业系统,能够最大限度地提高并行计算系统的计算能力。
并行作业系统是针对计算机系统的多处理器要求设计,它除了完成单一处理器系统同样的作业与进程控制任务外,还必须能够协调系统中多个处理器同时执行不同作业和进程,或者在一个作业中由不同处理器进行处理的系统协调。因此,在系统的多个处理器之间活动的分配、调度也是作业系统的主要任务。
基本介绍
- 中文名:并行作业系统
- 外文名:concurrent operating system
- 简写:COS
- 起源时间:1975年
- 目的:提高计算机计算能力
- 所属学科:计算机科学
发展
并行作业系统是随着并行计算机的发展而发展的。早期的并行计算机只是简单地利用向量板或数组机来提高串列计算机的性能,此时作业系统最多只需要做一些诸如载入的简单操作,并不算是并行作业系统。最早的并行作业系统要算是美国的卡内基梅隆大学于1975年在16台PDP11/40互联而成的C.mmp上实现的Hydra系统。儘管这一系统主要是致力于机器性能的管理与保护,但是它在并行作业系统方面作了许多有益的探索,这些对于现代并行作业系统的设计仍然有相当重要的影响。并行作业系统在发展初期具有一个较明显的特徵,即大量地使用专门的彙编语言来编写专用作业系统,这样做是因为,一是当时高级语言对并行的描述还不完善;二是发展较成熟的作业系统如UNIX通常存在巨额的系统开销,这与并行机的系统结构和昂贵代价不适应,因此要使并行机达到较高的性能必须採用高效的彙编语言,以针对并行计算机的自身特点和其特殊的套用领域来编写作业系统。这样形成的并行作业系统虽然远不如传统的UNIX那样功能丰富、使用方便,但是它的简洁高效又是传统的UNIX所望尘莫及的。早期并行计算机的主要开发商Cray公司的早期并行作业系统COS就是用专门的彙编语言编写成的。
但是这种使用专门的彙编语言编写成的并行作业系统具有一个很显着的缺点,即它的应用程式界面没有一个统一的标準,这样使得在作业系统上的应用程式的移植变得十分困难;随着计算机并行技术的不断提高以及半导体工业的飞速发展,并行计算机的价格比早期的并行计算机已有大幅度的下降,因此人们对于统一的并行作业系统的应用程式界面的要求已远大于由此引起的系统开销。于是,为了迎合用户的需要,占领更多的市场,计算机的製造商提供了模拟的标準界面,如UNICOS。
随着并行计算机的普及,传统的UNIX厂商(从USL到NOVELL、SCO、HP)为了自身的生存,均对传统的UNIX的结构进行修改,吸收许多的新技术、新功能,以适应并行计算机市场的需要;例如推出了支持多处理机的UNIX system V Release 4.2 for MP以及UNIXWare2.0。在1998年2月,SCO和HP还联合发布了下一代64位UNIX的开发计画,在该计画中,首次提出了作业系统的三维体系结构(3DA)构想,从而更好地有利于作业系统的并行性的开发。
进入20世纪80年代,随着计算机网路的发展,出现了分布处理的概念,即把一个任务分散到多个计算机上去运行,而这些计算机可能在物理上是分散的,相互之间採用网路互连,通过讯息传递进行通信。
特点
传统的作业系统为了提高硬体资源的利用效率,採用了多任务并发执行的技术。即通过切换不同的用户程式以达到多道程式的运行目的。而并行作业系统是要提供真正的多道程式运行环境。当可运行的用户程式数目小于或者等于处理器个数,它们将真正地得到并行执行。并行作业系统除了要管理各个节点机之外,还要负责各节点与宿主机的通信以及节点机相互之间的通信和同步等功能。
早期的并行操作一般是在单机作业系统的基础上扩展通信模组、分散式档案系统或网路伺服器等组成。现在已有微核心化、面向对象等全新的并行作业系统出现。
分类
一、按控制方式分类可分为以下四类:
1、主从式(Master-Slave)
主从式是并行作业系统中较为简单且较古老的一种。它比较适合于有主从关係的体系结构的并行计算机中,也可用于对称式环境。主从式作业系统的主要特点就是它将所有系统服务和中断处理安排在一个处理器(该处理器称为主处理器)上运行;其它处理器(称为从处理器)的管态进程均要送到主处理器上去处理。
2、独立式(Separate Supervisor)
独立式作业系统是指在每一个处理器上有一个作业系统核心,它是与主从式截然不同的结构,而与网路上的作业系统有类似之处。这种方式的作业系统的资源共享是一种较高级别的资源共享方式,如档案共享。
3、浮动式(Floating Supervisor)
浮动式结构的主要特徵是作业系统的核心不是固定在某一个处理器上(就像主从式),而是根据需要在几台能执行核心的处理器上浮动运行。
4、多执行绪(Multithread)
执行绪是可以单独执行的实体,是一些具有必要的最小状态的轻量级进程;所谓最小状态包括进程状态和相关暂存器的内容。所谓多执行绪的并行作业系统其实是对核心重新进行设计或对浮动式的进一步改进,即使核心的分块足够小,足以使多个处理器可以同时在核心中运行,这时便形成了多执行绪核心。
二、按核心结构可分为以下几类:
1、整体核心系统
并行作业系统的核心如果是一个整体,仅通过一个简单的硬体边界与用户程式分离,而在作业系统内部各模组之间无边界保护的核心结构,我们就称之为整体核心。在整体核心的结构中,进程间的通信作为一种高级的作业系统功能是通过系统支持的共享记忆体或可见的基于讯息的通信机制来实现的。
2、基于能力的系统
在这种系统下,每一个核心模组或硬体资源中的可访问实体均有自己的保护域,同时所有的实体均位于单一的有名空间下。
3、讯息传递系统
这种作业系统核心中,各进程一直存在于自己的地址空间下,同时进程的通信是通过通信通道上的讯息传递实现的。