Dies kextd
ist ein Prozess, der das Laden und Entladen von Kernel-Erweiterungen handhabt. Wenn das System mit der kextd
Nutzung kaputt geht, kann dies bedeuten, dass die Kernel-Erweiterung beschädigt ist. Dies könnte mit der Neuindizierung des Systems durch Spotlight nach dem Upgrade zusammenhängen. Tatsächlich würde ich wetten, dass dies der Fall ist, da Spotlight nach jeder Systemaktualisierung immer neu indiziert - und dies scheint ewig zu dauern.
Sie können schnell und einfach feststellen, ob Spotlight in Aktion ist, indem Sie auf das Lupensymbol oben rechts in der Finder-Steuerleiste schauen. Wenn diese Lupe einen kleinen Punkt enthält, der ein- und ausgeht, und wenn Sie dann auf die Spotlight-Lupe klicken, die etwas über die laufende Indizierung aussagt, dann können Sie loslegen.
Eine andere - radikalere - Möglichkeit, mit diesem Problem umzugehen, besteht darin, die Art und Weise, wie der Systemkern auf bestimmte Kerneltexte reagiert, anzupassen, indem Sie das System im Wesentlichen "hacken" IOPlatformPluginFamily.kext
, um es aus diesem Kernelprozess zu entfernen. Mehr Details hier, aber hier ist das Lange und Kurze. Wie die Site sagt - und ich werde es noch einmal betonen -, ist dies eine radikale Methode, um das Problem zu lösen, und kann dazu führen, dass das System unbrauchbar wird. Gehen Sie also auf eigenes Risiko vor. Aber ehrlich gesagt, wenn Sie sich ansehen, wie einfach es ist, diese Änderung rückgängig zu machen, würde ich mir nicht allzu viele Sorgen machen ... Sorgen Sie sich nur genug.
Wie auch immer, gehen Sie in das Terminal und geben Sie Folgendes ein:
system_profiler -detailLevel mini | grep "Model Identifier:"
Warten Sie jetzt ein oder zwei Sekunden. Das System sollte so etwas zurückgeben; Wenn Sie dies auf meinem Mac Mini ausführen und Mac OS X 10.9.5 (Mavericks) ausführen, wird Folgendes zurückgegeben:
Model Identifier: Macmini6,1
Bestätigen Sie als nächstes, dass IOPlatformPluginFamily.kext
das Programm ausgeführt wird, indem Sie Folgendes eingeben:
kextstat | grep IOPlatformPluginFamily
Der Wert, den ich zurückerhalte, ist der folgende:
85 7 0xffffff7f81066000 0xa000 0xa000 com.apple.driver.IOPlatformPluginFamily (5.7.1d6) <10 7 6 5 4 3>
Und wie auf der Seite erklärt, verlinke ich auf :
Innerhalb dieses Kextes befindet sich ein weiterer Kext ACPI_SMC_PlatformPlugin.kext
, in dem jedes neuere Macintosh-Modell mit relevanten Anweisungen aufgeführt ist, anhand derer der Kernel festlegt, wie und wann das Steuerelement aufgerufen werden soll
.
Geben Sie nun Folgendes ein, um in das Wesentliche des ACPI_SMC_PlatformPlugin.kext
Inneren einzusteigen IOPlatformPluginFamily.kext
:
cd /System/Library/Extensions/IOPlatformPluginFamily.kext/
cd Contents/PlugIns/ACPI_SMC_PlatformPlugin.kext/
cd Contents/Resources/
Ja, das sind viele cd
Elemente, bei denen es sich wahrscheinlich um eine einzelne Zeile handeln könnte, aber sie zeigen den gesamten Vorgang, den Sie ausführen möchten. Oder Sie können dies einfach cd
als Einzeiler tun :
cd /System/Library/Extensions/IOPlatformPluginFamily.kext/Contents/PlugIns/ACPI_SMC_PlatformPlugin.kext/Contents/Resources/
Führen Sie nun den folgenden ls
Befehl aus, um die darin enthaltenen Elemente zu zählen:
ls | wc -l
Auf meinem System erhalte ich Folgendes:
50
Das heißt, 50 verschiedene Systeme haben Profile in ACPI_SMC_PlatformPlugin.kext
. Sie können auch einfach so laufen ls -la
, um die gesamte Liste anzuzeigen, wenn Sie dies wünschen. Aber jetzt finden Sie Ihre, indem Sie einen ls
Befehl wie diesen ausführen :
ls MacBookPro*
Daraufhin werden alle MacBook Pro-Profile aufgelistet. Nehmen wir also an, Ihr MacBook Pro hat die Systemkennung:
MacBookPro5,5
Dann wäre das verbundene Profil in ACPI_SMC_PlatformPlugin.kext
:
MacBookPro5_5.plist
Jetzt wollen wir dieses Profil herausschieben, ACPI_SMC_PlatformPlugin.kext
damit das System nicht darauf reagiert. Sie können dies folgendermaßen tun sudo
:
sudo mv MacBookPro5_5.plist ~/
Sie werden nach Ihrem Passwort gefragt. Nachdem Sie eingegeben haben, wird die Datei MacBookPro5_5.plist
in Ihr Home-Verzeichnis (aka:) verschoben, von ~/
dem sie effektiv neutralisiert wird ACPI_SMC_PlatformPlugin.kext
.
Starten Sie jetzt einfach Ihren Computer neu und sehen Sie, was passiert. Wahrscheinlich klärt es das Problem der kextd
CPU-Auslastung. Wenn nicht, ist etwas anderes passiert.
Wenn Sie sich durch nichts von dem, was wir gerade getan haben, wohl fühlen und diese Änderung rückgängig machen möchten, verschieben Sie die MacBookPro5_5.plist
Datei einfach wie folgt zurück:
sudo mv ~/MacBookPro5_5.plist /System/Library/Extensions/IOPlatformPluginFamily.kext/Contents/PlugIns/ACPI_SMC_PlatformPlugin.kext/Contents/Resources/
Und starten Sie Ihre Maschine neu. Das Profil ist nun wieder aktiv ACPI_SMC_PlatformPlugin.kext
und Sie kehren zu Ihrem ursprünglichen Zustand zurück.
kextd
, ist nichtkernel_task
.