JM プロジェクトは、主に Linux 関連のマニュアルページの日本語ページを翻訳・公開しています。
... るデバイスのパラメーターを 操作する。特に、キャラクター型のスペシャルファイル (例えば端末 (terminal)) の多くの動作特性を ioctl () リクエストによって制御することができる。引き数 fd はオープンされたファイルディスクリプターでなければならない。 2 番目の ... C で void * という書き方が有効になる前から) char * argp と表記されている。したがって、この文章でもそう名付けることとする。 ioctl () の request には、 その引き数が 入力 パラメーターと 出力 パラメーターのどちらであるかの区別や、 argp 引き数のバイト単位の ... サイズ、といった情報がエンコードされている。 ioctl () の request を指定するためのマクロ (macro) と定義は < sys/ioctl.h > ファイルにある。 返り値 たいていの場合、成功するとゼ ... ... 。普通のドットマトリクスプリンターでは、ポーリングの利用 で通常は十分である。デフォルトではポーリングを利用する。 説明 次の ioctl (2) コールがサポートされている。 int ioctl(int fd , LPTIME, int arg ) プリンターのバッファー (buffer) がいっぱいになった時 ... には増やす。単位は1秒の100分の1 で、デフォルトの2は0.02秒にあたる。ポーリングドライバ (polling driver) のみに影響する。 int ioctl(int fd , LPCHAR, int arg ) ポーリングドライバがプリンターの文字受取り準備ができるのを待 つビジーウエイト (busy-wait) の回数 ... る時はこれを増やし、システムが遅くなりすぎる時には 減らす。デフォルトは 1000 である。ポーリングドライバのみに影響する。 int ioctl(int fd , LPABORT, int arg ) もし、 arg が 0 なら、プリンタードライバはエラーについて再試行 を行う。それ以外の場合は中止する ... ... 定を保持するための termio 構造体、および端末属性を取得・変更するための種々の ioctl (2) 操作を定義していた。 termio インターフェースは現在では時代遅れである。 POSIX.1-1990 で、このインターフェースの修正版が ... という名前で標準化された。 POSIX.1 のデータ構造は System V 版と少し違いがある。 また、POSIX.1 は System V 版で存在した種々の ioctl (2) 操作を置き換える関数群を定義した (このようになったのは、 ioctl (2) が標準化されていなかったことと、 ioctl (2) の第三引 ... ができなかったのが理由である)。 "termio" という man page を探しているのであれば、 探している情報のほとんどは termios (3) か ioctl_tty (2) のどちらかで見つかることだろう。 関連項目 reset (1), setterm (1), stty (1), ioctl_tty (2), termios (3), tty (4) こ ... ... あり、 ネットワークにアクセスしたり、(時刻) データを手動で入力したりするだろう。 RTC の機能 RTC は hwclock (8) または下記の ioctl (2) リクエストで読み書きができる。 日付と時間をカウントするのに加えて、 多くの RTC は以下のように割り込みを発生できる。 * ... した割り込みの種別を コード化したビットマスクであり、 残りの 3 バイトは最後の read (2) 以降に発生した割り込みの回数である。 ioctl (2) インターフェース 以下の ioctl (2) リクエストが RTC デバイスの接続された ファイルディスクリプターに対して定義されている ... 造体のフィールドは gmtime (3) で説明されている tm 構造体のフィールドと同じ意味で同じ範囲である。 この構造体へのポインターを ioctl (2) の第 3 引数として渡す。 RTC_SET_TIME ioctl (2) の第 3 引数が指す rtc_time 構造体の値を RTC 時刻に設定する。 RTC 時刻の ... ... , void * data , size_t length ); int ioctl(int fd , DSP56K_UPLOAD, struct dsp56k_upload * program ); int ioctl(int fd , DSP56K_SET_TX_WSIZE, int wsize ); int ioctl(i ... nt fd , DSP56K_SET_RX_WSIZE, int wsize ); int ioctl(int fd , DSP56K_HOST_FLAGS, struct dsp56k_host_flags * flags ); int ioctl(int fd , DSP56K_HOST_CMD, int cmd ); 設定 dsp56k ... 使うこと。 ホスト側では、データは 8, 16, 24, 32 ビット単位で送受信できるが、 DSP56001 内では、24 ビット単位で扱われる。 次の ioctl (2) コールが dsp56k デバイスを制御するために使われる。 DSP56K_UPLOAD DSP56001 をリセットし、プログラムをアップロードする。 ... ... 端末が存在する場合、このデバイスファイルはプロセスの制御端末と 同じものを表す。 tty が参照しているデバイスがサポートしている ioctl (2) 要求に 加えて、 ioctl (2) 要求 TIOCNOTTY がサポートされている。 TIOCNOTTY 呼び出し元のプロセスをその制御端末から切り離 ... フォアグラウンドプロセスグループに送られ、 カレントセッションに属す全てのプロセスについて各々の制御端末が切り離される。 この ioctl (2) 呼び出しは /dev/tty に結びつけられたファイル ディスクリプターにのみ作用する。この機能は、ユーザーによって端末から 起動 ... に結びつけられていないのは明らかであり、自身を端末から切り離す 必要はない。 ファイル /dev/tty 関連項目 chown (1), mknod (1), ioctl (2), ioctl_console (2), ioctl_tty (2), termios (3), ttyS (4), vcs (4), pty (7), agetty (8), mingetty (8) この文書について ... ... が画面の左上) が先頭にある点が異なる。 512 文字から成るフォントをロードした場合、 9 ビット目の情報は /dev/tty[1-63] に対して ioctl (2) VT_GETHIFONTMASK 操作を行うことで取得できる ( VT_GETHIFONTMASK 操作はカーネル 2.6.18 以降の Linux で 利用可能である)。 ... 値は ioctl (2) の 3 番目の引数が指す unsigned short に格納されて返される。 これらのデバイスは ioctl_console (2) の screendump ioctl ( ... 1 2 3 4 5 6 7 8; do mknod -m 644 /dev/vcs$x c 7 $x; mknod -m 644 /dev/vcsa$x c 7 $[$x+128]; done chown root:tty /dev/vcs* ioctl (2) による要求はサポートされない。 ファイル /dev/vcs[0-63] /dev/vcsa[0-63] バージョン Linux カーネルバージョン 1.1.92 で導 ... ... が画面の左上) が先頭にある点が異なる。 512 文字から成るフォントをロードした場合、 9 ビット目の情報は /dev/tty[1-63] に対して ioctl (2) VT_GETHIFONTMASK 操作を行うことで取得できる ( VT_GETHIFONTMASK 操作はカーネル 2.6.18 以降の Linux で 利用可能である)。 ... 値は ioctl (2) の 3 番目の引数が指す unsigned short に格納されて返される。 これらのデバイスは ioctl_console (2) の screendump ioctl ( ... 1 2 3 4 5 6 7 8; do mknod -m 644 /dev/vcs$x c 7 $x; mknod -m 644 /dev/vcsa$x c 7 $[$x+128]; done chown root:tty /dev/vcs* ioctl (2) による要求はサポートされない。 ファイル /dev/vcs[0-63] /dev/vcsa[0-63] バージョン Linux カーネルバージョン 1.1.92 で導 ... ... ョンを参照する。 現在は、ブロックデバイスだけが提供されている。ローデバイス (raw device) はまだ実装されていない。 説明 次の ioctl が提供されている: HDIO_GETGEO 次のような構造体を用いて BIOS のディスクパラメーターを返す: struct hd_geometry { unsigned ch ... ar heads; unsigned char sectors; unsigned short cylinders; unsigned long start; }; この構造体へのポインターが ioctl (2) へのパラメーターとして渡される。 このパラメーターに入れられて返される情報は、 DOS によって理解されるような ドライブのジ ... 報が得られなければ、それぞれの値全てにゼロが入れ られて返される。 BLKGETSIZE セクタの数で表したデバイスのサイズが返される。 ioctl (2) のパラメーターは、 long へのポインターでなければならない。 BLKRRPART 強制的に、SCSI ディスクのパーティションテーブルの ... ... バイスを設定するために 用いるソケットインターフェースについて解説する。 Linux はネットワークデバイスを設定するための標準的な ioctl を いくつか備えている。これらはどんなソケットのファイルディスクリプターにも 用いることができる。ファミリーやタイプは何でも ... よい。 これらの ioctl のほとんどは ifreq 構造体を渡す。 struct ifreq { char ifr_name[IFNAMSIZ]; /* Interface name */ union { struct sockaddr ifr ... の指定は、 ifr_name にインターフェースの名前をセットすることによって行う。 他の構造体の全てのメンバは、メモリーを共有する。 ioctl 「特権が必要」と記述されている ioctl を実行するには、 実効ユーザー ID が 0 か、 CAP_NET_ADMIN 権限が必要である。これが満た ... 日本語の文書やマニュアルを配布している個人/プロジェクトへのリンクです。