Приведены ли где-нибудь причины / причины отключения OS X в списке / объяснены ли где-нибудь?

25

Числа, в которых я больше всего заинтересован

  • -2
  • 0
  • 3
  • 5

... Я мог бы добавить к этому списку.

Что означают эти цифры; где мы можем найти авторитетные объяснения?

Может быть, где-нибудь в Apple с открытым исходным кодом?

Задний план

Есть предложенный ответ для -60 , вопрос о -81 , дискуссионный предложенный ответ для -108 , обсуждение -128 , -72 , -62 , -30 , -2 , 0 , 3 … и так далее, но если только я что-то упускаю

  • ничего подобного предоставленному Apple списку объяснений часто встречающихся цифр.

Примеры

Три сообщения, недавно отправленные ядром на 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

Возможно, имеет отношение к некоторым номерам причин

Коды ошибок в http://www.opensource.apple.com/source/CarbonHeaders/CarbonHeaders-18.1/MacErrors.h

  • это в Apple с открытым исходным кодом для Mac OS X 10.6.2, но не с открытым исходным кодом для Mac OS X 10.6.3
  • исходный код для 10.6.2 практически идентичен тому, что установлен под MacOSX10.8.sdk
  • может быть целесообразно рассматривать некоторые из этих кодов ошибок как устаревшие .
Грэм Перрин
источник
Предложение было бы здорово. apple.stackexchange.com/questions/371435/...
user75758

Ответы:

13

Точное значение кодов публично не задокументировано, хотя, согласно веб- сайту @ grgarside по причинам выключения , причинами, перечисленными в вопросе, являются:

Полный список обновлений см. В разделе « Причины отключения» .

Смотрите также: Список кодов ошибок Mac OS X .


Здесь, на Ask Different, было несколько вопросов о причинах выключения:


Если у вас очень часто встречаются отрицательные числа, Apple более заинтересована в восстановлении вашего Mac, поскольку это обычно указывает на проблему с вашим оборудованием.


Общие предложения на случай дальнейших проблем:

kenorb
источник
9

Таким образом, статьи kbase о кодах системных ошибок относятся ко временам процессоров PowerPC, которые, очевидно, нуждались в гораздо большем количестве битов, чтобы сообщать обо всех потенциальных аппаратных ошибках, которые могут вызвать отключение. Начиная с появления плат Intel, все выключения помечаются 8-битным кодом, если обычные флажки выключения программного обеспечения не записываются. Положительный код указывает на отключение, инициированное программным обеспечением или HID, а отрицательный код (в диапазоне от -1 до -127) указывает на аппаратное отключение, инициированное Intel SMC. Код выключения -128 указывает на аппаратное отключение по неизвестной причине.

