搜索
查看: 3284|回复: 0

神舟飞船用什么操作系统?是否是纯国货

[复制链接]

1839

主题

2255

帖子

1万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
11913
发表于 2015-7-6 11:49:58 | 显示全部楼层 |阅读模式

手机、平板等移动设备的快速发展,促使人们开始越来越多关注各种操作系统。何为操作系统呢?简单来说,操作系统就相当于我们的人类的大脑,控制着计算机硬件与软件资源的协同运作,如果非要说有啥区别,那么就是现如今的操作系统不会思考。但会思考的操作系统也并非离我们太遥远,不久的将来很可能就会出现。

VRzYVfY.jpg

谈到操作系统,人们可能了解最多的就是微软的Windows, 苹果 的Mac OS以及谷歌的安卓。当然如果你够资深,可能还会了解Linux、Windows  Server 等操作系统。这些系统可以说是计算机的灵魂,直接影响到硬件的操控情况。

近日,两条有关航天航天系统的消息吸引了我的关注,一个消息就是中国高分八号卫星在太原成功发射成功。

22Uj6n.jpg

另一条信息是美国“猎鹰9”火箭发生升空后发生剧烈爆炸并解体。

26fMf2J.jpg

两条都是关于航天卫星的信息。笔者就想了,计算机系统在航天发生对操控的影响有多重要呢?中国与美国的航天计算机的操作系统有何区别呢?他们都用的什么操作系统呢?带着这些疑问,笔者查找了很多资料,在这里将我的一些思考结合起来跟大家说一下。希望能够让大家对航天飞船的操作系统有些了解。

航天飞船用什么操作系统呢?

据了解,中国航天科技集团公司五院从2001年就开始研发星载计算机特有的操作系统——SpaceOS,并在2006年首飞成功。那么SpaceOS为何许人也呢?

首先,我们要了解SpaceOS系统,那么需要先了解航天飞船的计算机的特点。

航天器上的计算机将面临来自太空的环境的巨大挑战。在太空中,航天器的计算机将会遭到子、中子、重离子、电子的轰炸。同时“总剂量效应”和“单粒子效应”是两种典型的太空射线对空间计算机造成的损害,也是星载计算机同其它地面计算机的最大挑战。

并且,控制计算机要承受摄氏零下35度到70度的巨大变化,同时还要具有抗辐射、抗静电、抗震动等能力。在考核试验综合应力时,一面震动、一面温度急剧变化、同时多个条件加载,考验产品的极限性能都要满足。

不能关机、不能复位、不能初始化是航天器控制计算机的基本要求,地面上的通用计算机不可能做到一直运行,总有开机、关机的时候,如果出错,换个零件、升级一下软件都很容易实现,但是太空计算机如果出错,不可能更换故障元器件,只能通过及时的故障诊断、故障隔离和系统恢复解决问题。1998年欧洲阿里亚娜5号运载火箭失败,2011年国外航天器失败,都是由计算机系统错误导致的。

byayI3.jpg
神州九号太空计算(图片来源新浪博客)

太空计算机的外观与常见的商用计算机有着很大的不同。以神州九号太空计算机为例,它的外形是一个坚固的经过特殊处理的金属盒子,通过外露的接口与宇宙飞船各种设备相连接。这样坚固的构造保证了在起飞和降落阶段能够承载瞬间巨大的“加速度”冲击和剧烈的震动而不会损坏。并且整个太空计算机总重量的指标是十分苛求的——不能太重,大约是十几千克吧。

但是,即使是这样一个简朴的黑盒子,它的造价是我们常见的商用计算机的500倍以上。这就需要设计开发人员在工作中分外严格遵守操作流程。甚至有人开玩笑说,如果不小心烧毁一个芯片,那么一辆奥迪车就没了。

好了,介绍完硬件平台,那么我们就来说一下SpaceOS

航天计算机的硬件造价非常高,但是其硬件配置在我们看来却非常的低。据了解,502所从1998年开始研制星载计算机,从2006年,自主研发的SpaceOS操作系统成功运行,现在的神舟九号和天宫一号使用的都是用的这个操作系统。

那么接下来我们来解答上面的各种疑问。为何航天系统不采用Windows 或者Linux这些操作系统呢?  

YBz22m.jpg
Windows 10

家用系统多数情况下要求系统的均衡运行,能够满足我们日常的生活工作需求。比如,网友可以同时玩游戏,上网,听音乐,但实时系统都是重要任务先执行,不重要的任务往后放,这种设计理念与航天器的计算机是不一样的。

Linux/Unix/Windows这些都是通用操作系统,由于兼顾的功能太多,所以其更复杂。航天器的计算机并不需要满足这么多功能,只要能够完成所需的操作就可以了。这也减少了系统出现故障的几率。

而且,航天器的内存和CPU都非常弱,据称,天宫一号的CPU是10MHz的,内存是2M,这种配置跑Windows和Linux比较费劲,虽然采用Linux也并非不可能但要裁剪Linux内核确实太麻烦了。但那么大量的裁剪,谁来保证裁剪后的系统的稳定性?

更致命的是,Linux不是一个硬实时操作系统。航天器对计算机的要求必须是实时的控制。对快速中断响应,对关中断的时间有非常严格的控制。Linux和Windows他们是民用的操作系统,其内核设计并没有考虑到这些点,所以Linux不适用于航天领域。

SpaceOS操作系统是否属于纯国货?

据介绍,我国自主研发,具有自主知识产权的实时多任务空间操作系统SpaceOS1,历时5年完成研制,从2006年已成功运行于通信卫星上,截至2012年3月,使用SpaceOS的飞行器已经发射了33颗星(船),并且这些飞行棋全部稳定运行,未发生任何在轨问题。

中国航天科技集团五院星载计算机首席专家华更新研究员总结说:“我国自主研发的空间计算机的操作系统SpaceOS,已经从引进、消化、吸收,逐步过渡到当前的自主可控。”

2Av2mi.jpg
VxWorks

提到系统的自主研发,肯定有人会说,中国航天用的SpaceOS主要内容是仿造美国风河系统公司的VxWorks653(653是产品名,并非版本号),那么是否还是自主研发呢?

之所以说系统是自主研制,这代表着这个系统是我国自己从头开始写的,但借鉴了现有VxWorks653系统的代码。SpaceOS代码非常少,与其说是说是操作系统,实际就是一套硬件管理程序。

那么中国人能不能写出自己的桌面通用操作系统呢?完全可以自己开发,但写一个操作系统容易,中国并不缺技术人员,大可去挖 intel 和AMD的墙角。但是相应的配套服务(比如开发软件支持等)如果跟不上,那自己写出桌面操作系统也是没用的。

所以,无论是哪个行业,其实看似简单的基础对一个产业的未来发展有着巨大的作用。我国错过了计算机基础理论发展的黄金阶段,这就需要我们在后面几十年去填补这个苦果。这个并不是在很短的时间能够弥补的,但我们却不能视而不见,需要对计算机产业的基础重视起来。


过段时间可能会取消签到功能了
您需要登录后才可以回帖 登录 | Join BUC

本版积分规则

Powered by Discuz!

© 2012-2015 Baiker Union of China.

快速回复 返回顶部 返回列表