[Exim-dev] Exim testing: User Mode Linux and umlsim

Top Page
Delete this message
Reply to this message
Author: Philip Hazel
Date:  
To: exim-dev
Subject: [Exim-dev] Exim testing: User Mode Linux and umlsim
I'm posting this for everyone's information:

I've been doing some experiments with "User Mode Linux" (UML) which is a
way of running Linux under Linux in a virtual machine. [*]

Building a UML kernel is much the same as building a normal kernel. Then
you have to create a root file system for it to use, built inside a
single external file. (Ditto for its swap.)

I found some Gentoo-specific instructions (it's much the same as when
installing Gentoo, in fact) and without too much trouble I managed to
set up Gentoo Linux running a 2.6 kernel in a virtual machine under my
2.4-kerneled workstation. The virtual machine uses the real machine as a
NAT box to talk to the world. You run it as a normal user (no privilege
needed), and the n consoles appear as xterms. Of course, you can have
root in the virtual machine without having it in the real machine.

So far, so good. I haven't installed Exim in the virtual system yet, but
I have no doubt it would be straightforward. Using such a system would
mean that we could allow those who do not have root on the sesame system
to have root in a virtual world, in order to run Exim tests, if we
wanted to. It would be easy to keep a "clean" copy of the file system
from which to "refresh" a virtual host.

However, UML runs in real time (but slowed down at times, of course);
those Exim tests that depend on timing will be just as flaky as they are
on a real box.

Therefore, I investigated umlsim, a simulator that can run UML with a
virtual clock. However, this seems to be very new technology, and it
isn't really "there" yet. Furthermore, the documentation is far from
complete, which means I don't fully grasp all that it does or can do. I
think we will have to wait and look at umlsim again in 6-12 months.

Philip

----------
[*] This caused a heavy case of double nostalgia: (1) "UML" always stood
for "University Mathemetical Laboratory", the original name for what
became the Computer Laboratory. (2) We used to run virtual machines on
our IBM mainframes until about 10 years ago.

-- 
Philip Hazel            University of Cambridge Computing Service,
ph10@???      Cambridge, England. Phone: +44 1223 334714.