Implementation of a Distributed Full-System Simulation Framework as a
Filesystem Server
Phillip Stanley-Marbell,
In
Proceedings of the International Workshop on the Plan 9 Operating System, IWP9 '06,
Madrid, December 2006.
ABSTRACT
Full-system simulation of systems comprising hundreds of microcontrollers,
at the level of instruction execution, along with simulation of
their peripherals, inter-device communication, power consumption
and the like, can be tasking even on high-end workstations. To
enable the partitioning of these simulations, which have a high
degree of coarse-grained parallelism, over a network of workstations,
a multi-platform simulation environment was implemented using the
Inferno system. The implementation enables the simulation engine,
written in ANSI C, and compiled as a library, to be linked against
the Inferno emulator with a custom device driver interface. Using
a glue application written in Limbo, and harnessing ideas from
parallel discrete-event simulation, the framework enables simulations
of networks of embedded systems to be partitioned across workstations
of heterogeneous architectures. This paper presents the distributed
simulation architecture, the design of the emulator device driver
(the interface to the simulation engine), the graphical interface
and glue application, and the packaging of the system as single-binary
modules for multiple platforms. Also presented is a step-by-step
guide for developers unfamiliar with Inferno for creating similar
systems.
[PDF], [BibTex], [Locate in chronological publications], [Locate in classified publications]
|