2007年9月12日水曜日

Segmentation faultが一杯。

最近エラーログに多い下記のerror文章
[Mon Sep 10 23:05:46 2007] [notice] child pid 19800 exit signal Segmentation fault (11)

まぁお約束というか差し当たりというかぐぐってみる。そうするとはてなのサイトが引っかかった。意味としては


  • Segmentation違反。メモリアクセス違反。アクセスが許可されていないメモリ領域を参照すると発生。

  • エラーログに上記のMessageを残し、coreを吐いて異常終了。

  • 原因としては、Nullポインター、未初期化ポインタでのアクセス、スタックオーバーフロー等。

  • 配列の範囲外アクセスでも発生。

  • 希だがOSレベルのバグ、メモリモジュールの不具合による場合もある。


で続いてhpの公式サイト

  • プログラムは起動時にメモリ領域を定義。その領域外のメモリ領域にアクセスしようとすると発生。

  • 宣言した配列の範囲を超えて添え字付けると発生。

  • カーネルの処理能力を超える局所変数、無限再起でも発生。



ぬぅ・・・無責任だがハードウェアの故障が原因だったら楽だなぁ・・・。
調査中に■Manpage of COPEにて以下の記述を発見。
どうやらSegmentation faultがSignal11で起きた際は「coreファイル」なるdumpが生成されている模様。これを解析する事でSegmentation faultが起きた原因は調査する事は出来そう・・・だが、どうやるんだコレ。

その前にまCoreファイルを探さないと。
コメントを投稿