I numeri delle cause di arresto e di sospensione di OS X sono elencati / spiegati ovunque?


25

I numeri a cui sono più interessato

  • -2
  • 0
  • 3
  • 5

... Potrei aggiungere a quella lista.

Cosa significano quei numeri; dove possiamo trovare spiegazioni autorevoli?

Da qualche parte in Apple open source, forse?

sfondo

C'è una risposta suggerita per -60 , una domanda su -81 , una risposta discutibile suggerita per -108 , discussione di -128 , -72 , -62 , -30 , -2 , 0 , 3 ... e così via, ma a meno che io mi manca qualcosa:

  • niente come un elenco di spiegazioni fornito da Apple dei numeri comunemente visti.

Esempi

Tre messaggi recentemente inviati dal kernel su un MacBookPro5,2:

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

Forse rilevante per alcuni numeri di causa

Codici di errore in http://www.opensource.apple.com/source/CarbonHeaders/CarbonHeaders-18.1/MacErrors.h

  • disponibile in Apple open source per Mac OS X 10.6.2 ma non in open source per Mac OS X 10.6.3
  • il codice sorgente per 10.6.2 è quasi identico a quello installato su MacOSX10.8.sdk
  • potrebbe essere ragionevole trattare alcuni di questi codici di errore come deprecati .

Un suggerimento sarebbe fantastico. apple.stackexchange.com/questions/371435/…
user75758

Risposte:


13

Il significato preciso dei codici non è documentato pubblicamente, sebbene secondo il sito web @ grgarside per Shutdown Cause , le cause per quelle elencate nella domanda sono:

Per un elenco completo aggiornato, vedere Cause di spegnimento .

Vedi anche: Elenco dei codici di errore di Mac OS X .


Qui su Ask Different, ci sono state una serie di domande sulle cause dell'arresto:


Se hai numeri negativi molto spesso, Apple è più desiderosa di riparare il tuo Mac, poiché di solito indica un problema con l'hardware.


Suggerimenti generali in caso di ulteriori problemi:


9

Quindi gli articoli di kbase sui codici di errore di sistema risalgono ai giorni dei processori PowerPC, che apparentemente avevano bisogno di molti più bit per segnalare tutti i potenziali errori hardware che potrebbero causare un arresto. A partire dall'avvento delle schede Intel, tutti gli arresti vengono contrassegnati con un codice a 8 bit, se i normali flag di arresto del software non vengono registrati. Un codice positivo indica un arresto avviato da software o HID, mentre un codice negativo (nell'intervallo da -1 a -127) indica l'arresto avviato da Intel SMC relativo all'hardware. Un codice di spegnimento -128 indica un arresto relativo all'hardware di causa sconosciuta.

