我正在使用 调试 NetBSD 内核gdb
,但我希望能够显示有关地址所在内存区域的信息。我主要感兴趣的是找出内存页面的权限以及内存页面的大小它所包含的区域(如果该问题的后半部分有意义)。
内核是否有内核空间内存区域的概念?即为特定目的保留的连续页面块(虚拟地址)(在某处进行跟踪)?或者是由每个特定模块来跟踪哪些内存块属于逻辑组?
这是我正在寻找的示例:
(gdb) addressinfo 0xffffffff80e1000
Start End Offset Perm Size
0xffffffff80e0000 0xffffffff80e2000 0x1000 r--p 0x2000
如果此功能不存在,我不介意向内核添加一个钩子以便 GDB 脚本输出此信息。至少为 GDB 脚本添加一个钩子来查看页面权限是有用的。