Skip to Main content Skip to Navigation
Theses

Virtualization Support for Application Runtime Specialization and Extension

Guillermo Polito 1, 2
2 RMOD - Analyses and Languages Constructs for Object-Oriented Application Evolution
Inria Lille - Nord Europe, CRIStAL - Centre de Recherche en Informatique, Signal et Automatique de Lille - UMR 9189
Abstract : An application runtime is the set of software elements that represent an application during its execution. Application runtimes should be adaptable to different contexts. Advances in computing technology both in hardware and software indeed demand it. For example, on one hand we can think about extending a programming language to enhance the developers’ productivity. On the other hand we can also think about transparently reducing the memory footprint of applications to make them fit in constrained resource scenarios e.g., low networks or limited memory availability. We propose Espell, a virtualization infrastructure for object-oriented high-level language runtimes. Espell provides a general purpose infrastructure to control and manipulate object-oriented runtimes in different situations. A first-class representation of an object-oriented runtime provides a high-level API for the manipulation of such runtime. A hypervisor uses this first-class object and manipulates it either directly or by executing arbitrary expressions into it. We show with our prototype that this infrastructure supports language bootstrapping and application runtime tailoring. Using bootstrapping we describe an object-oriented high-level language initialization in terms of itself. A bootstrapped language takes advantage of its own abstractions and is easier to extend. With application runtime tailoring we generate specialized applications by extracting the elements of a program that are used during execution. A tailored application encompasses only the classes and methods it needs and avoids the code bloat that appears from the usage of third-party libraries and frameworks.
Document type :
Theses
Complete list of metadata

https://hal.inria.fr/tel-01251173
Contributor : Lse Lse <>
Submitted on : Thursday, January 7, 2016 - 10:45:15 AM
Last modification on : Thursday, March 4, 2021 - 6:20:02 PM
Long-term archiving on: : Friday, April 8, 2016 - 1:05:15 PM

Identifiers

  • HAL Id : tel-01251173, version 1

Citation

Guillermo Polito. Virtualization Support for Application Runtime Specialization and Extension. Programming Languages [cs.PL]. Universite des Sciences et Technologies de Lille, 2015. English. ⟨tel-01251173⟩

Share

Metrics

Record views

783

Files downloads

681