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

 
Предыдущий Следующий
kOSMetaClassNoInsKModSet kOSMetaClassInstNoSuper

kOSMetaClassNoSuper

kOSMetaClassNoSuper обозначает ошибку связывания класса с его суперклассом во время регистрации OSMetaClass. Это отношение является основой среды выполнения C++ Libkern: оно определяет иерархию классов, используемую для проверки типов и создания объектов при регистрации kext.

В текущем исходном коде XNU эта ветвь помечена как «никогда не возвращается», хотя описание журнала для исторического состояния сохранено. Поэтому код в основном полезен при исследовании старого кода расширений ядра или реализации на основе XNU, а не как обычный результат современного API приложения.

Как это интерпретировать

  • Убедитесь, что предполагаемый суперкласс скомпонован, зарегистрирован и доступен до выполнения конструктора производного класса.
  • Проверьте написание имени класса, порядок загрузки и зависимости, предоставляющие родительский класс.
  • По соседним сообщениям OSMetaClass определите, не вызвала ли отсутствие связи предшествующая ошибка регистрации.
  • Рассматривайте это как дефект загрузчика или иерархии классов, а не сбой транспорта устройства.

Ссылки


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