由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Programming版 - 中国航天打造spaceOS (转载)
相关主题
中国航天SpaceOS操作系统爽! Android Studio 1.0 Released
大规模倒闭、裁员和降薪 游戏行业发生了什么?Blackberry的QNX有谁用过么?
quantum computing era is comingKylin OS 有知道的吗?
申请成立嵌入式技术版 (转载)操作系统的新思路
有没有人关心qt的前途?请教一个递归程序的问题
This is real: asteroid mining company hiring呵呵,问一个转专业到cs master的选课问题 (转载)
为什么Java在内置系统里争不过C++?给推荐一本C/UNIX编程的书吧 (转载)
现在还鼓吹学c++好的,心理绝对阴暗之极。8bit CPU应该弄个啥操作系统呢?
相关话题的讨论汇总
话题: 操作系统话题: 计算机话题: spaceos话题: 中国航天话题: 任务
进入Programming版参与讨论
1 (共1页)
s*****V
发帖数: 21731
1
【 以下文字转载自 Military 讨论区 】
发信人: saturnV (土星五号), 信区: Military
标 题: 中国航天打造spaceOS
发信站: BBS 未名空间站 (Tue Dec 17 12:51:11 2013, 美东)
SpaceOS操作系统,中国航天造
2013-12-17
说起微软的Windows,苹果的Mac OS以及谷歌的Android,相信大家都不会陌生,它们都
是操作系统,即对计算机的各种资源进行管理的软件,是计算机能够运行的灵魂,美国
的一些航天器上用的就是VxWorks操作系统。但是,如果问起我国航天器上的计算机用
的是什么操作系统,也许很少有人知道。
事实上,中国航天科技集团公司五院从2001年就开始研发星载计算机特有的操作系统—
—SpaceOS,并在2006年首飞成功。此次的嫦娥三号探月任务控制计算机使用的是经过
升级和改进后的第二代星载计算机操作系统SpaceOS2。该系统首次亮相应用,就吸引了
众多关注的目光。
中国航天要有自己的操作系统
尽管与普通家用的操作系统设计原理相似,但“上天”的操作系统为了适应恶劣太空环
境,对安全性、可靠性等要求要苛刻许多。
地面使用的计算机死机了可以重启,坏了还可以换新的,但飞行器上的计算机开机了通
常就不会再关闭或重启。在轨运行时间较长的卫星寿命可达十几年,这也就意味着计算
机程序要同步运行十几年不出现问题。
更重要的是,对于航天这样的事关国家安全的关键领域,“拿来主义”是很危险的。而
要研发自己的操作系统,相关核心技术国外严密封锁,想要借用也没有可能。
在星载计算机操作系统投入使用以前,中国的卫星通常都采用程序控制的方式来完成指
令。这种“傻瓜”式的运行模式非常简单,但也非常机械,它要求技术人员在地面设计
好卫星要进行的每一个动作,严格按照时序编写程序。形象地说,就是如果设定卫星的
任务为“吃饭—喝水—睡觉”,卫星上天之后只能按照这个顺序重复动作,想要先喝水
后吃饭是做不到的。
由于卫星的运行轨道相对封闭和确定,程序控制虽然机械繁琐,也能够满足任务要求。
但随着我国在轨任务越来越复杂,对计算机软件管理提出了越来越高的要求。
研发中国自己的星载计算机操作系统势在必行。没有借鉴,就从零开始慢慢摸索。独立
自主创新,成为了摆在研发团队面前唯一道路。
两代SpaceOS的华丽蜕变
2006年,SpaceOS1成功在轨运行。那时的操作系统功能简单,只做到了多种资源的管理
和任务调度,却没有任务间的通信和动态内存管理等更为复杂的功能。
3年以后,嫦娥三号立项,巡视器要实现月面行走。相比卫星轨道,月球是一个开放的
空间,环境恶劣、不确定因素多、控制复杂。这种任务对航天器智能性和自主性的要求
很高,而这恰恰是操作系统的绝佳用武之地。
此时功能简单的SpaceOS1已无法满足任务要求,科研人员开始着手进行第二代产品的攻
关。经过2年研发,SpaceOS2正式推出,在很多方面都实现了质的飞跃,并成功应用到
了嫦娥三号巡视器的中心控制计算机上。
在任务调度和内存管理方面,SpaceOS2可以同时管理几十个任务,与原来5个任务相比
,提高了一个量级,同时可以做到快速、有序存储。月球车在月面行走时,要一边不停
地拍摄月面环境,一边快速保存和处理这些信息。如果此时突然遇到一个坑,操作系统
必须在最短的时间内作出判断并反应,否则就有可能掉进坑里。目前,研究人员设计的
内存管理方法和调度方法,从功能、效率上来讲,已经可以和国际上最先进的类似产品
相媲美。
而如果说到最具有我国特色和竞争力的技术,就不得不提到三机容错。一般卫星上会有
两台计算机冷备份,一台工作时另一台不工作,如果工作的计算机出现了故障或问题,
就立刻切换到另一台。但切换的过程中,不可避免的会有一些因计算机启动等带来的秒
级的时间差。为了实现真正的无缝切换,嫦娥三号上第一次实现了三机热备份,即三个
计算机同时工作,处理同样的任务,有可能其中一台计算机给出的计算结果是错的,那
么三机容错就要发现哪台计算机有错,并最终给出正确的结果。
从双机冷备份到三机热备份,看上去似乎只增加了一台计算机,但带来的难度和工作量
却是呈指数级增长的。研发人员坦言,那种压力来自于知道应该实现什么目标,但对怎
么实现毫无头绪。那时做梦都在思考这些问题,有些难关甚至是在梦里攻克的。
未来或可发展为民用
目前,这个只有十几个人组成的年轻团队正在进行SpaceOS3的研发工作,第三代产品的
技术将更加先进和前沿。
例如研制高性能多核计算机,让运算速度和处理能力大幅度提升;还有目前操作系统领
域最前沿的技术——形式化验证,即从建模和证明的角度来验证设计领域软硬件的正确
性,如果这一技术得以突破,将改变航天目前通过大量测试来验证设计正确性的方法,
从根本上确保设计的无差错和高可靠。
SpaceOS操作系统能否发展民用?
当被问及这个问题时,研发人员表示,航天操作系统技术本身是可以转为民用的。但由
于航天精品化和个性定制的特点,不够产品化和通用化,距推广成熟的民用产品还有一
定距离。
目前,SpaceOS操作系统正在考虑航天系统内的推广应用,未来还将逐步拓展到其他领
域。也许有一天,我们每个人的手机上,都可以使用到“中国航天”品牌的操作系统了
。(江雪莹)来源:中国航天网
d*******r
发帖数: 3299
2
啥构架呀,能给个连接介绍下吗,没有源码吧
m******t
发帖数: 635
3
http://www.amobbs.com/thread-5484729-1-1.html
8000多行代码(C?),就是个小的RTOS

【在 d*******r 的大作中提到】
: 啥构架呀,能给个连接介绍下吗,没有源码吧
1 (共1页)
进入Programming版参与讨论
相关主题
8bit CPU应该弄个啥操作系统呢?有没有人关心qt的前途?
memory leak 问题This is real: asteroid mining company hiring
javascript onmouseover为什么Java在内置系统里争不过C++?
什么样的device需要操作系统呢?现在还鼓吹学c++好的,心理绝对阴暗之极。
中国航天SpaceOS操作系统爽! Android Studio 1.0 Released
大规模倒闭、裁员和降薪 游戏行业发生了什么?Blackberry的QNX有谁用过么?
quantum computing era is comingKylin OS 有知道的吗?
申请成立嵌入式技术版 (转载)操作系统的新思路
相关话题的讨论汇总
话题: 操作系统话题: 计算机话题: spaceos话题: 中国航天话题: 任务