コンテンツにスキップ

Linux kernel oops

出典: フリー百科事典『ウィキペディア(Wikipedia)』

これはこのページの過去の版です。220.96.219.2 (会話) による 2011年1月26日 (水) 21:44個人設定で未設定ならUTC)時点の版 (en:Linux kernel oops (05:01, 8 November 2010 UTC) を翻訳。一部意訳、抄訳、追加記事あり。)であり、現在の版とは大きく異なる場合があります。

(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)
SPARCアーキテクチャ用Linux2.4カーネルによるLinux kernel oops
PA-RISCアーキテクチャ用Linux2.6カーネルによるLinux kernel oops(死んだ牛のAAが表示されている)

oops(ウップス)とはLinuxカーネルがエラーログを生成する、正常な動作からの逸脱状態のことである。その状態に陥った際に発せられるメッセージを指す場合もある。有名なカーネルパニックの発生は様々なoopsに起因するが、その他のものはシステムの連続稼働における信頼性を損なうかもしれない。この用語は英単語oopsにおける単なる錯誤以上のものを表す。

カーネルが異常を察知した際、oopsメッセージが表示され、異常を引き起こしたプロセスkillされる。そのメッセージはLinuxカーネル技術者がoopsを生じさせたバグデバッグするのに使用され、またその原因となるプログラミング_(コンピュータ)のエラーを修正するのに利用される。

oopsメッセージを収集する機能に影響を与える、効率的なログ収集に関する様々な設定手法がある[1]。oopsメッセージに関するLinuxカーネル公式の文書はカーネルソースに同梱されているDocumentation/oops-tracing.txt[2]ファイルである。klogdデーモンカーネルログリングバッファ(dmesgコマンドにより一部表示できる)からoopsの情報を抽出する機能に関与しているとしてしばしば引き合いに出されるが、いくつかのシステム、例えば近年のDebianUbuntuディストリビューションではklogdデーモンはrsyslogdデーモン(en)に取って代わられている。これ故klogdプロセスの存在がログファイルにおけるoops情報の存在を必ずしも説明するとは限らない。

一度システムでoopsが発生すると、もはやいくつかの内部リソースは消費され切ってしまうかもしれない。たとえシステムが正常に動作しているように見えても、動作中のタスクがkillされることにより悪影響が出でしまう可能性がある。システムがひとたび喪失したリソースを利用しようと試みると、カーネルoopsがしばしばカーネルパニックを引き起こす。

Kerneloops[3]というソフトウェアはoopsの収集の引き合いに出される。このソフトウェアをインストールすると、システムでoopsが発生する度にこれを収集し、開発元のウェブサイトに送信する[4]。ちょうどMicrosoft Windowsオペレーティングシステムにおける、「エラー報告」機能と類似したものと考えればよい[5]。このウェブサイトではインストールしたユーザーから自動的に送られてきたoopsの統計情報を提供している[3]

システムにおける/proc/sys/kernel/panic_on_oopsというファイルは、意図的にoopsメッセージを発生させる場合に役に立つ。

関連項目

  • System.map - oopsを解釈するためのファイル。oopsメッセージにはoopsを引き起こした関数などのシンボル名とメモリアドレスが表示されているため、このファイルを利用すれば、oops発生を引き起こした原因を特定する事につながる。

脚注

  1. ^ Michael Renzmann (2008年1月10日). “Kernel Oops Howto”. madwifi-project.org. 2011年1月27日閲覧。
  2. ^ リーナス・トーバルズ、G.W. Wettstein (2010年5月19日). “oops-tracing.txt”. git.kernel.org. 2011年1月27日閲覧。
  3. ^ a b Kernel oops bugcount”. kerneloops.org. 2011年1月27日閲覧。
  4. ^ アルヤン・ファン・デ・フェン(Arjan van de Ven). “kerneloops(8) - Linux man page”. linux.die.net. 2011年1月27日閲覧。
  5. ^ Package 'kerneloops'”. screenshots.debian.net. 2011年1月27日閲覧。 このようにWindowsの「エラー報告」ダイアログと同様に、oopsが発生した際、デスクトップ環境を使用しているならば、スクリーンショットのようなポップアップダイアログが表示される。

追加情報

  • John Bradford (8 March 2003). "Re: what's an OOPS". LKML (Mailing list). 2006年5月22日閲覧
  • Szakacsits Szabolcs (8 March 2003). "Re: what's an OOPS". LKML (Mailing list). 2006年5月22日閲覧
  • Al Viro (14 January 2008). "OOPS report analysis". LKML (Mailing list). 2008年1月14日閲覧

外部リンク