On Thu, Dec 14, 2006 at 02:25:23PM +0200, Constantine Kousoulos wrote:
> Can you supply me with more info (docs, urls, directions to source
> code, etc) on what needs to be done in order to accomplish the
> port? Technical details would really help me discover if uml can
> actually be ported to the Hurd.
There's no documentation to speak of wrt to an OS port. There is some
outdated architecture porting information at
http://user-mode-linux.sourceforge.net/arch-port.html, some of which
Here's a little list off the top of my head, for a skas-like mode -
interception and nullification of another process system calls
ability to change memory mappings of another process
interception and nullification of signals received by another
If you can handle those, you are probably in good shape.
If you can't do the second two, then a tt-like mode might be possible,
where you map the UML kernel into every UML process address space.
Then those become trivial since "the other process" is a UML process.
However, in this case, there are other nasty tricks needed, like
making sure that the host processes have different address spaces, but
the UML portions are shared. The kernel data obviously needs to be
shared across all processes.
Look at the interface declared in arch/um/include/os.h and defined in
arch/um/os-Linux/. It's probably unnecessarily wide at this point,
and contains Linux-isms which shouldn't be there, but that's my
current stab at an OS abstraction interface.
Work email - jdike at linux dot intel dot com