论文部分内容阅读
超并行处理(Hyper Parallel Processing, HPP)体系结构是国家智能计算机研究开发中心提出的一种新型的并行计算机体系结构,它从硬件层面上实现了全局物理地址空间,是一种改进的机群结构。HPP操作系统——Xingzhe3是以HPP体系结构为基础,同时又可以兼容标准机群硬件平台的分布式操作系统,具有单一系统映像的特点。Xingzhe3操作系统采用一主(管理核心)多从(计算核心)式的非对称、多核心结构,具有全局进程空间,支持进程在执行execve()类系统调用的时候在不同的操作系统核心间迁移以达到负载平衡。另外,Xingzhe3计算核心操作系统采用轻量级的设计以最大限度地降低负载。新型的体系结构和操作系统结构给进程间通信机制的设计和实现提出了新的要求、提供了新的边界条件,因此对Xingzhe3分布式操作系统进程间通信机制的研究成为Xingzhe3操作系统乃至HPP体系结构研究的重要组成部分。
本文主要研究在Xingzhe3操作系统中实现进程间通信机制所涉及到的关键技术,设计并实现了三种分布式进程间通信机制:
1.针对全局进程空间和进程执行execve()类系统调用时迁移的特性,设计了Xingzhe3全局信号机制,实现了Xingzhe3操作系统中多核心之间的、安全而又快速的全局信号投递。经测试,该机制的性能与以往的单机操作系统中信号传递的速度相当。
2.为了支持不同节点上的进程通过管道通信,提出了分布式管道机制。在分布式命名管道的支持下,不同节点上的进程可以使用FIFO通信;在分布式匿名管道的支持下,父子进程在其中一方迁移到其它节点后仍然可以通过pipe通信。测试结果表明,主从单核心的管道性能与单机操作系统的管道性能相近。
3.针对HPP体系结构的网络硬件结构特征,设计了分布式网络协议栈。其中,通过协议栈集中处理机制,实现了单一IP地址、单一登录点的特性,并为各个核心提供了透明的Socket网络通信服务,同时实现了应用计算与协议栈处理相分离,提高了计算节点的性能;通过TCP/IP Shortcut机制为计算核心间提供了简单而高效的TCP通信。经过对原型系统的评测,Xingzhe3分布式网络协议栈在功能上与单机操作系统等同,在性能上,计算核心间通信延迟在9us左右,带宽为337MB/sec。
这三种分布式进程间通信机制为Xingzhe3操作系统提供了与Linux兼容的通信接口和通信语义。传统的应用程序无需修改源码、无需重新编译链接即可实现分布式环境下的进程间通信。另外,采用了多种优化技术以保证单核心应用程序的进程间通信性能。