スポンサーリンク

SYSCALL_MODULE(9) FreeBSD カーネル開発者マニュアル SYSCALL_MODULE(9)

名称

SYSCALL_MODULE − syscall カーネルモジュール宣言マクロ

書式

#include <sys/param.h>
#include <sys/kernel.h>
#include <sys/proc.h>
#include <sys/module.h>
#include <sys/sysent.h>

SYSCALL_MODULE(name, int *offset, struct sysent new_sysent, modeventhand_t evh, void *arg);

解説

SYSCALL_MODULE() マクロは新しい syscall を宣言します。 SYSCALL_MODULE() は name という名前のカーネルモジュールの宣言に展開されます。

このマクロで要求される残りの引数は以下の通りです。

       offset

syscall が割り付ける struct sysent 中のオフセットを保存する int へのポインタ。

new_sysent
syscall を実装する関数およびこの関数が必要とする引数の数 (<sys/sysent.h> 参照)。

evh
引数 arg を取るカーネルモジュールのイベントハンドラ関数へのポ インタ。詳細については module(9) を参照してください。

arg
それが呼び出されるとき、 evh イベントハンドラのコールバック関 数へ渡される引数。

使用例

syscall モジュールのための最低限の例が、 /usr/share/examples/kld/syscall/module/syscall.c の中に見つけられます。

関連項目

module(9)

/usr/share/examples/kld/syscall/module/syscall.c

作者

このマニュアルページは Alexander Langer ⟨alex@FreeBSD.org⟩ によって書かれ ました。

FreeBSD 10.0 January 7, 2005 FreeBSD 10.0

スポンサーリンク