看过新闻,具体的忘了。大致上,卫星系统和火箭差不多,没几个国家能做(当然可以用linux,windows,ucos之类的系统)。中国是自己研制的。专门针对火箭卫星做的。
转:
3年以后,嫦娥三号立项,巡视器要实现月面行走。相比卫星轨道,月球是一个开放的空间,环境恶劣、不确定因素多、控制复杂。这种任务对航天器智能性和自主性的要求很高,而这恰恰是 *** 作系统的绝佳用武之地。
此时功能简单的SpaceOS1已无法满足任务要求,科研人员开始着手进行第二代产品的攻关。经过2年研发,SpaceOS2正式推出,在很多方面都实现了质的飞跃,并成功应用到了嫦娥三号巡视器的中心控制计算机上。
在任务调度和内存管理方面,SpaceOS2可以同时管理几十个任务,与原来5个任务相比,提高了一个量级,同时可以做到快速、有序存储。月球车在月面行走时,要一边不停地拍摄月面环境,一边快速保存和处理这些信息。如果此时突然遇到一个坑, *** 作系统必须在最短的时间内作出判断并反应,否则就有可能掉进坑里。目前,研究人员设计的内存管理方法和调度方法,从功能、效率上来讲,已经可以和国际上最先进的类似产品相媲美。
-----------------------
这些系统要高可靠性,高安全性,然后是实现功能。其它不重要。
人造卫星的程序,现在的编程语言是用C/C++来写底层的核心的代码。也就是c语言编写程序,输入人造卫星的周期T,从而计算并输出人造卫星离地面的高度H。1958年的中国科学院,也就是在上个世纪50年代时,我国程序员编程时刻没有Basic,没有汇编,也没有Colbol,不像今天可以书写程序,用的都是机器语言。编出来的程序是高度抽象的机器语言,根本不是现在人能看懂的二进制小孔指令。任何语言存在的必要性都是为了匹配应用程序的所属领域。所以我们可以将空间任务软件视为基于事件驱动的体系结构,而生存任务肯定要优先于科学或其他活动。因此,任务的软件开发过程都要依靠编程语言,这些代码有望在预判和非预期的场景中执行任务。比如,现代纳米卫星中常用的 *** 作系统为FreeRTOS和Linux,通常是一种ARM微处理器。
而人造卫星在国防事业、经济建设和推动科技发展等诸多方面作用都至关重要。卫星的一个显著特点是,一旦升空便无法维修。这点就要求在卫星发射前必须对各部分进行严格测试,发现并消除所存在的安全隐患,用以保证其在进入预定轨道后可以正常启动。所以卫星数据管理分系统为整个卫星的核心部分,那么对数据管理分系统的测试尤为重要。上位机使用Microsoft Visual Studio 2005开发环境,采用C++面向对象界面编程。
人造卫星的编程程序是一项关键的任务活动,用这种编程语言编写代码应该很有趣,因为我们希望没有太空产业的人们也能用这种形式去亲身体验太空探索过程。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)