VM_MAP_FINDSPACE(9) | FreeBSD Kernel Developer's Manual | VM_MAP_FINDSPACE(9) |
名称
vm_map_findspace — マップ中で空きの領域を見つけます書式
#include < sys/param.h>#include < vm/vm.h>
#include < vm/vm_map.h>
int
vm_map_findspace( vm_map_t map, vm_offset_t start, vm_size_t length, vm_offset_t *addr);
解説
vm_map_findspace() 関数は、アドレス addr でオブジェクトサイズ length の map 中の十分な空間でリージョン (領域) を見つけることを試みます。実装に関する注
この関数を呼び出す前に vm_map_lock(9) を使用して map のロックを取得することは呼び出し側の責任です。不十分な空間が kernel_map に残っているなら、マッピングがカーネルアドレス空間で行われる場合かつその場合に限り、このルーチンは、カーネルのアドレス空間を育てるために pmap_growkernel(9) と呼び出します。
戻り値
vm_map_findspace() 関数は成功すれば、値 0 を返し、 *addr は見つかったリージョン (領域) 中の最初の仮想アドレスを含みます。そうでなければ、値 1 が返されます。作者
このマニュアルページは、 <bms@spc.org>によって書かれました。July 19, 2003 | FreeBSD |