Der Shell-Befehl ...
sample Finder
... überwacht alle vom Finder ausgeführten Funktionsaufrufe und erstellt eine Textdatei mit den Aufrufstapeln der einzelnen Finder-Threads. Selbst sachkundige Nicht-Programmierer (Superuser, wenn Sie so wollen) können daraus oft wertvolle Erkenntnisse gewinnen. Es ist auch eine großartige Sache, einen Fehlerbericht an Apple über http://bugreport.apple.com/ anzuhängen .
Dies entspricht im Wesentlichen der Schaltfläche "Beispielprozess" im Aktivitätsmonitor.
Update: Oh, noch besser als es sample(1)
ist spindump(8)
, was ähnlich ist, sample
aber die Sichtbarkeit des Kernels erhöht, wenn die Threads der App blockiert sind und auf den Kernel warten.
sudo spindump Finder
Für die Textdatei, in der sie erstellt /tmp
wird, sind Root-Rechte zum Lesen erforderlich, da sie möglicherweise privilegierte Informationen enthält.
Weitere Hinweise könnten aus ...
lsof -p $PIDOfFinder
(Dabei ist $ PIDOfFinder die Prozess-ID des Finders, die Sie über finden können ps
.)
Sieht so aus, als könnten Sie dieselben Informationen im Aktivitätsmonitor abrufen. Wählen Sie Finder, klicken Sie auf die Schaltfläche "Inspizieren" und wählen Sie die Registerkarte "Dateien und Ports öffnen".
Ein weiterer interessanter Datenpunkt wäre, ob das Problem bei einem neuen, sauberen Benutzerkonto auf demselben System auftritt oder nicht. Erstellen Sie einfach ein neues Benutzerkonto, melden Sie sich von Ihrem normalen Konto ab (verwenden Sie nicht die schnelle Benutzerumschaltung - wir möchten nicht, dass Ihre "schlechte" Instanz des Finders im Hintergrund ausgeführt wird und verwirrende Dinge), und melden Sie sich bei der an neues sauberes Konto und prüfen Sie, ob das Problem auch dort auftritt.
Führen Sie InputManager-Hacks aus, einschließlich SIMBL-basierter Inhalte, oder "Haxies" von Unsanity Application Enhancer (APE)?
Tritt das Problem beim Booten im "abgesicherten Modus" auf (dh beim Booten mit <shift>
gedrückter Taste)?