实时操作系统在星载计算机中的应用
*管理日历时间和日期,有的系统也可以是相对时间;
*任务等候消息、信号量、事件的超时时间或者任务长期占用CPU的超时时间;
*在预定时间间隔或指定时间到达后唤醒一个指定任务。
(6)其它服务
内存管理和I/O管理,以及中断管理等服务不是系统必需的服务,可根据不同的应用需要决定是否提供上述服务,在SAR-RTOS中上述三种服务都提供。
(7)星载操作系统的可靠性措施
星载软件的可靠性设计是关键,通常可以采用如下措施:
*将任务的重要参数以“三取二”的方式保存在任务控制块中;
*通过任务的状态检查,对检测不正常的任务进行相应的出错处理;
*采用看门狗技术,实现冷热启动的判定。当盾门狗启动后,从程序跑飞的地方自动往下执行;
*可以在内存中开辟一段系统内存区,定时将CPU环境和主要参数放入其中。
4 两种方法的比较
选用成熟的RTOS(如RTEMS)可以有效地缩短开发周期,代码质量可以得到保证;自行开发RTOS代码需要经过严格的测试,难度相对更大,开发周期更长。但可以根据需要增减相关功能,有更大的灵活性。如果使用RTEMS支持的CPU,那么推荐使用RTEMS作为星载软件的开发,毕竟RTEMS经过了十多年的验证,源代码公开也有几年的时间,这样的代码质量和可靠性应该是很高的。如果由于条件限制不能使用RTEMS,可以自行研制星载RTOS,但必须按照软件工程的开发方法,从设计、编程到测试,每一项都需要严格把关。
把RTOS引脚到星载计算机系统,能使星载软件从传统的单线程前后台系统转向多任务编程,不至于一个环节的失效就引起整个软件的失效,增加了可靠性。另一方面,使用操作系统后,使星载软件的平台软件和功能软件分离,用户可以集中精力编写应用程序,提高开发效率。而且如果使用相同的RTOS,一些通用的模块或任务可以在不同型号继承和使用,提高软件的复用性。引入 星载RTOS将带来星载软件开发的一次技术变革。
《实时操作系统在星载计算机中的应用(第4页)》