Код отключения 0 находится в предельном пространстве между оборудованием и пользователем; это означает внезапную потерю энергии, которая может быть вызвана сбоем оборудования или действиями пользователя (если вы хотите продемонстрировать это сами, попробуйте вытащить аккумулятор из старого MacBook или MacBook Pro, когда он включен и отсоединен, или вытащить Выключите шнур питания iMac во время его работы, затем перезагрузите компьютер и проверьте Console.app. Причина 0 в режиме сна возникает, когда MacBook / Pro / Air переводит себя в SafeSleep, используя последний бит резервного заряда батареи перед полным отключением системы, чтобы сохранить содержимое оперативной памяти в

/var/vm/sleepimage

файл. Если вам не удастся подключить адаптер MagSafe сразу после того, как компьютер перейдет в спящий режим, этот код будет вполне гарантированно сопровождаться 0 причиной выключения в system.log.

Некоторые из аппаратных кодов выключения являются уникальными для определенных моделей компьютеров в зависимости от их конфигурации, поскольку они относятся к конкретному датчику или устройству, которое существует только в этой модели - когда я работал в Apple, нам говорили, что Intel отвечает за назначение кодов и не был особенно свободен с обменом информацией на этот счет, даже с Apple Engineering. Таким образом, мы в значительной степени должны были выяснить неясные самостоятельно.

Причина предыдущего выключения 5 и 3 - это перенесенные с дней PowerPC, поскольку они инициированы пользователем, ОС по-прежнему отвечает за их отчеты.

Код 5 - это чистое, инициированное пользователем отключение программного обеспечения, например, выбрав «Выключение» в меню, или нажав кнопку питания и выбрав «Выключение» во всплывающем окне, или удерживая нажатой клавишу controloptioncommandeject, или набрав

sudo halt

в командной строке. Точно так же «Причина предыдущего сна», равная 5, указывает на любой чистый инициированный пользователем сон из меню or или из горячего угла или из командной строки, либо закрытие крышки и запуск датчика Холла в верхнем корпусе MacBook / Pro / Air. ,

Код 3 - это «грязное» завершение работы, которое может быть вызвано любой перезагрузкой компьютера, инициированной пользователем, или принудительным остановом компьютера, удерживая нажатой кнопку питания более 5 секунд.

jmfactotum
источник
Благодарность! Таким образом, 3 будет результатом принудительного перезапуска (кнопка «Command» - «Control» - «Power»), да?
Грэм Перрин
Существует также код «1» для перезапуска с помощью меню.
Адриан Мэр
8

Внутренний документ Apple о кодах выключения

Это коды, которые мы использовали, когда работали там

Maximus
источник
3

Я подал в Apple отчет об ошибках по поводу загадочных чисел и в итоге получил такой ответ:

Инжиниринг установил, что эта проблема ведет себя как задумано, основываясь на следующей информации:

Если вы ищете дополнительную информацию, связанную со сном / бодрствованием, то вам нужно обратиться к "pmset -g log", а не к system.log, все работает правильно.

Если у вас есть вопросы относительно этого решения, обновите отчет об ошибках с этой информацией.

Сейчас мы закрываем этот отчет об ошибках.

Обязательно регулярно проверяйте новые выпуски Apple на наличие обновлений, которые могут повлиять на эту проблему.

В итоге: они рекомендуют использовать команду pmset -g logдля диагностики проблем со сном, а не просматривать системный журнал.

Кристофер Джонсон
источник
2

Я мог бы помочь вам с кодом 0, который означает, что не было никаких проблем, и это было успешно.

Я нашел старый список , начиная с 1998 года до OS X. Он может помочь вам в правильном направлении, даже если это не совсем точный ответ, который вы ищете.

Если код ошибки устарел, он не будет заменен новой причиной, потому что это только усложнит отслеживание этих номеров, используемых в OS X и более ранних версиях.

обкрадывать
источник
1
Спасибо. Самым последним изданием этого старого списка, вероятно, является Macintosh: объяснение кодов системных ошибок , заархивированное Apple.
Грэм Перрин
@GrahamPerrin Вы можете оставить свой комментарий к ответу!
Рускес
1
Я сомневаюсь, что информация McOS <= 9 здесь относится ко всему - ядро ​​и т. Д. Работало под NeXT с 1989 года, и я думаю, что они будут использовать эти значения вместо перехода на ОС <= 9
user151019
Они не связаны - это классические коды ошибок ОС (теперь Carbon). Они используются для кодов ошибок API уровня приложения; даже в классической ОС они не использовались для выявления сбоев системы.
Йенс Альфке
Я почти уверен, что причина выключения НЕ эквивалентна системным ошибкам
Адриан Мэйр,
0

Надеюсь, это поможет кому-то.

MBP 2008

  • 3 Нормальное поведение ... кнопка питания была нажата более четырех секунд для принудительного выключения.
  • -5 Нормальное поведение ... регулярное отключение
  • -60 Попробуйте зарядить аккумулятор.
  • -70 Заменить верхний корпус.
  • -72 заменить датчик радиатора / повторно нанести термопасту / заменить радиатор (это была моя проблема)
  • -74 Сменный аккумулятор для КГБ - замените аккумулятор
  • -78 Зарядное устройство на плате логики ... попробуйте заменить левую плату ввода-вывода КГБ ... при необходимости заменить / заменить плату логики
  • -82 Проверить разъемы JST термодатчика на предмет неправильной посадки или повреждения. Заменить термодатчик (и). См. Раздел «Разборка термодатчика»
Дмитрий
источник