你的位置: iPc 首页 > 全部文章 > 杂乱无章 > 阅读文章
科学X网    Office    苹果中国    微软中国    VPS

SpaceOS - 不为人知的中国航天器操作系统,未来将民用

21
十二月

说起微软的 Windows,苹果的 Mac OS 以及谷歌的 Android,相信大家都不会陌生,它们都是操作系统,即对计算机的各种资源进行管理的软件,是计算机能够运行的灵魂,美国的一些航天器上用的就是 VxWorks 操作系统。但是,如果问起我国航天器上的计算机用的是什么操作系统,也许很少有人知道……

神秘

事实上,中国航天科技集团公司五院从2001年就开始研发星载计算机特有的操作系统——SpaceOS,并在2006年首飞成功。此次的嫦娥三号探月任务控制计算机使用的是经过升级和改进后的第二代星载计算机操作系统 SpaceOS2。该系统首次亮相应用,就吸引了众多关注的目光。

中国航天要有自己的操作系统

尽管与普通家用的操作系统设计原理相似,但“上天”的操作系统为了适应恶劣太空环境,对安全性、可靠性等要求要苛刻许多。

地面使用的计算机死机了可以重启,坏了还可以换新的,但飞行器上的计算机开机了通常就不会再关闭或重启。在轨运行时间较长的卫星寿命可达十几年,这也就意味着计算机程序要同步运行十几年不出现问题。

更重要的是,对于航天这样的事关国家安全的关键领域,“拿来主义”是很危险的。而要研发自己的操作系统,相关核心技术国外严密封锁,想要借用也没有可能。

在星载计算机操作系统投入使用以前,中国的卫星通常都采用程序控制的方式来完成指令。这种“傻瓜”式的运行模式非常简单,但也非常机械,它要求技术人员在地面设计好卫星要进行的每一个动作,严格按照时序编写程序。形象地说,就是如果设定卫星的任务为“吃饭—喝水—睡觉”,卫星上天之后只能按照这个顺序重复动作,想要先喝水后吃饭是做不到的。

由于卫星的运行轨道相对封闭和确定,程序控制虽然机械繁琐,也能够满足任务要求。但随着我国在轨任务越来越复杂,对计算机软件管理提出了越来越高的要求。

研发中国自己的星载计算机操作系统势在必行。没有借鉴,就从零开始慢慢摸索。独立自主创新,成为了摆在研发团队面前唯一道路。

想象

两代SpaceOS的华丽蜕变

2006年,SpaceOS1 成功在轨运行。那时的操作系统功能简单,只做到了多种资源的管理和任务调度,却没有任务间的通信和动态内存管理等更为复杂的功能。

3年以后,嫦娥三号立项,巡视器要实现月面行走。相比卫星轨道,月球是一个开放的空间,环境恶劣、不确定因素多、控制复杂。这种任务对航天器智能性和自主性的要求很高,而这恰恰是操作系统的绝佳用武之地。

此时功能简单的 SpaceOS1 已无法满足任务要求,科研人员开始着手进行第二代产品的攻关。经过2年研发,SpaceOS2 正式推出,在很多方面都实现了质的飞跃,并成功应用到了嫦娥三号巡视器的中心控制计算机上。

在任务调度和内存管理方面,SpaceOS2 可以同时管理几十个任务,与原来5个任务相比,提高了一个量级,同时可以做到快速、有序存储。月球车在月面行走时,要一边不停地拍摄月面环境,一边快速保存和处理这些信息。如果此时突然遇到一个坑,操作系统必须在最短的时间内作出判断并反应,否则就有可能掉进坑里。目前,研究人员设计的内存管理方法和调度方法,从功能、效率上来讲,已经可以和国际上最先进的类似产品相媲美。

而如果说到最具有我国特色和竞争力的技术,就不得不提到三机容错。一般卫星上会有两台计算机冷备份,一台工作时另一台不工作,如果工作的计算机出现了故障或问题,就立刻切换到另一台。但切换的过程中,不可避免的会有一些因计算机启动等带来的秒级的时间差。为了实现真正的无缝切换,嫦娥三号上第一次实现了三机热备份,即三个计算机同时工作,处理同样的任务,有可能其中一台计算机给出的计算结果是错的,那么三机容错就要发现哪台计算机有错,并最终给出正确的结果。

彩虹

