2011-11-17 6 views
1

Linuxでコアファイルを読み込めるプログラムを作成したいと思います。しかし、私はこの点で私を導くことができるドキュメントを見つけることができません。誰かが資源を見つけるためにどこを案内してくれますか?コアファイルのデバッグ

答えて

1

GDB source code,gdb/core*もご覧ください。例えば

は、gdb/corelow.cに、あなたが最後に読むことができる:

static struct target_ops core_ops; 

    core_ops.to_shortname = "core"; 
    core_ops.to_longname = "Local core dump file"; 
    core_ops.to_doc = "Use a core file as a target. Specify the filename of the core file."; 
    core_ops.to_open = core_open; 
    core_ops.to_close = core_close; 
    core_ops.to_attach = find_default_attach; 
    core_ops.to_detach = core_detach; 
    core_ops.to_fetch_registers = get_core_registers; 
    core_ops.to_xfer_partial = core_xfer_partial; 
    core_ops.to_files_info = core_files_info; 
    core_ops.to_insert_breakpoint = ignore; 
    core_ops.to_remove_breakpoint = ignore; 
    core_ops.to_create_inferior = find_default_create_inferior; 
    core_ops.to_thread_alive = core_thread_alive; 
    core_ops.to_read_description = core_read_description; 
    core_ops.to_pid_to_str = core_pid_to_str; 
    core_ops.to_stratum = process_stratum; 
    core_ops.to_has_memory = core_has_memory; 
    core_ops.to_has_stack = core_has_stack; 
    core_ops.to_has_registers = core_has_registers; 

struct target_opsは、GDBの上部がターゲットとの通信に使用するジェネリックインタフェースを定義します。このターゲットは、ローカルのUnixプロセス、リモートプロセス、コアファイルなどになる可能性があります。

これらの機能を実行するだけであれば、デバッガーの実装の一般的な部分に惑わされることはありません。

は(最終的な目標は何に依存し、あなたも、このインターフェイス、アプリでの実装を再利用する場合があり、それはは非常に多くの他のものに頼るべきではありません。

0

コアファイルがで調べることができますdbx(1)またはmdb(1)またはproc(1)ツールの1つを使用してください。

関連する問題