Fwd: Creating a "new" virtual address space for a process

Pranav Sawargaonkar pranav.sawargaonkar at gmail.com
Mon Jan 22 06:58:02 UTC 2007


---------- Forwarded message ----------
From: Pranav Sawargaonkar <pranav.sawargaonkar at gmail.com>
Date: Jan 22, 2007 12:27 PM
Subject: Re: Creating a "new" virtual address space for a process
To: Joe Damato <jdamato at andrew.cmu.edu>



On 1/22/07, Joe Damato <jdamato at andrew.cmu.edu > wrote:
>
> Hello -
>
> >This is my first time posting to the list, so please let me know if I
> >should expand on anything I mention here. I am working on the S4OS
> >project for FreeBSD with a couple friends and we are currently trying to
> >understand how to use the VM system in FreeBSD.
>
> >We have a process, (in this case it happens to be curproc or proc0), and
> >we would like to create a new virtual address space and allocate, say N
> >pages starting at address X.

   To allocate new vmspace and vm_map you can use vmspace_fork() defined in
vm/vm_map.c.


We have been reading the fork() code to try
> >to see how this would work, but got lost in some of the COW stuff.
>
> >We have some kernel data that needs to be copied out to userland, but we
> >can't seem to figure out how to actually set up that virtual address
> >space. I would attach a code snippet of the code we wrote to accomplish
> >this, but it is literally all guess work, and probably completely wrong.
> >Anyone know how to do this or even where to look to see an example of
> >this happening?
>
> >Thanks,
> >Joe
> _______________________________________________
> freebsd-hackers at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
> To unsubscribe, send any mail to " freebsd-hackers-unsubscribe at freebsd.org
> "
>


More information about the freebsd-hackers mailing list