2

来自 C/C++ 背景,我知道在嵌入式系统环境中适用于安全关键应用程序(如经典的三重奏 Medical-Automotive-Aerospace)的编码标准,例如 MISRA、SEI CERT、Barr 等。

跳过是否应该或是否可以作为一种语言适用的问题,我想为嵌入式系统创建 Python 应用程序,这些应用程序甚至模糊地遵循一些安全标准,但除了通用 Python 编码标准(像PEP8

是否有专门适用于安全关键系统的 Python 编码指南?

4

1 回答 1

5

“功能安全”的顶层安全标准,如 IEC 61508(工业)、ISO 26262(汽车)或 DO-178(航空航天)等带有软件部分(例如 IEC 61508-3),其中列出了许多适用的编程语言。这些都是经过长期使用证明的旧语言,所有缺陷和定义不明确的行为都被认为是众所周知的,执行可以被认为是可预测的。

在实践中,对于最高安全级别,这意味着您几乎受限于具有安全子集的 C (MISRA C) 或具有安全子集的 Ada (SPARK)。还提到了一堆其他旧语言,如 Modula-2、Pascal 和 Fortran,但在现代安全 MCU 的上下文中不存在对这些语言的工具支持。对此类 MCU 的 Python 支持也是如此。

像 Python 和 C++ 这样的语言甚至没有提到最低安全级别,因此在字里行间它们被认为完全不合适而被驳回。甚至比纯粹的汇编程序还要少,实际上它被称为可能用于较低安全级别的东西。

于 2022-02-02T08:46:36.513 回答