MAKEDEV(3) | FreeBSD Library Functions Manual | MAKEDEV(3) |
名称
makedev, major, minor — デバイス番号変換書式
#include < sys/types.h> dev_t
makedev( int major, int minor);
int
major( dev_t dev);
int
minor( dev_t dev);
解説
makedev() マクロによって、 major と minor 番号に基づいたユニークなデバイス番号を生成することができます。デバイス番号 dev から元の数値を得るために major() と minor() マクロを使用することができます。FreeBSD の以前の実装では、すべてのブロックとキャラクタデバイスは、1 組のメジャーとマイナ番号によってユニークに識別されました。メジャー番号は、特定のデバイスクラス (例えば、ディスク、TTY) を参照し、一方、マイナ番号は、デバイスクラス内のインスタンスを識別しました。 FreeBSD の後のバージョンは、 /dev/ で見ることができる、各キャラクタデバイスのためにユニークなデバイス番号を自動的に生成します。これらの番号は、デバイスクラスで分割されません。
FreeBSD では、これらのマクロは、 dev_t のために異なったエンコーディングを使用するかもしれない、他のオペレーティングシステムで番号を交換する必要があるユーティリティによってのみ使用されますが、より標準的な方法でユーザへこれらの番号を提示するアプリケーションでも使用されます。
戻り値
major() マクロは、0 から 255 の間の値のデバイスのメジャー番号を返します。 minor() マクロは、値が int の完全な範囲をとることがができるデバイスのマイナ番号を返します。September 28, 2008 | FreeBSD |