Advertisement

航天器操作系统总结

阅读量:

文本主要讨论了嵌入式航天器操作系统的发展与应用。早期卫星产品多使用Linux系统,但其上下文切换和中断响应能力不足,不适合高可靠性需求。VxWorks操作系统因其高可靠性、长运行时间和高效的中断处理而被广泛采用,尤其在NASA和中国航天领域。SylixOS则作为嵌入式实时操作系统,支持多核调度和小体积设计,适用于中国军工项目。实际案例中,好奇号火星探测器使用了VxWorks,而SylixOS则在翼辉信息的翼鹰翼系统中得到应用。

从2015年以前发表的帖子来看,国内上天的卫星产品没有使用Linux系统的。

一、Linux系统

Linux作为一种抢占式多任务操作系统,上下文切换和中断不可避免。然而,我们可以通过为任务进程设定运行优先级(nice/renice)以及实施CPU核心亲缘性绑定(taskset)来优化性能。即使发生上下文切换,这也仅需微秒时间,虽然很快,但与实时性相比略显不足。如果航天器之间的时间差异达万分之一秒,这可能导致严重的问题,因此不建议使用Linux。

二、航天器对计算机操作系统的要求

因为对抗高能粒子等技术要求,计算机运行频率较低(天宫一号主机计算频率约为20MHz),尺寸较大(VxWorks653内核可精简至仅8000行代码,同时支持SPARC架构,据称此类设备如天宫系列均采用该内核),无法运行标准操作系统。在军工航天领域,实时操作系统多选用风河公司的VxWorks。该领域对计算机系统的要求包括:稳定性、高可靠性、体积不宜过大、实时性能强。

稳定:意味着内核代码不能频繁修改,这会导致Linux内核版本更新频率过高,从而影响系统的稳定性。稳定性要求内核代码不能频繁修改,这会导致Linux内核版本更新频率过高,从而影响系统的稳定性。例如,Linux内核的版本更新频率非常高,每隔几年就会发布新版本,这可能会影响系统的稳定性。

系统具有高可靠性,意味着长时间运行且几乎无故障。其中,Unix系统声称其连续运行时间最长(但尚有疑问);而Windows系统的历史最长运行记录约为1年零多个月(这一数据较早,可能源自WIN2K版本)。

3、规模不宜过大:由于需要为其他任务腾出足够的内存空间,例如,探测器的数据存储和处理工作需要一定的内存空间,因此,内核的规模要控制得当。一般来说,典型的Linux内核大小在几MB左右,而Windows的内核文件NTOSKRNL.EXE也是如此。然而,需要注意的是,这里提到的镜像大小仅是基础镜像的占用空间,运行时的内存需求会更高。而VxWorks采用的最小内核设计能够降至数百KB,其运行内存需求仅需几MB即可满足要求。有人可能会质疑DOS是否能够达到如此小巧的规模,但DOS系统仅支持16位运算,且主要局限于X86架构。相比之下,VxWorks采用的是跨平台设计,支持MIPS、PPC、X86、ARM等多种架构,并且是一个完整的32位系统。

实时性高:实时性主要表现在对中断响应的速度上,大多数应用操作系统在处理中断时都显得不够迅速,具体表现为关闭中断所需的时间过长。当大量中断出现时,系统会出现丢中断的情况。VxWorks在这一方面具有突出优势,它处理中断的方式与传统操作系统不同,能够确保关闭中断所需的时间极为短暂。

航天器大多数都是基于嵌入式实时操作系统RTOS,主要使用Linux系统,但其实时性尚不理想。国内这方面的情况尚不完全明确,而美国国家航空航天局(NASA)那边主要使用VxWorks。VxWorks的航天版本设计中没有中断机制,仅存在一个时钟中断。这种设计的优点在于系统在任何时刻的状态都是可预知的,这种设计对天上的设备至关重要,因为一旦出现故障,可以通过推测故障发生的原因来处理。

三、SylixOS操作系统

2016年5月,翼辉信息成功实现了中国第一份操作系统源码级软件授权协议的签署。该协议赋予中国航天科工集团三院三部发布SylixOS发行版海鹰翼辉嵌入式实时操作系统的能力,SylixOS正式确定为中国航天科工集团新一代武器系统的基础软件平台。同年,翼辉信息与航天科技集团八院八〇四所达成软件授权协议,后者将推出SylixOS发行版风云翼辉嵌入式操作系统。风云翼辉的诞生标志着SylixOS实时操作系统成功进入中国卫星领域,为推动中国宇航事业的发展提供了重要支撑。

SylixOS 是专为嵌入式实时环境设计的系统,它支持多核处理器的实时调度机制,并能在多种处理器架构的目标平台上运行。该系统以其卓越的实时性能和可靠性著称,为嵌入式设备的开发者提供了功能丰富且稳定的软件开发平台。SylixOS 的详细信息和下载链接可参考 winghuiinfo.com 产品页面。

四、航天器软硬件举例

