2009年5月2日土曜日

Linuxのモジュール化されたデバイスドライバ#1

4/25の話を、ドライバの動的な登録と、デバイス番号の与え方の、2つに分けます。

Linuxのデバイスドライバは、カーネルが立ち上がった後に、モジュールとして動的に組み込み・削除をする事が出来ます。何が便利かと言うと、例えば
1) 時々しか使わないデバイスドライバをモジュール化しておき、普段は込み込まなければ、メモリを節約する事が出来ます。また、必要な時だけ動作するのですから、セキュリティ的にも安心かも知れません。
2) デバイスドライバの開発をする際に、少しずつ動作を見ながら組み込み・削除を繰り返す事が出来るので、動作確認やデバッグの効率が上がります。
デメリットとしては、
1) root ユーザーしかデバイスドライバモジュールの追加・削除が出来ない。
ま、システム構成を変えるのですから、root ユーザーしか出来ないのは仕方が無いと考えて頂きたいです。
2) システムを起動するたびに、デバイスドライバを組み込まないといけない。
ここは rc.d サブディレクトリ以降にシェルスクリプトを書いておくのが妥当だと思います。
3) Linuxのバージョンが変わったら、再コンパイルしないと動作が保証出来ない。
安定かつ普段から使用頻度の高いデバイスドライバは、カーネルと結合した状態でリリースしましょう。

デバイス番号の与え方については、別にアップします。

0 件のコメント:

コメントを投稿