[Gllug] User-mode Linux hosting

Nix nix at esperi.org.uk
Sat Mar 27 15:40:28 UTC 2004


On Thu, 25 Mar 2004, Bruce Richardson muttered drunkenly:
> Absolutely.  Inside a uml system you are entirely in control.  The uml
> binary pretends to be a kernel,

A UML binary really is a kernel. It's best considered to be a kernel
implemented for a platform which is itself another Linux kernel; i.e.,
it's sitting on a *really weird* machine. :)

(Plus of course it has specialized drivers to communicate with that
machine.)

>                                 passing most kernel calls back to the
> real kernel behind it.

Only a few syscalls are directly passed back to the host kernel. Many
lead to differnt syscalls in their own right (e.g. read() and write())
but many do not (umask(), chdir(), anything that just changes kernel
state).

>                         A typical uml set-up uses a loopback filesystem.

It can use

- ubd, the user block device, which is indeed a filesystem-in-a-file ---
  but does not use the loopback device driver, at least not while UML
  is running; it can CoW changes into another file, as well, so the
  original can be unwritable, immutable, on a read-only device, or all
  of the above :)

- hostfs, which lets you mount host filesystems directly inside the UML
  instance

- NFS or other distributed filesystems, via a network link with the
  outside world (said link requires TUN/TAP cooperation with the host
  and works particularly well if you can use bridging too; your UML
  instance can then look just like another box on the network.)

-- 
`The game proceeds with people picking up cards in turn, and every so
 often this is punctuated with a church council when everyone goes mad
 and starts yelling and playing cards at each other and persecuting and
 making deals.' --- Jo Walton on _Credo_
-- 
Gllug mailing list  -  Gllug at gllug.org.uk
http://lists.gllug.org.uk/mailman/listinfo/gllug




More information about the GLLUG mailing list