白 亮,邱 源,韦 杰,孙逸帆,高 洁
(1.上海航天智能计算技术重点实验室,上海 201109;2.上海航天电子技术研究所,上海 201109)
星载嵌入式操作系统处于远程遥控的环境中,其软件的维护与修复相较于本地系统故障恢复要困难许多,无法进行手工维护,只能依靠操作系统的自我维护功能,以及接受地面上传的有限维护指令进行运行过程中的动态自我修复和更新。
针对星载嵌入式操作系统上运行的软件在长时间的运行过程中不可避免出现“软件衰老”现象[1],即伴随着软件的运行,系统资源逐渐耗尽或运行错误逐渐积累所导致的系统性能持续下降甚至停机的现象,采取在轨可重构措施来恢复软件性能。
星载嵌入式操作系统工作于恶劣环境中,星上的设备暴露于外太空,易受到外部环境的影响,从而对系统产生影响。而操作系统负责管理平台所有外部设备,系统的可靠性和安全性对操作系统的管理具有依赖性[2]。而且,操作系统在运行过程中,也会暴露出一定的设计缺陷[3],或是测试过程中没有发现和排除潜在设计缺陷。但是可以通过在轨可重构技术对软件进行修正与完善,进一步提高星载系统的安全性和可靠性。同时,还可以针对在轨运行卫星,通过可重构的方式,基于现有功能基础,实现卫星功能的升级和扩展,实现卫星的“App”(应用程序)式的快速开发和快速集成。
随着计算机技术的发展,基于动态库的可重构技术被广泛应用于商业等各个领域,主要由于动态链接库与主程序之间通过接口调用产生依赖关系,只要保证动态链接库输出接口不变,更换动态库不会对主程序造成任何影响,可以提高程序的可维护性和可扩展性;……