カーネルパニック
読み:カーネルパニック
外語:KP: Kernel Panic
オペレーティングシステム(OS)のカーネル内部で、何らかの理由により致命的な問題が生じ、正常状態への復旧が不可能となること。システムクラッシュ。略して「KP」。
概要
オペレーティングシステムでは様々なエラーが生じる。アプリケーションエラーなど目に見えるものから、目に見えないシステム深部でのエラーまで多岐にわたり、うちカーネルパニックはシステム深部で生じるエラーである。
システムそのものに支障をきたしていることから、こうなるとシステムは停止し、通常は再起動以外に対処不可能である。
特徴
発生後
UNIXでは、"PANIC:"(UnixWare)、"panic"(FreeBSD)などと画面に表示され、障害部分のダンプが表示される。
Microsoft Windowsではいわゆる青画面、9以前のMac OSでは爆弾マークがこれに該当する。
原因
Androidなどを除いた一般的なUNIXシステムでは、ハードウェア障害などが主な原因で、長く運用していても、なかなか見る機会に恵まれない。但し、妙なドライバーを使った時にはドライバーが原因でパニックが発生することがある。
Windowsや、かつてのMac OSではソフトウェアによる問題で容易に発生し、見たことが無い人の方が珍しいほど度々目にするものである。
なお、必ずしもCPU上で動作するOSのカーネル自体の問題だけでなく、マルチプロセッサーシステムの場合は他のプロセッサーがクラッシュした影響がCPUに波及し、カーネルパニックに至ることもある。
サンプル
UnixWareでのカーネルパニックで、コンソールへ出力される内容の例。
PANIC: address fault from interrupt routine; kernel address 0xCBFA1000
Processor registers:
eip=C0896103
eax=CBF9E224 ebx=00000000 ecx=3FFFF309 edx=01000000
esi=C7C0A3DC edi=CBFA1000 ebp=FFFF9A3C esp=FFFE5A34
DEBUGGER:
eax:CBF9E224 ebx: 0 ecx:3FFFF309 edx: 1000000 efl: 10202
esi:C7C0A3DC edi:CBFA1000 esp:FFFE5B38 ebp:FFFF9A3C regset: 0
bcopy 13: repz movsl (%esi),(%edi)
kdb>>
設定により、パニック発生後にカーネルデバッガー(kdb)を起動することができる。
再検索