从双机冷备份到三机热备份,看上去似乎只增加了一台计算机,但带来的难度和工作量却是呈指数级增长的。研发人员坦言,那种压力来自于知道应该实现什么目标,但对怎么实现毫无头绪。那时做梦都在思考这些问题,有些难关甚至是在梦里攻克的。

未来或可发展为民用

目前,这个只有十几个人组成的年轻团队正在进行 SpaceOS3 的研发工作,第三代产品的技术将更加先进和前沿。

例如研制高性能多核计算机,让运算速度和处理能力大幅度提升;还有目前操作系统领域最前沿的技术——形式化验证,即从建模和证明的角度来验证设计领域软硬件的正确性,如果这一技术得以突破,将改变航天目前通过大量测试来验证设计正确性的方法,从根本上确保设计的无差错和高可靠。

SpaceOS操作系统能否发展民用?

当被问及这个问题时,研发人员表示,航天操作系统技术本身是可以转为民用的。但由于航天精品化和个性定制的特点,不够产品化和通用化,距推广成熟的民用产品还有一定距离。

目前,SpaceOS操作系统正在考虑航天系统内的推广应用,未来还将逐步拓展到其他领域。也许有一天,我们每个人的手机上,都可以使用到“中国航天”品牌的操作系统了。

关于本文
各种回音
  1. 说: 回复他/她

    不敢公布出来,拍被人破解吧

    • 说:

      老美的也没公布吧= = 话说现在系统Windows MAC OS,最多加一个Linux论天下

  2. 说: 回复他/她

    热备份比冷备份技术难而且消耗的功率也高,也就是说现在处理的任务量仅用现有功率即使三机热备份也带的动,还是很微妙的处理速度啊。

  3. 说: 回复他/她

    没可能民用啦,兼容性奇差…

    • 说:

      我估计,连通讯协议都是自己写的,保密啊。TCP/IP重构?(如果有的话) 我的妈呀…这种核心程序根本不能够用。

    • 说:

      修改它还不如自己从头写一个… 浪费时间

  4. 说: 回复他/她

    关键核心技术应该不会用通用协议的, 那等于没有任何秘密可言, 就像专家说了, 嫦娥和玉兔的通信使用了类似wifi的技术,但不是wifi

  5. 说: 回复他/她

    为什么要民用,人家就不是给民用设计的

  6. 说: 回复他/她

    99.99% 的可能性是抄的Linux内核,然后去掉一些不用的东西,就成自主研发了,还可以申请到一笔不少的科研经费。

    • 说:

      也不一定是抄linux,比如还有freeBSD,哦这个已经抄过一次了….(开门查水表)

    • 说:

      这个跟麒麟不一样。别以为看点公知微博就是内行了。少说点风凉话吧。

    • 说:

      就算是抄了linux也没什么关系嘛,linux本来就是一个十分优秀的操作系统,linux源代码公布就不怕后门

    • 说:

      晕死,vxworks和linux是一个东西么,如果你认为是,那你就对了

    • 说:

      linux内核可以做实时系统?
      你的计算机是地理老师教的?
      还是我的计算机是地理老师教的?

  7. 说: 回复他/她

    看来值得期待

  8. 说: 回复他/她

    三机容错,有没有少数派报告的影子?

    • 说:

      同样思考

  9. 说: 回复他/她

    既然保密的话,什么可能都有,也许只是修改一下现有的,再加上保密,就不知道是什么 就没办法攻破了,不过还是看到点中国航天的进步的,中国,加油

  10. 说: 回复他/她

    哈哈,说了一大堆,图片都没有一张,又是龙芯系列吧?

  11. 说: 回复他/她

    我想民用市场也不需要它吧,换个说法,这货民用能提供现有主流系统所不能提供的功能……?如果没有,民用有毛线价值。

  12. 说: 回复他/她

    你就吹吧,继续的吹牛吧。六十年老美用了四天,今天的嫦娥用了接近半个月。
    小编说的第一代 只有5个任务,怎么和uCOS这么像。内核是人家的,自己包装个皮就说是自己的,哪有这么不要脸的。 科技来不得半点虚假。

  13. 说: 回复他/她

    航天系统好多软件都是windows的,连Linux都少见,不过火箭系统不知道,但军用还是很多windows的

  14. 说: 回复他/她

    工业上使用倒是没问题了,但民用又另外一回事!

  15. 说: 回复他/她

    看到十几个人开发我就知道是什么样子了,微软上万人的研发团队。

  16. 说: 回复他/她

    配图好像完全不相关的样子

  17. 说: 回复他/她

    还是呆在天上算了

微博评论箱