论文标题
Safesoftdr:一个库,用于启用基于软件的多种冗余,以实现关键任务
SafeSoftDR: A Library to Enable Software-based Diverse Redundancy for Safety-Critical Tasks
论文作者
论文摘要
如今,具有安全要求的应用已变得无处不在,可以在各种边缘设备中找到。但是,尽管通过实施多门和缓存层次结构提供了适度的性能,但在这些设备中的微控制器可能无法提供足够的支持来实现最高完整性级别所需的一些安全措施,例如锁定执行的执行,以避免所谓的常见原因失败(即影响冗余组件的故障,从而造成所有造成所有造成所有误差的故障)。为了响应这种限制,最近已经提出了基于软件监视器的方法,该方法在跨核心上执行某种基于软件的锁定执行,并提供了概念证明。本文介绍了Safesoftdr,该库是一个提供标准接口,以在非本地锁定的核心上部署基于软件的锁定执行,从而使最终用户不必管理负担来创建冗余流程,复制输入/输出数据以及执行结果比较。我们的图书馆已在基于X86的Linux上进行了测试,目前正在集成到针对安全相关应用程序的开源RISC-V平台之上,因此为安全至关重要的应用提供了方便的环境。
Applications with safety requirements have become ubiquitous nowadays and can be found in edge devices of all kinds. However, microcontrollers in those devices, despite offering moderate performance by implementing multicores and cache hierarchies, may fail to offer adequate support to implement some safety measures needed for the highest integrity levels, such as lockstepped execution to avoid so-called common cause failures (i.e., a fault affecting redundant components causing the same error in all of them). To respond to this limitation, an approach based on a software monitor enforcing some sort of software-based lockstepped execution across cores has been proposed recently, providing a proof of concept. This paper presents SafeSoftDR, a library providing a standard interface to deploy software-based lockstepped execution across non-natively lockstepped cores relieving end-users from having to manage the burden to create redundant processes, copying input/output data, and performing result comparison. Our library has been tested on x86-based Linux and is currently being integrated on top of an open-source RISC-V platform targeting safety-related applications, hence offering a convenient environment for safety-critical applications.