Sind die Ursachen für das Herunterfahren und den Ruhezustand von OS X irgendwo aufgeführt/erklärt?

Die Zahlen, die mich am meisten interessieren

  • -2
  • 0
  • 3
  • 5

… Ich könnte diese Auswahlliste ergänzen.

Was bedeuten diese Zahlen; Wo könnten wir maßgebliche Erklärungen finden?

Irgendwo in Apple Open Source vielleicht?

Hintergrund

Es gibt einen Antwortvorschlag für -60 , eine Frage zu -81 , einen umstrittenen Antwortvorschlag für -108 , eine Diskussion über -128 , -72 , -62 , -30 , -2 , 0 , 3 … und so weiter, aber es sei denn, ich mir fehlt was:

  • nichts wie eine von Apple bereitgestellte Liste mit Erklärungen zu den häufig gesehenen Zahlen.

Beispiele

Drei Nachrichten, die kürzlich vom Kernel auf einem MacBookPro5,2 gesendet wurden:

2014-03-31 09:04:49.000 kernel[0]: Previous Shutdown Cause: 5
2014-03-31 11:01:24.000 kernel[0]: Previous Sleep Cause: 5
2014-03-31 14:47:00.000 kernel[0]: |Previous Shutdown Cause: -60

Möglicherweise relevant für einige Ursachennummern

Fehlercodes in http://www.opensource.apple.com/source/CarbonHeaders/CarbonHeaders-18.1/MacErrors.h

  • das ist in Apple Open Source für Mac OS X 10.6.2, aber nicht in Open Source für Mac OS X 10.6.3
  • der Quellcode für 10.6.2 ist fast identisch mit dem, was unter MacOSX10.8.sdk installiert wird
  • Es kann sinnvoll sein, einige dieser Fehlercodes als veraltet zu behandeln .

Antworten (6)

Die genaue Bedeutung der Codes ist nicht öffentlich dokumentiert, obwohl laut der Website von @grgarside für Shutdown Causes die Ursachen für die in der Frage aufgeführten sind:

Eine vollständige aktuelle Liste finden Sie unter Shutdown Causes .

Siehe auch: Liste der Mac OS X-Fehlercodes .


Hier auf Ask Different gab es eine Reihe von Fragen zu den Gründen für das Herunterfahren:


Wenn Sie sehr oft negative Zahlen haben, ist Apple eher daran interessiert, Ihren Mac zur Reparatur zu bringen, da dies normalerweise auf ein Problem mit Ihrer Hardware hinweist.


Allgemeine Hinweise bei weiteren Problemen:

Die kbase-Artikel über Systemfehlercodes stammen also aus der Zeit der PowerPC-Prozessoren, die offensichtlich viel mehr Bits benötigten, um alle potenziellen Hardwarefehler zu melden, die zum Herunterfahren führen könnten. Beginnend mit dem Aufkommen von Intel-Boards werden alle Herunterfahren mit einem 8-Bit-Code gekennzeichnet, wenn die normalen Software-Shutdown-Flags nicht aufgezeichnet werden. Ein positiver Code weist auf ein von Software oder HID initiiertes Herunterfahren hin, während ein negativer Code (im Bereich von -1 bis -127) auf ein hardwarebezogenes, von Intel SMC initiiertes Herunterfahren hinweist. Ein Shutdown-Code -128 weist auf ein hardwarebezogenes Herunterfahren aus unbekannter Ursache hin.

