umlsim extends user-mode Linux
(UML) with an
event-driven simulation engine and other instrumentation needed for
deterministically controlling the flow of time as seen by the UML
kernel and applications running under it.
umlsim is currently under development, and will be useful for a wide
range of applications in research and kernel development, including
simulations involving the networking code, regression tests, proof of
race conditions, validation of configuration scripts, and also
performance analysis.
The umlsim package contains wrappers and modifications to the UML kernel
and to UML's user-space tools, and an environment for controlling
simulations. Simulations are described in a scripting language that
combines elements from C and Perl.
This project started in 2002 as a prototype study,
continued in 2003 as part of the
FAST project at
Caltech,
has then become one of my spare time activities,
and parts of it are currently being developed in a project for
Philips Research, Eindhoven.
|