如何在 OS X 上转储物理内存?

如何在 OS X 上转储物理内存?

有了 root 权限,我该如何转储 OSX 机器上的物理内存?正在寻找 Linux 的 /dev/mem 或 /dev/kmem 的等效项。我读过有关 sleepimage 的文章,但不确定如何解压缩它(在我的 Mac 上只有 1GB,内存为 16GB)

答案1

根据这个Mac OS X 内部原理 书中,Apple从系统中删除了/dev/mem/dev/kmem设备,因此无法访问这些特殊设备。

至于解决方法,您需要实现自己的内核扩展来实现自己的内存设备。例如,检查comex/Kmem项目

根据这个回答,您也可以使用以下启动参数启用它:

sudo nvram boot-args="kmem=1"

然后重新启动。

也可以看看:如何在 OSX 中访问 /dev/mem?

相关内容