Jeff Dike wrote:

On Wed, May 04, 2005 at 10:28:28AM +0100, Ian Rogers wrote:


What I'm hoping to do is to use SKAS to create a second address space I can, map, unmap, peek and poke from the first. The reason for this is to allow an emulator to live in the first address space and the emulated data... to live in the second.


UML obviously does this. Look at arch/um/kernel/skas/mem_user.c for the
basic primitives. The creation and destruction of address spaces is done
in arch/um/kernel/skas/mmu.c.


I've had a play with a simple test, but I need to work further on it. mem_user.c seems clear enough but I am slightly baffled by what is happening with the file descriptors in mmu.c.



I hope to be able to access the second by altering the i386 selector value.



What's the i386 selector value?


I hope, for example, to set LDT 0 to point to the second address space. I can then swap the value of 7 (index 0, LDT, ring 3) into fs or gs whenever I hope to address the second address space. I can do similar code with modify_ldt but I'm restricted to using mmap to allocate memory and therefore I don't get a fully addressable 4gb address space.

Thanks for your help,

Ian Rogers



-------------------------------------------------------
This SF.Net email is sponsored by: NEC IT Guy Games.
Get your fingers limbered up and give it your best shot. 4 great events, 4
opportunities to win big! Highest score wins.NEC IT Guy Games. Play to
win an NEC 61 plasma display. Visit http://www.necitguy.com/?r=20
_______________________________________________
User-mode-linux-devel mailing list
User-mode-linux-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel

Reply via email to