2017-02-27 3 views
1

Ich lerne, lldb zu verwenden, um mac IOKit Treiber in macOS 10.12.3 zu debuggen.
zwei Maschinen debuggen. Wenn Panik auftritt, ist es einfach, eine Verbindung zum Zielcomputer herzustellen. Ich frage mich, wie man Zielsystem-Nachricht anzeigen? Gibt es einen Befehl wie "dmesg" in lldb?macOSX Wie man Systemmeldung in lldb zeigt

Antwort

1

Sie können die Ziel- und Debugger-Maschine über ein FireWire-Kabel verbinden. Setzen Sie das Bit 0x08 in das Kernargument debug= des Zielcomputers (DB_KPRT), und alles, was mit kprintf (Anmerkung: nicht printf/IOLog) protokolliert wurde, wird an FireWire weitergeleitet. (Firewire wird verwendet, es sei denn, der Mac verfügt über einen seriellen Anschluss, was moderne Macs nicht können.)

Um diese Ausgabe anzuzeigen, müssen Sie den Befehl fwkpfv auf dem Mac am anderen Ende ausführen das Firewire-Kabel.

Diese Methode funktioniert gut mit Thunderbolt-zu-Firewire-Adaptern und Docks auch, obwohl ich nicht vermute, wenn Sie sie hotplug.