Werden die Ursachen für das Herunterfahren von OS X und die Ursachen für den Ruhezustand irgendwo aufgelistet / erklärt?


25

Die Zahlen, an denen ich am meisten interessiert bin

  • -2
  • 0
  • 3
  • 5

… Könnte ich dieser Auswahlliste hinzufügen.

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

Vielleicht irgendwo in Apple Open Source?

Hintergrund

Es gibt eine vorgeschlagene Antwort für -60 , eine Frage zu -81 , eine strittige vorgeschlagene Antwort für -108 , die Diskussion über -128 , -72 , -62 , -30 , -2 , 0 , 3 ... und so weiter, aber es sei denn , ich vermisse etwas:

  • Nichts ist vergleichbar mit einer von Apple bereitgestellten Liste mit Erklärungen zu den häufig verwendeten 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 Ursachen

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 unter MacOSX10.8.sdk installierten
  • Es kann sinnvoll sein, einige dieser Fehlercodes als veraltet zu behandeln .

Antworten:


13

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

Eine vollständige aktuelle Liste finden Sie unter Ursachen für das Herunterfahren .

Siehe auch: Liste der Mac OS X-Fehlercodes .


Hier auf Ask Different gab es eine Reihe von Fragen zu den Ursachen des Herunterfahrens:


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


Allgemeine Vorschläge bei weiteren Problemen:


9

Die kbase-Artikel zu Systemfehlercodes stammen aus der Zeit der PowerPC-Prozessoren, die offenbar viel mehr Bits benötigten, um alle potenziellen Hardwarefehler zu melden, die zu einem Herunterfahren führen könnten. Beginnend mit dem Aufkommen der Intel-Boards werden alle Shutdowns mit einem 8-Bit-Code versehen, wenn die normalen Software-Shutdown-Flags nicht aufgezeichnet werden. Ein positiver Code zeigt ein durch Software oder HID ausgelöstes Herunterfahren an, während ein negativer Code (im Bereich von -1 bis -127) ein durch Hardware bedingtes Herunterfahren durch Intel SMC anzeigt. Ein -128-Shutdown-Code zeigt ein hardwarebezogenes Herunterfahren mit unbekannter Ursache an.

Der Abschaltcode 0 befindet sich in einem begrenzten Bereich 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 herauszuziehen, während es eingeschaltet und ausgesteckt ist, oder ziehen Sie das Wenn ein MacBook / Pro / Air mit der letzten Batteriereserve vor dem vollständigen Herunterfahren des Systems in den SafeSleep-Modus wechselt, wird das Netzkabel aus einem iMac gezogen, während der Computer ausgeführt wird, und anschließend der Computer neu gestartet und Console.app überprüft den Inhalt des Arbeitsspeichers in der zu bewahren

/var/vm/sleepimage

Datei. Sofern Sie Ihren MagSafe-Adapter nicht unmittelbar nach dem Einschlafen des Computers anschließen, wird dieser Code mit ziemlicher Sicherheit als Ursache für das Herunterfahren in der Datei system.log angezeigt.

Einige der Codes für das Herunterfahren der Hardware gelten je nach Konfiguration nur für bestimmte Computermodelle, 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 mitgeteilt, dass Intel für die Zuweisung der Codes und verantwortlich ist Diesbezüglich war der Informationsaustausch auch mit Apple Engineering nicht besonders kostenlos. Also mussten wir die obskuren auf eigene Faust herausfinden.

Vorheriges Herunterfahren Ursache 5 und 3 sind Verzögerungen aus den PowerPC-Tagen. Da sie vom Benutzer initiiert wurden, ist das Betriebssystem weiterhin dafür verantwortlich, sie zu melden.

Code 5 ist ein sauberes, vom Benutzer initiiertes Herunterfahren der Software, z. B. durch Auswahl von Herunterfahren aus dem Menü  oder Drücken der Ein / Aus-Taste und Auswahl von Herunterfahren im Popup-Fenster oder Gedrückthalten controloptioncommandejectoder Eingeben

sudo halt

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

Code 3 ist ein "unsauberes" Herunterfahren, das durch einen vom Benutzer eingeleiteten Neustart des Computers oder durch erzwungenes Anhalten eines Hardware-Computers durch Halten des Netzschalters für mindestens 5 Sekunden verursacht werden kann.


Vielen Dank! 3 würde sich also aus einem erzwungenen Neustart ergeben (Command-Control-Power-Taste), ja?
Graham Perrin

Es gibt auch einen Code "1" für den Neustart über das Menü.
Adrian Maire

8

Internes Apple-Dokument zu Shutdown-Codes

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


3

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

Aufgrund der folgenden Informationen wurde festgestellt, dass sich dieses Problem wie beabsichtigt verhält:

Wenn Sie mehr Informationen zum Thema Schlaf / Wach 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 jetzt diesen Fehlerbericht.

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

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


2

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 dabei helfen, die richtige Richtung einzuschlagen, auch wenn es nicht genau die Antwort ist, die Sie suchen.

Wenn ein Fehlercode veraltet ist, wird er nicht durch eine neue Ursache ersetzt, da dies die Verfolgung dieser in OS X und früheren Versionen verwendeten Nummern erheblich erschwert.


1
Vielen Dank. Die neueste Ausgabe dieser alten Liste ist wahrscheinlich Macintosh: System Error Codes Explained , archiviert von Apple.
Graham Perrin

@GrahamPerrin du könntest deinen Kommentar zu einer Antwort abgeben!
Ruskes

1
Ich würde bezweifeln, dass McOS <= 9-Informationen für irgendetwas relevant sind - der Kernel usw. lief ab 1989 als NeXT und ich denke, ich würde diese Werte verwenden, anstatt auf OS <= 9 zu wechseln
user151019

Diese sind nicht verwandt - sie sind klassische Fehlercodes für das Betriebssystem (jetzt Carbon). Sie werden für API-Fehlercodes auf Anwendungsebene verwendet. Selbst im klassischen Betriebssystem wurden sie nicht verwendet, um Systemabstürze zu identifizieren.
Jens Alfke

Ich bin mir ziemlich sicher, dass die Ursache für
Adrian Maire,

0

Hoffe es hilft jemandem.

MBP 2008

  • 3 Normales Verhalten ... Der Netzschalter wurde länger als vier Sekunden gedrückt, um das Herunterfahren zu erzwingen.
  • -5 Normales Verhalten ... normales Herunterfahren
  • -60 Versuchen Sie, den Akku aufzuladen.
  • -70 Setzen Sie das obere Gehäuse wieder ein.
  • -72 Kühlkörpersensor ersetzen / Wärmeleitpaste erneut auftragen / Kühlkörper ersetzen (es war mein Problem)
  • -74 Wechselbatterie für KGB-Batterie - Batterie ersetzen
  • -78 Ladeschaltung auf der Logikplatine ... versuchen Sie, die linke KGB-E / A-Platine auszutauschen ... ersetzen Sie sie bei Bedarf / ersetzen Sie die Logikplatine
  • -82 Prüfen Sie die JST-Steckverbinder des Thermosensors auf fehlerhaften Sitz oder Beschädigung. Thermosensor (en) ersetzen. Siehe Abschnitt zum Zerlegen des Thermosensors
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.