【发布时间】:2018-04-29 11:45:39
【问题描述】:
为清晰起见进行了编辑:
由于可靠性和容错性非常重要,是否有任何特定 Linux 发行版(或者可能是 Linux 发行版类型)推荐用于运行高可靠性 C++ 软件?
我正在开发 C++ 软件以在 Blue Origin 火箭上执行一些简单的任务(读取串行输入数据、设置输出引脚的逻辑高电平和低电平、拍摄视频(和保存)以及一些浮点数学运算)。该软件将在 Linux 上运行。
感谢您的知识和经验。
【问题讨论】:
-
这真的取决于你在做什么。 “简单”涵盖了许多不同的领域......
-
读取串行数据,设置输出引脚的逻辑高低,拍摄视频(和保存),以及一些浮点数学运算。
-
您很少看到用 C++ 编写的航天软件,原因很明显,抽象背后隐藏着很多东西。尽管在 1989 年 NASA(通过当时的承包商 McDonnell Douglass)将 SVDS(航天飞行器动态模拟器 - 用于模拟航天飞机上/中的上升载荷)移植到 C,但传统上偏好的语言一直是 FORTRAN。在任何任务中都是首要关注的关键软件是验证(和重新验证)每条指令的能力。在当时,C++ 只是一个简单的闪现,但它被有意识地避免了。
-
一个有趣的旁注,SVDS 源于最初为洲际弹道导弹创建的程序。要进一步深入了解航天建模,请在 "squatcheloid" 上进行搜索。
-
子系统的过度可靠性毫无意义。 Linux 对于 Pi 来说足够可靠。对于关键的飞行任务,pi 不够可靠。
标签: c++ linux operating-system fault-tolerance