我正在开发一个在 10.12.4 VM 下运行的 Kext(我使用并行),我想启用指针打印输出(目前所有指针都被隐藏并显示/var/log/system.log
为<ptr>
)
在 10.12 之前,可以选择通过设置直接放弃调试限制nvram csr-active-config=%ff%00%00%00
。但是,现在无法csr-active-config
直接设置,而是通过csrutil disable
恢复模式进行设置。不幸的是,它并没有禁用所有 SIP 功能,并且指针仍然隐藏。
幸运的是,以下线程提供了解决方法:
或者,可以通过设置 csr-active-config=ff%00%00%00 完全禁用 CSR。对于 VM,这可以通过引导到恢复分区、运行 csrutil clear 以完全删除 csr-active-config 变量和 nvram Xsr-active-config=ff%00%00%00 来实现。然后关闭 VM,并使用十六进制编辑器更改 nvram 文件中的 X -> c。这将允许 -show_pointers 引导参数工作。
我正在使用 Parallels,并尝试找到 nvram 设置的位置。我看到了一个有希望的文件,但不幸的是,在我按照上面引用的段落中的说明进行操作后,我NVRAM.dat
无法跟踪该字符串。Xsr-active-config
也许 nvram 设置还有另一个地方?
谢谢