On Tue, May 27, 2014 at 3:58 PM, Sébastien Frémal <sebastien.fre...@gmail.com> wrote: > Hello, > > I'm a PhD Student studying virtualization methods. I found an article on UML > explaining how it works in TT mode > (https://www.kernel.org/doc/ols/2001/uml.pdf). > > I read that there is now a skas mode fixing security and performance issuses > of the TT mode (http://user-mode-linux.sourceforge.net/old/skas.html), but I > don't find informations on how it works. It seems that the tracing thread > doesn't exist in skas mode. I'm searching informations on how this system > works, especially how system calls are virtualized. Is this information > available somewhere ?
Feel free to ask me whatever you want to know. SKAS means "Separated Kernel Address Space". It ensures that userspace cannot access kernel memory. The first version of SKAS was SKAS3 it needed a kernel patch on the host side which never went mainline. There was also an attempt to make SKAS mainline ready, SKAS4. Then the UML developers found a way to implement SKAS without patching the host kernel, SKAS0. Currently UML supports SASK0 and SKAS3. But I bet SKAS3 support is broken as nobody uses it anymore. I'll remove it soon. In SKAS0 every guest process has a twin on the host side. If the UML kernel wants to change a memory mapping of a process it has to do it within the guest process on the host. This mechanism is done using the stub pages. The kernel owns two pages within every guest process and can execute code as the guest. Of course UML has to make sure that no guest process every can control its stub pages, otherwise it could break out. System call visualization on UML is done using ptrace(). UML is basically system call emulator. It uses ptrace() to make every system call void and emulates it. -- Thanks, //richard ------------------------------------------------------------------------------ Time is money. Stop wasting it! Get your web API in 5 minutes. www.restlet.com/download http://p.sf.net/sfu/restlet _______________________________________________ User-mode-linux-devel mailing list User-mode-linux-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel