KERNELD
Section: Linux Extensions (8)
Updated: May 14, 1995
Index
JM Home Page
roff page
名前
kerneld - ユーザ空間でカーネルの動作を実行する (モジュールのオンデマンドロードなど)
警告
kerneld
は Linux カーネル 2.1.90 の時点で obsolete となり、
kmod カーネルスレッドと cron エントリによって置き換えられた。
2.0 カーネルを使っているのでなければ、
kerneld は使おうなどとも思わないほうがよい。
書式
kerneld
[ debug ] [ keep ] [ delay=<seconds> ] [ type=<message number> ]
説明
kerneld
は未使用モジュールを自動削除するほか、
専用の IPC メッセージキューを経由してカーネルからのリクエストに応答し、
カーネルの特定のタスクをユーザ空間で実行する。
ユーザ空間からこのキューへのアクセスは、
以下の操作でキューをオープンすることによって行える:
qid = msgget(IPC_PRIVATE, 0600 | IPC_KERNELD);
各タスクはメッセージタイプを使ってリクエストする。
これは <linux/kerneld.h> で指定されている。
kerneld メッセージの構造体は以下の通り。
struct kerneld_msg {
long mtype;
long id;
char text[1];
};
ここで id フィールドは kerneld
からカーネルへの応答メッセージの数として使われる。
id フィールドが 0 ならば、kerneld からの応答はないということである。
(なお、要求側の pid をプロトコルヘッダに入れる、
新しい構造体が提案されている。)
応答が求められた場合には、kerneld の動作の終了ステータスが
id フィールドに格納される。
text フィールドは、特定の kerneld 動作に
カーネルから渡されたパラメータを保持するために使われる。
オプションを以下に示す:
- debug
-
デバッグ機能を有効にすると、タスクを実行する度に
kerneld の現在のステータスを見ることができるようになる。
デバッグ機能や他の全てのパラメータの制御は
kdstat ユーティリティで行える。
- keep
-
keep オプションを指定すると kerneld
はアンロード中のモジュールに対する全てのリクエストを無視する。
このオプションは、(何らかの理由で)
モジュールがアンロードされることが全く起こらないシステムでは
役立つかもしれない。
このオプションは、毎分 (あるいは <delay> 秒ごとに)
実行される未使用のモジュールの自動削除も禁止する。
- delay=<seconds>
-
delay オプションは未使用モジュールの削除に関する
kerneld のタイムアウト時間を変更する。
デフォルトの 60 秒から任意の時間に変更できる。
- type=<message type>
-
デフォルトのタイプは -255 である。これは、kerneld がタイプの値が 255
以下である全てのメッセージを監視するという意味である。
正の数を指定すると、kerneld は指定されたタイプのメッセージだけを監視する。
kerneld はエラーメッセージを syslog の
LOG_DAEMON ファシリティに送る。
関連項目
insmod(8),
rmmod(8),
modprobe(8),
depmod(8),
syslogd(8)
履歴
kerneld のアイディアは Jacques Gelinas <jack@solucorp.qc.ca>
との議論から思い付いた。
Index
- 名前
-
- 警告
-
- 書式
-
- 説明
-
- 関連項目
-
- 履歴
-
This document was created by
man2html,
using the manual pages.
Time: 16:46:44 GMT, November 24, 2023