PyGirl Generating Whole-System VMs from high-level models using PyPy

Bruni, Camillo; Verwaest, Toon; Denker, Marcus (2009). PyGirl Generating Whole-System VMs from high-level models using PyPy Bern: Institut für Informatik und angewandte Mathematik (IAM)

[img] Text
Brun09aPyGirlTechreport.pdf - Published Version
Restricted to registered users only
Available under License Publisher holds Copyright.

Download (646kB)

Virtual machines emulating hardware devices are generally implemented in low-level languages and using a low-level style for performance reasons. This trend results in largely difficult to understand, difficult to extend and unmaintainable systems. As new general techniques for virtual machines arise, it gets harder to incorporate or test these techniques because of early design and optimization decisions. In this paper we show how such decisions can be postponed to later phases by separating virtual machine implementation issues from the high-level machine-specific model. We construct compact models of whole-system VMs in a high-level language, which exclude all low-level implementation details. We use the pluggable translation toolchain PyPy to translate those models to executables. During the translation process, the toolchain reintroduces the VM implementation and optimization details for specific target platforms. As a case study we implement an executable model of a hardware gaming device. We show that our approach to VM building increases understandability, maintainability and extendability while preserving performance.

Item Type:

Report (Report)

Division/Institute:

08 Faculty of Science > Institute of Computer Science (INF)
08 Faculty of Science > Institute of Computer Science (INF) > Software Composition Group (SCG) [discontinued]

UniBE Contributor:

Verwaest, Toon Wim Jan, Denker, Marcus

Publisher:

Institut für Informatik und angewandte Mathematik (IAM)

Language:

English

Submitter:

Factscience Import

Date Deposited:

04 Oct 2013 15:22

Last Modified:

05 Dec 2022 14:25

Additional Information:

Technischer Bericht IAM-09-002 vom 21. Januar 2009

BORIS DOI:

10.7892/boris.37147

URI:

https://boris.unibe.ch/id/eprint/37147 (FactScience: 206957)

Actions (login required)

Edit item Edit item
Provide Feedback