map share memory to kernel space

beezarliu beezarliu at yahoo.com.cn
Tue Feb 15 03:26:37 UTC 2011


On 2011-02-14 22:56:28, John Baldwin wrote:
>On Monday, February 14, 2011 4:18:50 am beezarliu wrote:
>> Hackers,
>> 
>> I want to access a userland share memory in a kernel thread. 
>> So I tried to map the share memory to the kernel space. 
>> The basic idea is to map the shm_object into kernel_map
>> when the share memory is created.
>> 
>> Using the following patch, I found the vm_object in kernel_map,
>> and the vm_object in the address space of userland process are the same.
>> But their content in the kernel and userland address mapped are different.
>> 
>> It's very strang since they are exactly the same vm_object.
>> Do I miss something, please help.
>
>Hmm, this is a bit of code I use for something similar to map a VM object into 
>the kernel.  It does not use vm_page_grab() directly though:


Initially, I wanted to allocate all the pages needed when the share memory is created,
in order to reduce page fault at the time it's used.
This seems to be an extra step.  :(

John, thank you very much!

Beezar


__________________________________________________
赶快注册雅虎超大容量免费邮箱?
http://cn.mail.yahoo.com


More information about the freebsd-hackers mailing list