macOSX如何在lldb中显示系统消息

时间:2017-02-27 09:15:52

标签: macos lldb iokit

我学习使用lldb来调试macOS 10.12.3中的mac IOKit驱动程序 两台机器调试。 发生恐慌时,很容易连接到目标机器。 我想知道如何显示目标机器系统消息? 是否有任何命令,如" dmesg"在lldb?

1 个答案:

答案 0 :(得分:1)

您可以使用FireWire电缆连接目标和调试器机器。在目标机器的0x08内核参数(debug=)中设置DB_KPRT位,以及使用kprintf记录的任何内容(注意:不是printf / {{1} })将路由到FireWire。 (除非Mac有串口,否则使用Firewire,而现代Mac则不然 - 虚拟机可以。)

要查看此输出,您需要在Firewire电缆另一端的Mac上运行IOLog命令。

这种方法也适用于Thunderbolt-to-Firewire适配器和底座,但我怀疑你是不是热插拔它们。