BDFLUSH
Section: Linux Programmer's Manual (2)
Updated: 2016-10-08
Index
Return to Main Contents
名前
bdflush - バッファーダーティーフラッシュデーモンを起動、フラッシュ、調整する
書式
#include <sys/kdaemon.h>
int bdflush(int func, long *address);
int bdflush(int func, long data);
説明
注意: Linux 2.6 以降では、このシステムコールは非推奨であり、何も行わない。
将来のカーネルのリリースで完全になくなる可能性が高い。現在は、bdflush() が
実行していた処理はカーネルの pdflush スレッドによって行われている。
bdflush() はバッファーダーティーフラッシュ (buffer-dirty-flush) デーモン (daemon) を起動、フラッシュ
(flush)、調整 (tune) する。 (CAP_SYS_ADMIN ケーパビリティ (capability) を持つ) 特権プロセスのみが
bdflush() を呼び出すことができる。
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 ケーパビリティがない。
バージョン
バージョン 2.23 以降で、glibc はこの古いシステムコールをサポートしていない。
準拠
bdflush() は Linux 特有であり移植を意図したプログラムで使用すべきではない。
関連項目
sync(1),
fsync(2),
sync(2)
この文書について
この man ページは Linux man-pages プロジェクトのリリース 5.07 の一部である。
プロジェクトの説明、バグ報告に関する情報、このページの最新版は、
http://www.kernel.org/doc/man-pages/ に書かれている。
Index
- 名前
-
- 書式
-
- 説明
-
- 返り値
-
- エラー
-
- バージョン
-
- 準拠
-
- 関連項目
-
- この文書について
-
This document was created by
man2html,
using the manual pages.
Time: 23:55:53 GMT, January 01, 2021