Mac OS X のドライバ色々書いた感想
年をはさんで Mac OS X のドライバをいろいろ書いたりいじったりしたわけですが、感想。
- イベントドライバをマルチスレッドで書けるのは、とても楽
- while ループで待ち受けとか
- IODelay (IOKit 内の sleep) はビジーループってことになってるけど、他スレッドが走行してるような
- それ自体はいいこと
- レジューム処理とか、全ドライバの復帰用スレッドが同時に立ち上がるのが面白かった
- ドライバも仮想メモリ空間で動作
- DMA する際とか明示的にアドレス変換が必要
- TLB cache のクリアコストとかどういう風に設計してるのか
- OS 内のオープンソース化されてる部分とされてない部分が思ってた以上にパッチワーク状態
- safe mode がないので、テスト環境は復活用 USB メモリとか必須