Therac-25という放射線治療器で死亡事故が起きたバグ.PDP-11のアセンブラで1バイトをフラグにしてインクリメントして256回目に0になったそう、、、
このTweet見た。
人が死ぬバグってあるんだな...今まで平和なプログラミングしかしたことないや。https://t.co/8EtfrW0pvp pic.twitter.com/zF9ZNLfUtu
— Daiius (@DaiiusJmst) 2017年7月17日
えー、死亡事故が起きたバグがあったのか、、、 どんなのか見てみた。 これとか。
このプログラムは1人のプログラマによってPDP-11のアセンブラで書かれています。
セットアップ中、セットアップテストは他のイベントが発生するのを待って
再スケジュールされるため、数百回実行されます。
事故を起こしたコードでは、Class3変数は、セットアップテストを通過するたびに
1ずつインクリメントされます。
class3変数は1バイトなので、最大値255までしか含めることができません。
したがって、セットアップテストコードを256回通過するたびに、
変数はオーバーフローし、0になります。
このとき上部コリメータの障害は検出されません。
ということのようです。
こわーー。C++と直接関係しているというわけではないですが、、、
« なか卯で「5種野菜と唐あげのロカボ担々麺」を食べた。こんにゃく麺だが気にならなくてボリュームもたっぷり。 | トップページ | セブンイレブンで売っている蒙古タンメン中本 北極のカップ麺を食べた。さすがに辛い! »
「日記・コラム・つぶやき」カテゴリの記事
- 高周波・RFニュース 2025年2月7日 フジクラがMWCバルセロナでミリ波(28GHz,60GHz)モジュールデモ、Qorvo、NXP、AMDらのヘルスケアウェビナー、Samsung Galaxy S25もやはり5Gミリ波AiPは1個、u-bloxがBluetooth LEモジュール4種発表(2025.02.07)
- 高周波・RFニュース 2025年2月6日 3GPPがRel-20(5G Advancedと6G)の計画を公開、SEMCOが産業用MLCC(0805 inch, X6S, 22uF, 25V)と車載MLCC(1005,2.2uF,10V)を発表、KYOCERA AVXのスーパーキャパシタシミュレーションソフト、I向けフォトニックチップ解説(2025.02.06)
- 高周波・RFニュース 2025年2月5日 Mavenirの5G NTNホワイトペーパー、ミニサーキットの1.5mm角QFNパッケージMMIC、Keysigntがスペインに6G研究ラボ設立、アイルランドとスコットランドの大学がRIS(reconfigurable intelligent surfaces)で協力(2025.02.05)
- 高周波・RFニュース 2025年2月4日 Samsung Galaxy S25plus、S25ultra分解、やっぱり5Gミリ波AiPは1個だけ、スマートワイヤレス聴診器にNordicのICが採用、TDKのTMR角度センサ解説(2025.02.04)
トラックバック
この記事へのトラックバック一覧です: Therac-25という放射線治療器で死亡事故が起きたバグ.PDP-11のアセンブラで1バイトをフラグにしてインクリメントして256回目に0になったそう、、、:
« なか卯で「5種野菜と唐あげのロカボ担々麺」を食べた。こんにゃく麺だが気にならなくてボリュームもたっぷり。 | トップページ | セブンイレブンで売っている蒙古タンメン中本 北極のカップ麺を食べた。さすがに辛い! »
コメント