Il codice di spegnimento 0 si trova in uno spazio liminale tra l'hardware e l'utente; indica una perdita improvvisa di energia che può essere causata da un guasto hardware o da un'azione dell'utente (se vuoi dimostrarlo tu stesso, prova a estrarre la batteria da un vecchio MacBook o MacBook Pro mentre è acceso e scollegato, o tirare il cavo di alimentazione da un iMac mentre è in esecuzione, quindi riavviare il computer e controllare Console.app. A 0 Sleep Cause si verifica quando un MacBook / Pro / Air si mette in SafeSleep utilizzando l'ultimo bit di riserva della batteria prima di spegnere completamente il sistema in ordine per preservare il contenuto della RAM nel file

/var/vm/sleepimage

file. A meno che non ti capiti di connettere il tuo adattatore MagSafe immediatamente dopo che il computer si è spento, è abbastanza sicuro che questo codice sia seguito da una causa di spegnimento 0 in system.log.

Alcuni dei codici di spegnimento hardware sono unici per specifici modelli di computer a seconda della loro configurazione perché si riferiscono a un sensore o dispositivo specifico che esiste solo in quel modello - quando ho lavorato per Apple ci è stato detto che Intel era responsabile dell'assegnazione dei codici e non era particolarmente libero con la condivisione delle informazioni su quel punto, anche con Apple Engineering. Quindi abbiamo praticamente dovuto capire gli oscuri per conto nostro.

Spegnimento precedente Causa 5 e 3 sono ritardi dai giorni di PowerPC, poiché sono stati avviati dall'utente, il sistema operativo è comunque responsabile della loro segnalazione.

Il codice 5 è un arresto del software avviato dall'utente, ad esempio selezionando Arresta dal menu  o premendo il pulsante di accensione e selezionando Arresta nella finestra a comparsa, oppure tenendo premuto controloptioncommandejecto digitando

sudo halt

al prompt dei comandi. Allo stesso modo, una causa di sonno precedente di 5 indica qualsiasi sonno pulito avviato dall'utente, dal menu or o da un angolo caldo o dalla riga di comando o dalla chiusura del coperchio e dall'attivazione del sensore ad effetto hall nella parte superiore di un MacBook / Pro / Air .

Il codice 3 è un arresto "sporco", che può essere causato da qualsiasi riavvio del computer avviato dall'utente o forzando l'arresto di un computer hardware tenendo premuto il pulsante di accensione per 5+ secondi.


Grazie! Quindi 3 risulterebbe da un riavvio forzato (comando-controllo-pulsante di accensione), sì?
Graham Perrin,

C'è anche un codice "1" per il riavvio utilizzando il menu.
Adrian Maire,

8

Documento interno Apple sui codici di spegnimento

Questi sono i codici che usavamo quando lavoravo lì


3

Ho presentato una segnalazione di bug con Apple sui numeri criptici e alla fine ho ottenuto questa risposta:

L'ingegneria ha determinato che questo problema si comporta come previsto in base alle seguenti informazioni:

Se stai cercando maggiori informazioni su sleep / wake, "pmset -g log" è il posto dove andare, non il system.log tutto si comporta correttamente.

In caso di domande su questa risoluzione, si prega di aggiornare la segnalazione di bug con tali informazioni.

Stiamo chiudendo questa segnalazione di bug.

Assicurati di controllare regolarmente le nuove versioni di Apple per eventuali aggiornamenti che potrebbero influenzare questo problema.

In breve: raccomandano di usare il comando pmset -g logper diagnosticare problemi di sonno piuttosto che guardare il registro di sistema.


2

Potrei aiutarti con il codice 0, il che significa che non c'è stato alcun problema ed è stato eseguito correttamente.

Ho trovato un vecchio elenco , risalente al 1998 prima di OS X. Potrebbe aiutarti nella giusta direzione anche se non è esattamente la risposta esatta che stai cercando.

Se un codice di errore è deprecato, non verrà sostituito da una nuova causa, perché ciò renderebbe molto più difficile tenere traccia di questi numeri utilizzati in OS X e precedenti.


1
Grazie. L'edizione più recente di quella vecchia lista è probabilmente Macintosh: spiegazione dei codici di errore di sistema , archiviata da Apple.
Graham Perrin,

@GrahamPerrin potresti commentare una risposta!
Ruskes,

1
Dubiterei che le informazioni McOS <= 9 siano rilevanti per qualsiasi cosa qui - il kernel ecc. Funzionava come NeXT dal 1989 e penso che userebbe questi valori piuttosto che passare al sistema operativo <= 9
user151019

Questi non sono correlati: sono codici di errore del sistema operativo classico (ora Carbon). Sono utilizzati per codici di errore API a livello di applicazione; anche nel sistema operativo classico non sono stati utilizzati per identificare gli arresti anomali del sistema.
Jens Alfke,

Sono abbastanza sicuro che la causa dell'arresto NON sia equivalente ai codici di errore di sistema
Adrian Maire,

0

Spero che possa aiutare qualcuno.

MBP 2008

  • 3 Comportamento normale ... il pulsante di accensione è stato premuto per più di quattro secondi per forzare l'arresto.
  • -5 Comportamento normale ... spegnimento regolare
  • -60 Prova a caricare la batteria.
  • -70 Sostituire il bauletto.
  • -72 sostituire il sensore del dissipatore di calore / riapplicare la pasta termica / sostituire il dissipatore di calore (era un problema mio)
  • -74 batteria di ricambio per batteria KGB - sostituire la batteria
  • -78 Circuito del caricatore sulla scheda logica ... provare a sostituire la scheda I / O sinistra KGB ... sostituire se necessario / sostituire la scheda logica
  • -82 Test dei connettori JST del sensore termico per posizionamento errato o danni. Sostituire i sensori termici. Vedere la sezione di smontaggio del sensore termico
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.