How to access kernel memory from user space

Roman Divacky rdivacky at freebsd.org
Tue Dec 23 01:06:57 PST 2008


On Mon, Dec 22, 2008 at 06:05:34PM -0600, Gerry Weaver wrote:
> Hello All,
> 
> I am working on a driver that collects various network statistics via pfil. I have a simple array of structures that I use to store the statistics. I also have a user space process that needs to collect these statistics every second or so. A copy operation from kernel to user space would be too expensive. Is there a mechanism that would allow me to gain direct access to my kernel array from user space? The user process would only need read access. It seems like maybe this could be done with mmap, but since this is not a character driver, there is no device file etc.. I'm a newbie, so I apologize if this is something that should be obvious.

would it be feasible to allocate a buffer in userspace and map it into the kernelspace?
if so, I believe sf_buf (man 9 sf_buf) should work


   roman


More information about the freebsd-hackers mailing list