BDFLUSH(2) | Linux Programmer's Manual | BDFLUSH(2) |
名前
bdflush -バッファー・ダーティー・フラッシュ・デーモンを起動、フラッシュ、調整する書式
#include <sys/kdaemon.h>
int bdflush(int func, long *address);
int bdflush(int func, long data);
説明
注意: Linux 2.6 以降では、このシステムコールは非推奨であり、何も行わない。将来のカーネルのリリースで完全になくなる可能性が高い。現在は、 bdflush() が実行していた処理はカーネルの pdflush スレッドによって行われている。func が負か 0 でデーモンが起動されていなれば、 bdflush() はデーモンのコードへ入り、戻ってこない。
func が 1 ならば、汚れた (dirty) バッファーがディスクへと書き込まれる。
func が 2 以上で偶数 (最小ビットが 0) ならば、 address にロング・ワードでアドレスを指定し、そのアドレスに ( func-2)/2 で指定された調節パラメーターが返される。
func が 3 以上で奇数 (最小ビットが 1) ならば、 data をロング・ワードで指定し、その値を ( func-3)/2 で指定された調節パラメーターに設定する。
パラメーターの集合やその値、有効な範囲は Linux カーネルソースの fs/buffer.c に定義されている。
返り値
func が負か 0 で、デモーンの起動に成功した場合は bdflush() は返ってこない。そうでなければ成功した場合には 0 が返される。失敗した場合には-1 が返され、 errno にそのエラーが指示される。エラー
- EBUSY
- 他のプロセスが既にデーモン・コードに入っているのに、入ろうと試みた。
- EFAULT
- address がアクセス可能なアドレス空間の外部を指している。
- EINVAL
- 不正なパラメーターの読み書きを試みたか、パラメーターへ不正な値を書き込もうとした。
- EPERM
- 呼び出し元に CAP_SYS_ADMIN ケーパビリティがない。
準拠
bdflush() は Linux 特有であり移植を意図したプログラムで使用すべきではない。関連項目
fsync(2), sync(2), sync(8), update(8)この文書について
この man ページは Linux man-pages プロジェクトのリリース 3.51 の一部である。プロジェクトの説明とバグ報告に関する情報は http://www.kernel.org/doc/man-pages/ に書かれている。2012-03-05 | Linux |