Описание тега kernel-extension

Вопросы, связанные с разработкой расширений ядра macOS/Darwin, включая общие (C) и I/O Kit (C++) типы.

Расширения ядра macOS/Darwin "xnu" упакованы в виде загружаемых модулей. Обычно они называются "кекстами" после расширения папки.

Существуют два типа расширений ядра:

  • Расширения, написанные на C, в первую очередь для API BSD и Mach. Этот формат обычно используется для сетевых расширений и файловых систем.
  • Расширения, написанные на C++ для API I/O Kit. Этот формат наиболее распространен для драйверов устройств и расширений, которые напрямую взаимодействуют с драйверами устройств.

Не путать с драйверами DriverKit и "Системными расширениями", ни один из которых не работает в контексте ядра.