VSLOCK(9)

名称
vslock, vsunlock - ユーザ空間のアドレスのメモリへのロックとアンロック

書式
<sys/param.h> <sys/proc.h> <vm/vm.h> <vm/vm_extern.h> void vslock(void *addr, u_int len) void vsunlock(void *addr, u_int len)

解説
vslock() および vsunlock() 関数は現在実行中のプロセスに属するアドレスの範囲を メモリ中にそれぞれロックしたりアンロックしたりします。 ロックされる実際のメモリ量はマシンのページサイズの倍数になります。 開始ページナンバーは addr をすぐ前のページ境界に切りつめられ、終了ページは addr + len の次のページ境界に切り上げられて計算されます。 この操作に使用されるプロセスのコンテキストはグローバル変数 curproc を参照します。

関連項目
physio(9)

バグ
引数としてプロセスのポインタを渡すべきです。