次へ: デバイスドライバとシステムコール
上へ: デバイスドライバ
戻る: デバイスドライバ
  目次
  索引
デバイスドライバには主に以下の3種類がある。
- キャラクタ型デバイスドライバ
- シリアルポート、
パラレルポート等に利用
- 普通のファイルは前後しながら読めるが,多くのキャラ
クタ型デバイスは後戻りして読むことができない。
キャラクタ型はデータを蓄積しているものではなくストリームとして扱う。
- ブロック型デバイスドライバ
- ネットワークインターフェースデバイスドライバ
- 通信に利用。
- デバイスファイルからのアクセスはできない。
デバイスファイルはmknodコマンドにデバイスパラメータを
指定して作成する。
デバイスパラメータには以下のようなものがある。
- キャラクタ型、ブロック型の区別。
- 引数c,bによってキャラクタ型,ブロック型を指定。
- メジャー番号。
- マイナー番号。
- デバイスの名前に相当する
1つのドライバで
複数のデバイスを管理するのに必要である。
マイナー番号は0から255に制限されている。デバイス番号を保持するのにdev_tというのを宣言していてこのdev_tはsys/type.h で定義された
16bの整数値である。
そしてdev_tの内部仕様に依存するアプリケーションがあるためにこれを変更す
ることができない。
Linuxではファイル名を持つファイルはi-nodeと呼ばれる管理情報が存在する。
デバイスファイルであるならばこのi-nodeの中にメジャー番号,マイナー番
号が存在し,メジャー番号からデバイスドライバを特定する。
平成15年3月14日