パスワードを忘れた? アカウント作成
636204 journal

higonの日記: Hacking system on Mars 2

日記 by higon

eeTimesより、「先月に起こった火星探査機のトラブルが明らかに

以下、記事の概要。少し脚色付き。

一月下旬、スピリットはシステムの更新時のプログラム転送中にエラーを起こし、その後通信を絶った。
スピリットとの通信を失ったというニュースは深刻に受け止められた。反応がないということは、火星探査機を失った可能性もある。JPLの研究員は地球から何度もリブートコマンド等を送信するが状況は一向に改善しない。再起動後にシステム状態を報告しない探査機に何が起こったのかを知るのは難しいことだった。
解決の糸口となったとは「システムがおかしくなる前に、ファイル転送に失敗していること」であった。メモリアロケーションエラーを起こしているに違いないとある研究者は考えた。対処するための情報はドキュメントに記されていた。結局、火星表面一台取り残されたスピリットを救ったのは、「ファイルシステムをマウントしないで再起動」するコマンドだった。

詳細はこうだ。RAMディスク上に残ったゴミディレクトリが原因で、OSがメモリアロケーションエラーを起こした、自動でリブートしたはいいが、再起動時ファイルシステムをマウントする段階でメモリを割り当てに失敗し、またリブート、リブートリブート。結果スピリットは反応を返さなくなった。ただし、探査機はいわゆるセーフモードの状態であり、情報送信しないものの、地中から送られたコマンドは受信していた。つまり、彼らが「マウントなし再起動」を命じるまで、スピリットは一人きりでけなげに命令を実行し、再起動を続けていたのだ。彼らはその後、通信を回復したスピリットのローレベルコマンドでファイルとディレクトリを削除することで、システムを復旧した。

現在、JPLは念のためにアロケーションエラーハンドラの処理を改善する作業に取り掛かっている。

----------

例によってタレコんでみる。
※反省1・タレコミ文で、「スピリッツ」と「スピリット」の表記を誤記したことを直後に気づいた。

----------

おお、採用されてる
ありがとう謎の独逸人さん。記事そのものへの指摘に緊張っ。

※反省2・詳細といってる割に情報を短縮しすぎかも、RAMディスクにはフラッシュメモリからの情報がコピーされることを書かなかったことが誤解の原因。

※反省3・関連記事へのポインタをもっと多く示す。

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
typodupeerror

目玉の数さえ十分あれば、どんなバグも深刻ではない -- Eric Raymond

読み込み中...