Linux 内核开发人员争论基于优先级的关闭支持

欧姆说:

现在我们得到了许多不同类型的“关机”。

1. 正常关机
2. 异常关机,内存芯片没有可用的适当电源
3. 异常关机,内存芯片没有可用的适当电源
4. 正常电源循环,内存芯片没有可用的适当电源

内核代码合并请求是关于情况 3 和 4。我们正在讨论的 CNC 机床错误是情况 2 和 3。

CNC 紧急关闭实际上可以是 2、3 和 4,具体取决于发生的情况。

您现在有电源,但电源有限,因为您使用 UPS。当 CNC 机床出现故障时,您无法确定 UPS 本身是否完好无损,因此您无法确定 UPS 容量是否充足。因此,在执行系统关闭和记录最终数据时,您必须尽可能节电。有时,这种节电意味着你必须让显示器保持打开状态,即使这会消耗电力,这样人类就不会靠近现在失控的机器。是的,由于某种原因,屏幕变黑,人类的第一本性是朝着因 CNC 故障而变黑的屏幕移动,因为这取决于屏幕放置的位置完全错误的方向或完全正确的方向。

内核合并请求确实与地狱重合导致风扇 CNC 异常关闭。是的,这是 CNC 发生重大故障,损坏了控制器硬件以及 UPS 位。

某些情况下 CNC 紧急关闭会接近 4,这取决于 Linux CNC 控制软件的设计。

所以它不仅仅是存储芯片。

CNC紧急停机是一个特别可怕的案例。
1)您确实想要配置关闭顺序,以便您以正确的顺序终止显示/界面,从而以正确的方式移动人员。
2) 如果你没有那么多电量,你不想浪费关机电量。您投影时的备用电源。您再次希望能够调整关闭顺序。
3) 如果可能的话,您希望将紧急停机开始之前机器执行的最终操作动作存储在介质中或传输出去。(这确实取决于 CNC 操作的危险程度)。Linux 内核开发人员争论基于优先级的关闭支持

要使 CNC 紧急关闭尽可能安全,需要做的事情比大多数人想象的要多,而且它并不像切断所有电源那么简单。

能够像设备树文件一样配置系统离线的顺序,这将非常适合 CNC 案例。我怀疑在其他情况下控制硬件关闭顺序会很有用。

@欧姆

我在邮件列表中读到的任何内容都没有显示出保存状态的愿望。相反,他们在现场部署了 X00,000 个 eMMC 芯片,如果没有以正确的方式做好准备(这不仅仅是同步和卸载所有文件系统),这些芯片很可能会因断电而变砖。也许直到 N=X00,000 个部件每天经历多次电源循环后才发现这种故障模式。

也许硬件不应该有这个问题。如果这台计算机由独立于电机启动电池的独立电池供电,也许可以解决这个问题。如果 eMMC 数据表中更清楚地记录了一些电源排序要求,也许会更好。但是,“应该、可以、愿意”,更换 N=X00,000 辆车辆中的一些 PCB 比分发软件更新的成本要高得多。即使现在知道了这个特定问题,总会有更多的硬件错误。甚至 NASA 也部署了软件解决方法!“用硬件修复它”永远不会发生。

如果有人想回答“成本并不重要。只是大型企业很便宜”,请思考一下为什么汽车要花费数千美元。提示:答案不是也不包含“资本主义”或“贪婪”一词。

这就是我从另一个角度与格雷格走到一起的地方。使用正确的工具解决正确的问题,很抱歉 Linux 不是适合此类系统的工具。我明白,例如汽车领域,他们喜欢将其用于信息娱乐,这是一个很好的选择,但从长远来看,将其与该环境中的关键功能结合起来会带来麻烦。

您不能“仅”将其用于信息娱乐。即使机器与任何安全关键的东西完全隔离,这也仅仅意味着当它发生故障时没有人死亡。这并不意味着车主很高兴或者您的品牌声誉完好无损。我母亲拥有一辆马自达,它已经出现过三次电动车窗电机故障。两个在同一个窗口。你认为我会买马自达吗?

只有当有现成的备件供应并且故障转移成本低廉时,不可靠性才是可以接受的。(例如,大型阵列中的硬盘驱动器。)

emmc 由于在正确的时间断电而丢失数据完全符合规范。是的,人们一直通过 microSD 卡和树莓派来学习这一点。

小概率并不是那么小。如果您碰巧在 eMMC 断电时写入 eMMC,则由于磨损均衡的工作原理及其规范,您基本上有 100% 的机会发生损坏。

是的,数控机床我们希望将我们记录的数据继续存储,而该存储有能力正确存储数据。

另外,eMMC 的写入周期数量有限。是的,特定汽车有一个常见问题,当它们使用了 5 到 6 年时,发动机管理单元中的 eMMC 就失效了,所以现在人们需要支付 4 到 5 千美元的更换费用。

eMMC/NVME 或其他带有备份电容器的存储设备比不带备份电容器的设备成本更高。

这是额外的踢球者。您知道 M.2 NVME 驱动器如何拥有备用电容器,这样即时断电就不会使其处于可怕的状态,这些电容器可能会在 4 到 5 年内消失。汽车可以在路上行驶 20 多年。因此,该公司在 eMMC 上花费了更多的电容器,但最终还是回到了需要提前保存的位置,因为电源支持硬件未能与 eMMC 集成。

草皮法。您可以设计的每个电源保护电路,使旧式旋转生锈或新的固态驱动器处于良好状态,都可能无法正常工作。

您的电源可以通过多种方式支持您想要的硬件,因为它拥有可更换的部件。此外,您还希望能够以正确的顺序关闭,以便为 UPS 硬件提供更多的故障空间。这样您正在记录内容的数据设备就可以在断电之前完成其记录过程。

是的,这个正确的顺序并不总是意味着数据存储设备首先处于关闭队列中,因为您可能希望首先关闭一些耗电较大的部分,以使电源保护/UPS 有限电源持续更长时间。

需要注意的是,一些已有 200 多年历史的铣床仍在使用,现已现代化为 CNC 机床当控制部件可以使用 50 到 60 年时,电路老化问题是一个真正的因素。CNC 硬件使汽车的使用寿命看起来像是小问题。这些机器将保持活跃使用多长时间是您可以使用哪些设计解决方案的一个因素。

是的,仅使用 CNC 在硬件中修复它通常不起作用,因为 CNC 机器在很多情况下会部署到超级电容器和电池开始失效的程度。