MacでBluetooth、Wi-Fi、USB、FireWire、その他の通信インターフェースにアクセスしたい。Bluetoothとwifiの認証もやりたいです。Genericカーネル拡張またはI/Oドライバー拡張のどちらを使用する必要がありますか?
質問する
276 次
1 に答える
1
- Airport(Wifi)ドライバーにはパブリックカーネルAPIがありません。
- パブリックBluetoothAPIは、カーネルではなく、ほとんどの場合ユーザースペースに存在します。
- USBおよびFirewireデバイスファミリはI/Oキットによって管理され、カーネルとユーザースペースの両方にパブリックAPIがあります。
- 「その他のコミュニケーション」とは、ネットワーキングを意味すると思いますか?ネットワークカードデバイスドライバーは、カーネルI / OキットAPI、ソケット、パケットフィルタリングなどを中心に構築されており、カーネルのBSD部分に存在します。
したがって、全体として、デバイスを表すオブジェクトを取得する必要がある場合は、I/OキットkextまたはユーザースペースからI/Oキットを使用する必要があります。ネットワーク(イーサネット、IP)APIを使用している場合は、Generickextが必要になります。
于 2012-04-28T15:57:55.973 に答える