tail head cat sleep
QR code linking to this page

Manual Pages  — KERNACC


kernacc, useracc – check memory regions for accessibility



#include <sys/param.h>
#include <sys/proc.h>
#include <vm/vm.h>
#include <vm/vm_extern.h>

kernacc(void *addr, int len, int rw);

useracc(void *addr, int len, int rw);


The kernacc() and useracc() functions check whether operations of the type specified in rw are permitted in the range of virtual addresses given by addr and len. The possible values of rw are any bitwise combination of VM_PROT_READ, VM_PROT_WRITE and VM_PROT_EXECUTE. kernacc() checks addresses in the kernel address space, while useracc() considers addr to represent an user space address. The process context to use for this operation is taken from the global variable curproc.


Both functions return boolean true if the type of access specified by rw is permitted. Otherwise boolean false is returned.


The process pointer should be passed in as an argument to useracc().

KERNACC (9) June 16, 1996

tail head cat sleep
QR code linking to this page

Please direct any comments about this manual page service to Ben Bullock. Privacy policy.

On two occasions I have been asked [by members of Parliament], 'Pray, Mr. Babbage, if you put into the machine wrong figures, will the right answers come out?' I am not able rightly to apprehend the kind of confusion of ideas that could provoke such a question.
— Charles Babbage