模拟 ARINC - 653 中的竞态修复框架
1. 引言
在飞行软件等高度关键的实时应用中,可靠性至关重要。然而,飞行软件应用正变得越来越复杂,因此需要设计新的技术来进行验证,尤其是进行故障遏制和恢复。为满足这一需求,引入了 ARINC - 653 标准架构。
ARINC - 653 架构规定了一个应用执行程序(APEX),它提供了一个包含 51 个例程的应用编程接口,支持在集成模块化航空电子平台上开发可移植应用,实现时间和空间分区,并通过定义良好的端口支持不同分区中应用之间的通信。此外,该架构还定义了一个健康管理框架,可用于在进程、分区和模块级别提供错误检测和恢复的分层框架,支持容错并提高操作可用性。
在 ARINC - 653 架构的分区中,进程或线程根据抢占式、基于优先级的调度程序并发执行。对共享变量或资源的访问通过信号量和事件进行协调,但这些设施的误用会导致并发错误,如数据竞态。数据竞态是并发进程或线程中一对未同步的指令,它们访问一个共享变量,且至少有一个写访问。数据竞态会严重且潜在地威胁共享内存程序的可靠性,因为竞态会导致程序出现意外的非确定性执行。传统的使用断点的循环调试在存在竞态的情况下通常无效,因为断点会改变执行时间,导致错误行为消失。
为了强化 ARINC - 653 健康管理系统的能力并提高飞行软件的可靠性,本文介绍了在模拟 ARINC - 653 平台上开发的竞态修复框架,该平台提供 ARINC - 653 编程接口。
2. 背景
2.1 ARINC - 653
ARINC - 653 规范是实时操作系统的标准化接口定义,旨在简化集成模块化航空电子设备的开发。它规定的
超级会员免费看
订阅专栏 解锁全文
3123

被折叠的 条评论
为什么被折叠?



