One advantage of using a virtual platform over real hardware for
embedded software development and testing is the ability of some
simulators to take checkpoints of their state. If the entire system
model is detailed enough, it might take several minutes (or hours) to
simulate booting the O.S. If a snapshot of the simulation is saved just
after it has finished booting, each time it is necessary to run the
embedded software, designers can simply restore the snapshot and go.
Restarting a checkpoint typically takes a few seconds. In this book we
present our work on adding a description level language as SystemC to
two Virtual Platforms. This work was done for a commercial Virtual
Platform, and later translated to a open-sourced Platform. This book
also presents a set of modifications to SystemC language to support
checkpointing. These modifications will make it possible to take the
state of a SystemC running simulation and save it to disk. Later, the
same simulation can be restored to the same point it was before, without
any change to the simulated modules. These changes would help SystemC to
be suitable for use by Virtual Platforms as a description language.