安全关键应用程序的 Python 编码标准

标签 python safety-critical

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

跳过它是否应该或它是否适用于作为一种语言的问题,我想为嵌入式系统创建 Python 应用程序,这些应用程序 - 甚至模糊地 - 遵循一些安全标准,但通过搜索找不到任何东西,除了通用 Python编码标准(如 PEP8 )

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

最佳答案

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

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

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

关于安全关键应用程序的 Python 编码标准,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69673807/

相关文章:

c++ - 是否存在经过认证的(ISO 26262或类似的)C++标准库?

c - 没有功能指针的状态机

artificial-intelligence - 如何在边缘实现安全关键型 AI 计算集群?

python - 从 shell 环境分析 Python 脚本

python - 如果语句不读取输入

python - 如何实现通过嵌套字典查找关键路径的函数 max_leaf_path(d) ?

编译输出代码

python - 缩进错误: unindent does not match any outer indentation level error in python

python - 将 pandas.tslib.Timestamp 转换为 datetime python

embedded - 安全关键型嵌入式系统中显示系统的资源?