MicroVM: Micro Virtual Machines for Managed Languages — Abstraction, contained
Principal Investigator: Antony Hosking
The project will define, develop, evaluate, and refine the essential components of a new foundation layer for managed language implementation. In doing so, it will address a key source of systemic inefficiency, by pioneering the micro virtual machine (μVM) as an efficient high-performance substrate for managed language implementation. The relationship between a μVM and existing managed language implementations is analogous to the one between an operating system micro kernel and monolithic operating systems such as Linux. A μVM captures the insight that there exists a well-defined foundation common to most modern languages that can take responsibility for fundamental abstractions over hardware, concurrency, and memory. By isolating and exposing this substrate, a μVM embodies state-of-the-art base technology available to language implementers while isolating them from the pernicious complexities of these abstractions, freeing them to focus on all-important language-specific optimizations. This project will enable more efficient, reliable, and verifiable software, and a distinctly sharper focus for language implementation research and development.