- ベストアンサー
coreダンプの見方。
Perlで掲示板等で、時々coreダンプをだしてしまうのですが、 このファイルにはいったい何が出力されているんですか? 見方とか、見るためのツールとかがあるんでしょうか。
- DeathPIYOPIYO
- お礼率69% (9/13)
- CGI
- 回答数2
- ありがとう数6
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
わざと perl に core をはかせる perl スクリプトも書けないこと はないですけど、syscall を使うとか、C言語で書かれた外部ルー チンを呼び出すといった特殊なことしてバグってしまうか、自身を kill するといった明らかなことをするかしないといけませんので、 普通には起きないと思います。 だから、たいていは perl のバグと考えて差支えないと思います。 ところで、core をはくときに、どのようなメッセージで落ちてい るかは記録に残っているでしょうか?cgi だと、メッセージが直接 には画面に出ませんが、httpd のログとか、FreeBSD なら /var/log/messages のログとか(linux も同様のがあるはず)、探 してみてください。
その他の回答 (1)
- punchan_jp
- ベストアンサー率55% (155/280)
core には、もとのプロセスが利用していたメモリの内容が全部入っ ています。プログラムのバグにより変なアドレスにアクセスしたり した場合に、生成されます。(cgi プログラムのバグではなく、 perl 自身またはそれがダイナミックロードしたモジュールのバグ です) もとのプログラム(この場合、perl 自身)と、core の内容をつき あわせれば、どのような原因で core をダンプすることになったか が解析できます。解析のツールとしてはいくつかありますが、最近 の PC-UNIX では gdb が標準的でしょう。 ただし、シンボリックな(つまり、変数名とか行番号とかを使った) 解析をするには、もとの perl やモジュールが -g オプションつき でコンパイルされ、かつソースコードが手元になければいけません。 そうでない場合は、機械語ごとに追うしかなくなるので、現実的で はないでしょう。
補足
coreができるということは、perlで書かれたスクリプトに問題があるのでなくて、 Perl自身のバグと考えて良いんですね?
関連するQ&A
- プログラムのcoreがダンプしない
Linux上でプログラミングしていますが、私が作ったプログラムがバグってバスエラーなどを起こしたときに、coreダンプしません。そのためどこでバグって居るのかが解析できないことになります。 多分OSの何らかのコマンドにcoreをダンプするようにするスイッチがあるのだと思いますが、どのコマンドかを押してくださる人居ませんか。 同様な問題がMacOSXでも起こっていますが、まあとりあえずlinuxで問題解決したいです。
- ベストアンサー
- Linux系OS
- linux上でのcoreダンプの仕方
現在、私が組んでいるC言語の中であるパッケージを使っておりますが、 その中で異常が出てしまい原因を調べております。 当方の環境は OS:Linux(Red Hat Enterprise Linux ES release 3) gcc バージョン 3.2.3 パッケージの開発元に問い合わせた所、coreダンプを送ってくださいといわれましたが、探して見た所、それらしきものは出力されていないようです。 unixでは"tras"コマンドでトレースできるような事を聞いたのですが、 linuxでも出来るのでしょうか? 検討違いな質問かも知れませんが、宜しくお願いします。 情報が足りなければいってください。
- ベストアンサー
- C・C++・C#
- dumpコマンドのファイルへのリダイレクトについて
Linux(centOS)においてdumpコマンドの標準出力した出力結果をファイルに出力しようと思い 以下のコマンドを実行してみましたがファイルに結果は出力されませんでした。 ・dump 0af <target> <source> >> a.log 色々と調べた結果以下のコマンドで結果を取得することはできたのですが ・dump 0af <target> <source> 2>> a.log 私の認識ではファイル・ディスクリプタ2は標準エラー出力と認識しているのですが なぜ2で結果が得られたのかがわかりません。(ちなみにdump処理結果はエラーではありませんでした) 他のパターンも試してみましたが以下のような結果になっています ・dump 0af <target> <source> >> a.log → 出力されず ・dump 0af <target> <source> 1>> a.log → 出力されず ・dump 0af <target> <source> 2>> a.log → 出力された どなたかわかる方がいらっしゃいましたらご教授願います
- ベストアンサー
- Linux系OS
- WINDOWS2000上でダンプ表示
WINDOWS2000上で、テキストファイルを16進表示させるツールが標準であるでしょうか?(DUMPコマンドとか) もし標準であるなら教えてください。 お願いします。
- ベストアンサー
- Windows 95・98
- ダンプツールとは?
いつもお世話になっております。 早速ですが、ダンプツールとはどのようなものですか? 具体的な例などを挙げてもらえるとうれしいです。 よろしくお願いします。
- ベストアンサー
- その他(ITシステム運用・管理)
- DUMP出力
Windodws xp proffess 起動時に、 アプリケーションエラーが発生します。 エラー内容は、以下のメッセージです。 "0x0040db3b" メモリが"written"になることは できませんでした。AI53BE.EXEアプリケーションエラー そこで、ダンプを出力させ、何のアプリが出しているのかを見極めたいのです。 ダンプの出力方法をご存知の方は、教えてください。
- ベストアンサー
- ハードウェア・サーバー
- パールの組み込み関数dumpって
牛歩ですがプログラミングPerl読み進めています! 今回はdumpという組み込み関数について質問です。 関数の詳細はさておき、とりあえずこの関数を呼び出すとバイナリーファイルが作成されると思っているのですが・・・ プログラムを実行すると Aborted という味気ないエラーを表示して終了します・・・ そしてバイナリーファイルも見あたりません。 どこか決まった場所に出来るのでしょうか。 どなたか教えてください。
- ベストアンサー
- Perl
- dumpが出来なくなってしまいました。
お世話になっております。 いつもバックアップを下記の要領で、(テープドライブをマウント→ダンプ)バックアップ取っているのですが、今日up2dateをかけていざバックアップを取ろうと思いましたら、下記のように dumpのコマンドが認識されません。 bash: dump: command not found dumpで更新されたとは思えませんが、確認しなかったので何ともです。 (up2dateの履歴って日付入りで確認できるんでしたでしょうか) 原因のわかる方いらっしゃいましたら、ご教授ください。 再度症状(コマンド手順)を下記に書きます↓ # mt -f /dev/nst0 status SCSI 2 tape drive: File number=0, block number=0, partition=0. Tape block size 512 bytes. Density code 0x26 (DDS-4 or QIC-4GB). Soft error count since last status=0 General status bits on (41010000): BOT ONLINE IM_REP_EN # dump 0uf /dev/st0 / bash: dump: command not found
- 締切済み
- Linux系OS
- 自サーバから別DBサーバのdumpをとり転送したい
1台のサーバ内にDBとそれを利用しているシステム(perl)があります。 サーバを買い換えてDBとシステムを別々のサーバにのせることになり、今までperlで走らせていたDBのdumpをとる処理が動かなくなってしまいました。 今は手動でとっているのですが、処理としてperlで組めないでしょうか? (システムを利用した時にdumpをとりたいのでDBサーバでのcronではちょっと役不足です) dumpをとるためには、別サーバへシェルスクリプトをキックする必要があるのですが、これは可能なのでしょうか。 もし可能でしたらperlでどのように記述すればできるのか、以下の処理の記述についてアドバイスをお願いいたします。 1.DBのdumpをとる 2.WEBサーバに転送する 3.WEBサーバにあるdumpからDBを復元する
- 締切済み
- Perl
- アプリケーション不具合時にメモリダンプをする方法
OS内部の関数で問題が起きたときはOSの機能でメモリダンプをファイルにすることができますが、通常のユーザーアプリケーション不具合時にメモリダンプをファイルにする方法はありますか? またそれを解析するようなツールはありますでしょうか?(WinDBGみたいな) OSはwinXP、開発コードはVB6.0です。よろしくお願いします。
- ベストアンサー
- Visual Basic
お礼
お返事送れてすみません。 hi-hoのWebレンタルでCGIを利用しているので、logを見れないんです。 たまに、大きなcoreを吐いて容量を圧迫するので何故かなと思ってました。 syscallもkillもしていないです。謎です。 ありがとうございました。