Lobsters | 📄 原文链接 | 2026-10-11 收录

火星探路者的优先级反转事故:究竟发生了什么

来源:nerdyelectronics.com — 2026-03-28

📋 概述

复盘 1997 年火星探路者的反复重启事故。VxWorks 以抢占式优先级调度运行各任务:低频的气象任务先取得信息总线信号量,随后一个优先级高于气象、低于总线管理任务的通信任务抢占了它,导致最该运行的总线管理任务迟迟得不到执行,看门狗判定超时并下令整机重启。工程师在实验室复现后定位到优先级反转,最终把信号量的优先级继承标志从默认的关改为开,并通过 VxWorks 的 C 解释器在轨上改掉那个全局变量,重启才停止。

🔑 核心要点

💡 金句

只有对系统实际行为做详细追踪,才能捕获并识别出那条出错的执行序列。
← 返回 Lobsters 首页