I/O Kit
I/O Kit (в исходном коде, а иногда и в других местах пишется как IOKit) — это фреймворк с открытым исходным кодом в ядре XNU, который помогает разработчикам писать драйверы устройств для операционных систем Apple MacOS и iOS. Платформа I/O Kit была разработана на основе комплекта драйверов NeXTSTEP и не имела общих черт с инфраструктурой драйверов устройств Mac OS 9 или BSD.
Фреймворк I/O Kit реализован в подмножестве C++, в котором пропущены возможности, которые Apple считает небезопасными для использования в многопоточном ядре (исключения, множественное наследование, шаблоны, информация о типах во время выполнения).[1] Встраиваемый C++ был выбран отчасти потому, что Apple считала, что разработчикам будет удобнее писать драйверы на более распространенном языке, чем Objective-C, и в то же время, предоставляющим объектно-ориентированную среду, позволяющую разработчикам драйверов устройств сосредоточиться на функциях кодирования, специфичных для их аппаратного обеспечения, вместо переопределения функций, общих для любого устройства.[2]
Помимо предоставления общего кода для драйверов устройств, этот фреймворк также предоставляет управление питанием, стекирование драйверов, автоматическую настройку и динамическую загрузку драйверов.
Примечания
[править | править код]- ↑ IOKit Device Driver Design Guidelines, 2009, The libkern C++ Runtime.
- ↑ IOKit Fundamentals, 2014, Language Choice: «C++ was chosen for several reasons...».
Ссылки
[править | править код]- IOKit Device Driver Design Guidelines : [англ.] // IOKit Device Driver Design Guidelines. — Apple, 2009. — 14 August. — Дата обращения: 10.01.2019.
- IOKit Fundamentals : [англ.] // Documentation Archive. — Apple, 2014. — 9 April. — Дата обращения: 10.01.2019. (Основы IOKit.)
Для улучшения этой статьи желательно:
|