知識ベース

I / Oキット

I / O Kitフレームワーク(ソースコードおよびその他の場所でIOKitとして記述されている)は、開発者がAppleのmacOSおよびiOSオペレーティングシステムのデバイスドライバーをコーディングするのに役立つXNUカーネルのオープンソースフレームワークです。 I / O KitフレームワークはNeXTSTEPのDriverKitから進化したもので、Mac OS 9のデバイスドライバーフレームワークまたはBSDのフレームワークとの類似点はありません。

I / O KitフレームワークはC ++のサブセットに実装されており、Appleがマルチスレッドカーネルでの使用には安全ではないと考える機能(例外、多重継承、テンプレート、ランタイムタイプ情報)を省略しています。組み込みC ++が選択された理由の1つは、デバイスドライバーの開発者が再実装する代わりにハードウェア固有のコーディング機能に集中できるオブジェクト指向のフレームワークを提供しながら、開発者がObjective-Cよりも一般的に使用される言語でドライバーを作成する方が快適だとAppleが考えたためです特定のデバイスに共通の機能。

このフレームワークは、デバイスドライバーに共通のコードを提供することに加えて、電源管理、ドライバースタッキング、自動構成、およびドライバーの動的ロードも提供します。