Строка panic cpu 2 caller в отчёте об ошибке macOS означает, что ядро системы зафиксировало критический сбой на процессорном ядре №2, а идентификатор caller указывает на функцию или драйвер, инициировавший аварийную остановку. Это сообщение появляется при kernel panic — состоянии, при котором система принудительно перезагружает Mac, чтобы защитить данные и оборудование от повреждения.

Цифра после «cpu» не указывает на неисправность конкретного ядра процессора — она лишь показывает, на каком ядре выполнялся процесс в момент сбоя. При повторных паниках номер может меняться: cpu 0, cpu 2, cpu 4 и так далее. Куда информативнее часть строки после caller, где содержится адрес или имя модуля, вызвавшего ошибку.

В этой статье разберём, как правильно читать отчёт о панике ядра, какие причины чаще всего стоят за сбоем и что можно проверить самостоятельно до обращения в сервис.

Что такое kernel panic и как расшифровать отчёт

Kernel panic — это аварийная остановка ядра операционной системы, аналог «синего экрана» в Windows. Когда ядро сталкивается с состоянием, из которого не может безопасно восстановиться, оно останавливает всю систему и записывает диагностический отчёт.

После перезагрузки macOS обычно предлагает отправить отчёт в Apple. Сам файл сохраняется в системе, и его можно найти через приложение Консоль в разделе отчётов о сбоях — файлы имеют название вида Kernel — panic или расширение .panic.

Типичный фрагмент отчёта выглядит так:

panic(cpu 2 caller 0xffffff800f4a1b2c): "AppleSMCFamily::handleSMCResult ..."

Backtrace (CPU 2), Frame : Return Address

0xffffff91b3a03b00 : 0xffffff800f3c5e6d

...

Ключевые элементы, на которые стоит смотреть:

  • 🔍 Текст после caller — шестнадцатеричный адрес функции, вызвавшей панику; сам по себе адрес малоинформативен без символьной таблицы.
  • 🧩 Имя в кавычках — часто содержит название модуля, например AppleSMCFamily, IOGraphicsFamily или стороннего kext.
  • 📚 Backtrace — цепочка вызовов; если в ней встречаются имена сторонних расширений ядра, это главный подозреваемый.
  • 🧾 Строка «last started kext» — последнее загруженное расширение, что помогает локализовать проблему.
💡

Номер CPU в строке panic не указывает на сломанное ядро процессора — диагностическую ценность несут имя модуля в сообщении и backtrace отчёта.