Der Abschaltcode 0 liegt in einem Grenzbereich zwischen der Hardware und dem Benutzer; Dies bedeutet einen plötzlichen Stromausfall, der entweder durch einen Hardwarefehler oder eine Benutzeraktion verursacht werden kann (wenn Sie dies selbst demonstrieren möchten, versuchen Sie, den Akku aus einem alten MacBook oder MacBook Pro zu entfernen, während es eingeschaltet und nicht angeschlossen ist, oder ziehen Sie den Ziehen Sie das Netzkabel aus einem iMac, während es läuft, starten Sie den Computer neu und überprüfen Sie Console.app.Ein 0 Sleep Cause tritt auf, wenn ein MacBook/Pro/Air sich selbst in SafeSleep versetzt und das letzte bisschen Reservebatterieleistung verwendet, bevor das System vollständig heruntergefahren wird um den Inhalt des RAM in der zu erhalten

/var/vm/sleepimage

Datei. Wenn Sie Ihren MagSafe-Adapter nicht sofort anschließen, nachdem der Computer in den Ruhezustand gewechselt ist, folgt diesem Code ziemlich sicher eine 0 Shutdown Cause im system.log.

Einige der Hardware-Shutdown-Codes sind je nach Konfiguration für bestimmte Computermodelle einzigartig, da sie sich auf einen bestimmten Sensor oder ein bestimmtes Gerät beziehen, das nur in diesem Modell vorhanden ist – als ich für Apple arbeitete, wurde uns gesagt, dass Intel für die Zuweisung der Codes verantwortlich sei und Der Informationsaustausch in dieser Hinsicht war nicht besonders frei, selbst mit Apple Engineering. Also mussten wir die obskuren ziemlich alleine herausfinden.

Ursache 5 und 3 des vorherigen Herunterfahrens sind Überbleibsel aus der PowerPC-Zeit – da sie vom Benutzer initiiert werden, ist das Betriebssystem immer noch dafür verantwortlich, sie zu melden.

Code 5 ist ein sauberes, vom Benutzer initiiertes Herunterfahren der Software, z. B. durch Auswählen von „Herunterfahren“ im Menü  oder durch Drücken des Netzschalters und Auswählen von „Herunterfahren“ im Popup-Fenster oder durch Gedrückthalten von controloptioncommandejectoder durch Tippen

sudo halt

an der Eingabeaufforderung. In ähnlicher Weise zeigt eine vorherige Schlafursache von 5 jeden sauberen, vom Benutzer initiierten Schlaf an, über das -Menü oder eine heiße Ecke oder die Befehlszeile oder das Schließen des Deckels und das Auslösen des Hall-Effekt-Sensors im oberen Gehäuse eines MacBook/Pro/Air .

Code 3 ist ein "unsauberes" Herunterfahren, das durch einen vom Benutzer initiierten Neustart des Computers oder durch das Erzwingen des Anhaltens eines Hardwarecomputers verursacht werden kann, indem der Netzschalter mindestens 5 Sekunden lang gedrückt gehalten wird.

Danke! 3 würde also aus einem erzwungenen Neustart resultieren (Befehl-Steuerung-Power-Taste), ja?
Es gibt auch einen Code "1" für den Neustart über das Menü.

Internes Apple-Dokument zu Abschaltcodes

Das sind die Codes, die wir verwendet haben, als ich dort gearbeitet habe

Ich habe bei Apple einen Fehlerbericht über die kryptischen Zahlen eingereicht und schließlich diese Antwort erhalten:

Die Techniker haben anhand der folgenden Informationen festgestellt, dass sich dieses Problem wie beabsichtigt verhält:

Wenn Sie nach weiteren Informationen zum Schlafen/Aufwachen suchen, ist "pmset -g log" der richtige Ort, nicht das system.log, alles verhält sich korrekt.

Wenn Sie Fragen zu dieser Lösung haben, aktualisieren Sie bitte Ihren Fehlerbericht mit diesen Informationen.

Wir schließen diesen Fehlerbericht jetzt.

Bitte überprüfen Sie regelmäßig neue Apple-Versionen auf Updates, die dieses Problem betreffen könnten.

Zusammenfassend: Sie empfehlen, den Befehl pmset -g logzur Diagnose von Schlafproblemen zu verwenden, anstatt sich das Systemprotokoll anzusehen.

Ich konnte Ihnen mit Code 0 helfen, was bedeutet, dass es kein Problem gab und es erfolgreich war.

Ich habe eine alte Liste aus dem Jahr 1998 vor OS X gefunden. Sie könnte Ihnen in die richtige Richtung helfen, auch wenn es nicht ganz die genaue Antwort ist, nach der Sie suchen.

Wenn ein Fehlercode veraltet ist, wird er nicht durch eine neue Ursache ersetzt, da dies es nur viel schwieriger machen würde, diese in OS X und früheren Versionen verwendeten Nummern zu verfolgen.

Vielen Dank. Die neueste Ausgabe dieser alten Liste ist wahrscheinlich Macintosh: System Error Codes Explained , archiviert von Apple.
@GrahamPerrin Sie könnten Ihren Kommentar zu einer Antwort abgeben!
Ich würde bezweifeln, dass die Informationen zu McOS <=9 hier für irgendetwas relevant sind - der Kernel usw. lief ab 1989 als NeXT und ich denke, ich würde diese Werte verwenden, anstatt zum Betriebssystem <=9 zu wechseln
Das hat nichts miteinander zu tun – es sind klassische OS-Fehlercodes (jetzt Carbon). Sie werden für API-Fehlercodes auf Anwendungsebene verwendet; selbst im klassischen Betriebssystem wurden sie nicht verwendet, um Systemabstürze zu identifizieren.
Ich bin mir ziemlich sicher, dass die Ursache für das Herunterfahren NICHT mit Systemfehlercodes identisch ist

Hoffe, es wird jemandem helfen.

MBP 2008

  • 3 Normales Verhalten... Netzschalter wurde länger als vier Sekunden gedrückt, um das Herunterfahren zu erzwingen.
  • -5 Normales Verhalten... regelmäßiges Herunterfahren
  • -60 Versuchen Sie, den Akku aufzuladen.
  • -70 Topcase ersetzen.
  • -72 Kühlkörpersensor ersetzen / Wärmeleitpaste erneut auftragen / Kühlkörper ersetzen (es war mein Problem)
  • -74 Akku gegen KGB-Akku tauschen - Akku tauschen
  • -78 Ladeschaltung auf der Logikplatine ... versuchen Sie, die linke E / A-Platine von KGB auszutauschen ... bei Bedarf ersetzen / Logikplatine ersetzen
  • -82 JST-Steckverbinder des Temperatursensors auf falschen Sitz oder Beschädigung prüfen. Temperatursensor(en) ersetzen. Siehe den Abschnitt zum Auseinandernehmen des Thermosensors