Sun Studio 12: dbx コマンドによるデバッグ

構文

module [-v]

現在のモジュールの名前を出力します。

module [-f] [-v] [-q] name

name というモジュールのデバッグ情報を読み込みます。

module [-f] [-v] [-q] -a

全モジュールのデバッグ情報を読み込みます。

ここで

name は、読み込み対象のデバッグ情報が関係するモジュールの名前です。

-a は、すべてのモジュールを指定します。

-f は、実行可能ファイルより新しいファイルの場合でもデバッグ情報の読み込みを強制します (使用にあたっては十分に注意してください)。

-v は、言語、ファイル名などを出力する冗長モードを指定します。

-q は、静止モードを指定します。

読み取り専用データセグメントは、アプリケーションメモリーがデータベースをマップしたときに通常発生します。たとえば、次のようにします。

caddr_t vaddr = NULL;
off_t offset = 0;
size_t = 10 * 1024;
int fd;
fd = open("../DATABASE", ...)
vaddr = mmap(vaddr, size, PROT_READ, MAP_SHARED, fd, offset);
index = (DBIndex *) vaddr;

デバッガによってメモリーとしてデータベースにアクセスできるようにするには、次を入力します。

mmapfile ../DATABASE $[vaddr] $[offset] $[size]

ここで、次を入力すれば、データベースの内容を構造的に表示させることができます。

print *index