The invention relates to a method for multi platform environment onboard software fault-tolerant, discloses a PNP on-board fault tolerant method of software, the steps include: abnormal triggering, abnormal message parsing, fault location, fault signature device driver software module, fault signature card signature, the fault location of spaceborne computer signature, judgment error correction ability, data recovery, backup, the backup switching judgment, fault isolation, fault information recording device or module. The invention solves the problem of multi processor by fault-tolerant design of star and hardware complex application environment is not easy to load software expansion and compatibility issues, has made rapid development capacity, improve the software reliability and support plug and play the advantages of.
【技术实现步骤摘要】
一种支持即插即用的星载软件容错方法
本专利技术涉及卫星星载软件容错设计以及软件容硬件容硬件错的设计
,特别涉及一种支持对多处理器、硬件设备及多种软件组件即插即用的星载软件容错方法。
技术介绍
通过过去几十年中对星载软件可靠性的研究,发现软件错误仍然是影响系统可靠性的最关键因素。卫星设计要求系统即使出现故障时仍能保持运转而提供相应服务,因此要求卫星具有超强的容错能力,保证系统的高可靠性。直接开发容错应用是比较困难的,因为开发者不仅要处理复杂的应用逻辑,如星上多种异构的硬件设备、不同架构的软件模块、单机和分系统,还要面对复杂的容错逻辑,开发者很难将整个系统的应用逻辑和容错逻辑考虑全面,致使系统的可靠性得不到全面的保障。在星载软件设计基础上,针对卫星系统的容错模型,设计支持即插即用的容错管理方法,可屏蔽容错实现和管理困难,降低了容错处理的难度,实现容错管理的精细化。星载软件容错体系架构,不仅要考虑软件本身的容错,还需要考虑对硬件及上层系统的容错,通过软件对硬件容错的技术称为SIFT(Software-ImplementedFaultTolerance),星载软件容错领域对此加以扩充,并结合软件自身的容错技术,采取分层方式实现,根据容错对象的业务特点及影响范围可以自上而下划分成:系统级、板卡级、模块级及部件级四个层次。为实现快速响应和在轨维护,支持即插即用的星载软件容错方法不仅要考虑软件本身的容错,还需要考虑对硬件及上层系统的容错,通过软件对硬件容错的技术称为SIFT(Software-ImplementedFaultTolerance),采取分层方式实现, ...
【技术保护点】
一种支持即插即用的星载软件容错方法,其特征在于,包括以下步骤:S1:异常触发,并获取异常消息;S2:进行异常消息解析,获得异常类型、异常前的程序地址、异常前的系统寄存器组的数据、异常前访问的设备标识及引发异常的内存物理地址;S3:进行故障所在设备驱动程序签名;S4:进行故障所在软件模块签名;S5:进行故障所在板卡签名;S6:进行故障所在星载计算机签名;S7:根据引发异常的内存物理地址是否存在冗余数据来判断是否具有纠错能力,如存在冗余数据,进入步骤S8,如无冗余数据,进入步骤S9;S8:进行数据恢复处理,然后进入步骤S12;S9:根据异常前的程序地址、异常前访问的设备标识检查是否存在具有相同功能的软件模块或硬件设备,判断是否存在备份件,如存在,进入步骤S10,如不存在,进入步骤S12;S10:切换选用备份件;S11:隔离故障设备或模块;S12:记录故障信息。
【技术特征摘要】
1.一种支持即插即用的星载软件容错方法,其特征在于,包括以下步骤:S1:异常触发,并获取异常消息;S2:进行异常消息解析,获得异常类型、异常前的程序地址、异常前的系统寄存器组的数据、异常前访问的设备标识及引发异常的内存物理地址;S3:进行故障所在设备驱动程序签名;S4:进行故障所在软件模块签名;S5:进行故障所在板卡签名;S6:进行故障所在星载计算机签名;S7:根据引发异常的内存物理地址是否存在冗余数据来判断是否具有纠错能力,如存在冗余数据,进入步骤S8,如无冗余数据,进入步骤S9;S8:进行数据恢复处理,然后进入步骤S12;S9:根据异常前的程序地址、异常前访问的设备标识检查是否存在具有相同功能的软件模块或硬件设备,判断是否存在备份件,如存在,进入步骤S10,如不存在,进入步骤S12;S10:切换选用备份件;S11:隔离故障设备或模块;S12:记录故障信息。2.根据权利要求1所述的支持即插即用的星载软件容错方法,其特征在于,所述的异常触发采用处理器陷阱中断的方式触发。3.根据权利要求1所述的支持即插即用的星载软件容错方法,其特征在于,所述步骤S3中,故障所在设备驱动程序签名是根据异常前访问的设备标识确定的,用8位整形数表示;所述步骤S4中,故障所在软件模块签名是由星载软件对各子程序入口分别进行编码签名,用8位整形数表示;所述步骤S5中,故障所在板卡签名是根据异常前访问的设备标识所属的硬件板卡进行编码签名,用8位整形数表示;所述步骤S6中,故障所在星载计算机签名用8位整形数表示。4.根据权利要求1所述的支持即插即用的星载软件容错方法,其特征在于,所述步骤S8具体为:若引发异常的内存物理地址所在的硬件存储器芯片支持EDAC纠错功能,则采用EDAC一位错中断纠错的方式...
【专利技术属性】
技术研发人员:朱琦,林挺,胡晓刚,蔡曦,芮晔,游红俊,
申请(专利权)人:上海航天测控通信研究所,
类型:发明
国别省市:上海,31
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。