中国的军工行业在航母、卫星、飞机、坦克等领域的自动化水平方面,主要依赖于VxWorks平台。需要注意的是,VxWorks仅提供平台基础,真正实现的上层软件需要各个厂商进行各自的技术开发。在控制系统的应用方面,各设备可能采用不同的平台,飞机和卫星等设备通常会采用多套控制系统以确保系统的可靠性与多样性。

2006年,SpaceOS1在轨顺利完成运行。其操作系统功能相对简单,仅实现了对多种资源的管理,且未实现任务间的通信和动态内存管理。

嫦娥号的硬件配置大致包括一个主频在百兆附近的CPU,搭配数十到上百兆的内存,同时配备几块FLASH闪存。在实际运行中,有人可能会质疑配置是否足够高。航天系统对设备的可靠性要求极高,因为太空环境中的辐射和极端温度变化会带来严重的影响。常见情况是CPU会出现位翻转,而极端的温度变化同样会对硬件运行产生不利影响。值得注意的是,民用CPU无法适应太空环境的要求。与好奇号火星探测器的配置相当,嫦娥三号的具体硬件参数如下:

1、硬件

2004年,勇气号(Spirit, MER-A)和机遇号(Opportunity, MER-B)两个火星探测器成功着陆于火星,它们配备了3MB的EEPROM存储器、128MB的内存和256MB的闪存存储空间。在2011年,美国国家航空航天局的好奇号(Curiosity)探测器则进一步拓展了火星探索,带来了更多科学发现。

好奇号火星车上的Rover Compute Element系统集成了一对完全一致的计算系统,其中一套作为备用系统,当主系统出现故障时会自动切换至备用系统。该系统采用256K EPROM、256MB内存和2GB flash memory配置,中央处理器基于BAE RAD750架构,该架构包含1040 million晶体管,核心频率范围为110至200 MHz。由IBM的PowerPC 750处理器架构实现,其运算速度达到400 MIPS(Mars rover的两个Rover Compute Element单元分别达到该水平),能够稳定运行于-55至70度之间,并在1000gray辐射条件下正常工作。

RAD750

2、软件

在软件方面,NASA选择不计后果的方式,采用的是经过27年实践检验、经过严格验证的VxWoks操作系统(该系统由美国的 Wind River Systems 公司开发,该公司已被英特尔收购)。VxWoks系统作为嵌入式系统领域的实时操作系统,已在旅行者号、好奇号、机遇号火星探测器、SpaceX Dragon飞船、以及广泛应用于 BMW iDrive、美军战斗机、阿帕奇直升机、Apple Airport Extreme和Linksys WRT54G路由器等场景中得到广泛应用。

VxWorks于1985年发布,并在持续进行开发。好奇号为何选择采用VxWorks?因为该系统具有高度的可靠性,并配备了成熟的开发工具包,据推测,其底层调度机制和中断系统特别适合处理EDL(进入、降落和着陆,即“恐怖七分钟”)等实时任务。

3、好奇号更多配置

(1)仪器

好奇号类似于一辆配备科学仪器的移动实验室,其上配备了200万像素的CCD传感器。MastCam能够以720p 10帧每秒的全色视频传输[火星景观],其成像性能令人惊叹。从科学角度来看,ChemCam相机可能具有最重要的作用,因为它能够发射激光至火星表面土壤或岩石样本,从而分析其成分。该设备配备了能够识别[受激原子]光谱的光谱仪以及能够捕捉激光照射区域详细图像的望远镜,其激光器安装于桅杆顶端。好奇号配备了火星手持透镜成像仪,其功能类似于一个超级放大镜,能够拍摄火星表面岩石、土壤的详细图像,其分辨率可达到捕捉一根头发丝水平的精细度。这台仪器相当于科学家手持的高科技望远镜,能够精确对准感兴趣的目标。[桅杆相机]安装在好奇号主车顶部桅杆上,由两个彩色相机组成,是该车的主要成像设备,其功能相当于左右眼,能够生成火星表面的三维立体图像。

动态中子反照率探测器,部署在好奇号主车身背部附近,旨在探测火星地表下的水冰及含有水分子的矿物结构。这台先进探测设备能够发射中子束,并通过探测器能够记录中子束的散射速度来分析地下环境。氢原子的延缓效应是探测器的关键指标,当大量中子速度迟缓时,表明地下可能存在水或冰。由俄罗斯航天署提供的这一设备,能够探测火星地表下50厘米以内的氢原子,为科学研究提供了重要数据。

(2)通讯

好奇号火星车的动力源自一台多任务放射性同位素热电发生器(MMRTG),该设备由美国能源部提供支持。这台设备本质上是一个核电池系统,它能够将热能转化为电能。好奇号的核电池设计寿命长达14年,使其能够持续运行14年。该系统不仅支持将数据从250万英里外的地点传输回地球,还具备通过X波段(8GHz)与地球深空网(DSN)建立通信的能力。此外,好奇号也可以通过UHF(300MHz-3GHz)天线与火星奥德赛号和火星勘测轨道飞行器进行通信。

全部评论 (0)

还没有任何评论哟~