双机容错实时嵌入式系统设计与分析
引 言
实时系统的基本特性是任务响应时间的确定和系统处理任务的高吞吐量。相对于其他计算机系统而言,实时系统对可靠性和防危要求十分严格。特别是所谓的安全关键系统SCS(Safety Critical Systems),这类系统失效,将带来灾难性的后果。在实时嵌入式系统的运行过程中,容错是最重要的可靠性保障手段。
容错实时系统的研究主要集中在两个方面[1]:① 改进实时调度算法,使之确保实时任务在正常运行和遇到错误时,均能在规定时限到来以前获得正确的输出。② 将过去应用于普通计算机系统中的冗余容错策略移植到实时系统中。
在具有硬件容错能力的计算机系统中,其失效65%来自软件[2],仅有8%来自于硬件。因此,软件容错能力成为决定计算机系统可靠性的关键。为了在出现硬件或软件的暂时或永久故障的情况下,保证关键任务仍能在规定的时限范围内完成运算,并输出正确的结果,提出一种双处理器实时嵌入式容错系统体系结构。该系统结构采用多处理器体系结构,实现计算机之间的通信,并无缝整合了计算机硬件、操作系统、应用软件级的软件容错设计,达到从整体上提高系统可靠性的目的。
1 双机容错实时系统的体系结构
本系统采用图1所示的双机容错系统硬件结构模型。该系统在双机比较系统的基础上,结合多处理机的松耦合与紧耦合系统结构,在不同的处理机间通过通道互连实现通信,为在硬件容错中结合软件容错提供可能。
图1 双机容错系统结构模型
A机和B机各有独自的外围控制逻辑和外设,这样不会引起系统资源的竞争,增加整体系统的稳定性。当然,这样是以花费更多的硬件设施为代价的。比较器及不一致检测用专门设计的仲裁检测电路来实现,其根据A机与B机周期向其发送的自检测信号来判断A机系统和B机系统运行的状况。
双机系统的运行状态如下:
① 如果A机与B机均正常运行,则将计算机A作为主系统,计算机B作为备份使用,A机的运行结果作为系统输出,A机运行到检测点,向B机发送日志,B机更新日志列表。
② 如果A机正常而B机故障,亦将A机的运行结果作为系统输出,同时将B机的运行故障状态报告给A机,并向B机进行复位控制操作。
③ 如果A机故障,B机正常,则进行开关切换操作,B机进行系统备份任务重调度,B机运行结果作为系统输出,并向A机进行复位控制操作,在检测点更新A机日志,保持需要备份的任务状态一致。
2 软件设计与实现
图2所示模型结合嵌入式实时系统的体系结构,采用层次结构和模块结构相结合,无缝整合了计算机硬件、操作系统、应用软件级的软件容错设计。在整体上采用分层的结构模型,克服了软、硬件分离和脱节的问题,提高系统的灵活性和可移植性。模型的每一层均可以看作是一个相对独立的系统。在每一层中按照系统功能,划分不同的功能模块。
相关文章
- 2023-12-26刚架结构内力图绘制方法研究
- 2024-01-06不确定度评定实例分析 电子皮带秤测量不确定度的评定
- 2024-01-21IEEE1588最佳主时钟算法的分析与实现
- 2023-09-13自由活塞式斯特林制冷机压缩活塞间隙密封泄漏的数值模拟
- 2022-01-17ControlLogix系统在大型顺序(散粮筒仓)控制系统改造中的应用
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。