NetBSD - GDBでカーネルメモリに関する情報を表示するには?

NetBSD - GDBでカーネルメモリに関する情報を表示するには?

デバッグにNetBSDカーネルを使用していますがgdb、アドレスがあるメモリ領域に関する情報を表示できればと思います。私は主にメモリページの権限とここに含まれるメモリページのサイズを見つけることに興味があります(質問の後半が意味がある場合)。

カーネルにはカーネル空間メモリ領域という概念がありますか?つまり、特定の目的のために予約された(どこかで追跡される)連続ページブロック(仮想アドレス)ですか?それとも、どのメモリブロックが論理グループに属しているかを追跡することは、各特定のモジュールによって異なりますか?

私が探しているものの例は次のとおりです。

(gdb) addressinfo 0xffffffff80e1000

                Start                End    Offset    Perm     Size
    0xffffffff80e0000  0xffffffff80e2000    0x1000    r--p     0x2000   

この機能が存在しない場合は、GDBスクリプトがこの情報を出力できるようにカーネルにフックを追加してもかまいません。ページ権限を表示するには、少なくともGDBスクリプトにフックを追加すると便利です。

ベストアンサー1

おすすめ記事