當機的驗屍課(上):先學會看一具程式的屍體

用「命案調查」的方式學程式怎麼當機。這是三部曲的第一課:先搞懂 CPU、stack、回程地址、segfault 是什麼——之後才驗屍、抓兇手。每層樓一個測驗,答對才能上樓。

當機的驗屍課(下):抓住那隻 18 歲的鬼

當機驗屍三部曲完結篇。剩下那群「return 到 NULL」的命案,兇手是 GNU libunwind 藏了 18 年的競態條件——一個只有一條指令寬(約 100 皮秒)的完美作案窗。看兇器怎麼下手、用費米估算對帳發病率、以及為何這隻鬼躲了 18 年才現身。