ioctl - 制御デバイス
シノプシス
#含める
int ioctl(int d 、int 要求 , …);
説明
ザioctl 関数は、特殊ファイルの基礎となるデバイスパラメータを操作します。特に、文字特殊ファイル(例えば、端末)の多くの動作特性は、ioctl リクエスト。引数 d 開いているファイル記述子でなければなりません。
2番目の引数は、デバイス依存の要求コードです。 3番目の引数は、型が指定されていないメモリへのポインタです。伝統的にchar * argp (前日よりvoid * 有効なC)であり、この議論のためにその名前が付けられます。
ioctl 要求 それが引数が に パラメータまたは でる パラメータ、および引数のサイズ argp バイト単位。 ioctlの指定に使用されるマクロと定義 要求 ファイル内にあります
戻り値
通常、成功するとゼロが返されます。いくつかのioctlは、出力パラメータとして戻り値を使用し、成功すると非負の値を返します。エラーの場合は-1が返され、 エラー 適切に設定される。
エラー
EBADF
d 有効な記述子ではありません。
EFAULT
argp アクセスできないメモリ領域を参照します。
エノテ
d 文字特殊装置に関連付けられていません。
エノテ
指定された要求は、ディスクリプタが持つオブジェクトの種類には適用されません d 参照。
EINVAL
要求 または argp 有効じゃない。
適合する
単一の基準はありません。引数、戻り値、およびセマンティクスioctl(2)は問題のデバイスドライバによって異なります(この呼び出しは、UnixストリームI / Oモデルに完全に適合しない操作のキャッチオールとして使用されます)。ザioctl バージョン7のAT&T Unixに登場しました。




