Implementation of a distributed full-system simulation framework as a filesystem server
Abstract
Full-system simulation of systems comprising hundreds of microcontrollers, at the level of in-struction 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 partition-ing 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 applica-tion 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 het-erogeneous 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.
Cite as:
P. Stanley-Marbell. “Implementation of a Distributed Full-System Simulation Framework as a Filesystem Server”. Proc. 1st International workshop on the Plan 9 Operating System, IWP9’06, 2006.
BibTeX:
@INPROCEEDINGS{Server06implementationof,
author = {Phillip Stanley-marbell},
title = {Implementation of a distributed full-system simulation framework as a filesystem server},
booktitle = {In Proceedings of the First International Workshop on Plan 9},
year = {2006}
}