Что означает код возврата ядра macOS 0xDC004009 (kOSMetaClassInstNoSuper)?

 
Предыдущий Следующий
kOSMetaClassNoSuper kOSMetaClassDuplicateClass

kOSMetaClassInstNoSuper

kOSMetaClassInstNoSuper является аналогом ошибки отсутствующего суперкласса при создании экземпляра в устаревшей среде OSMetaClass. Исторически он означает, что создание дошло до класса, ожидаемый родитель которого не найден в зарегистрированной иерархии.

Текущий XNU помечает соответствующую ветвь как «никогда не возвращается». Поэтому статус нельзя использовать как общий диагноз объекта приложения или устройства USB/PCI. Если он встречается в старом дереве исходников или журнале, сначала исследуйте регистрацию классов kext и порядок конструкторов, а не ввод-вывод устройства.

Важные проверки

  • Убедитесь, что родительский метакласс доступен и зарегистрирован до создания производных объектов.
  • Проверьте зависимости kext и порядок выполнения статических конструкторов C++.
  • Найдите предшествующий kOSMetaClassNoSuper, дублирование класса или ошибку инициализации.
  • Сохраняйте в диагностике имена класса и kext; одного числового значения недостаточно для поиска повреждённой иерархии.

Ссылки


Нужно найти другой код? Найти другой код состояния или ошибки.