Application-Level Virtual Memory for Object-Oriented Systems
type: Dataset
description: During the execution of object-oriented applications, several millions of objects are created, used and then collected if they are not referenced. Problems appear when objects are unused but cannot be garbage-collected because they are still referenced from other objects. This is an issue because those objects waste primary memory and applications use more primary memory than what they actually need. We claim that relying on operating systems (OS) virtual memory is not always enough since it is completely transparent to applications. The OS cannot take into account the domain and structure of applications. At the same time, applications have no easy way to control nor influence memory management. In this dissertation, we present Marea, an efficient application-level virtual memory for object-oriented programming languages. Its main goal is to offer the programmer a novel solution to handle application-level memory. Developers can instruct our system to release primary memory by swapping out unused yet referenced objects to secondary memory. Marea is designed to: 1) save as much memory as possible i.e., the memory used by its infrastructure is minimal compared to the amount of memory released by swapping out unused objects, 2) minimize the runtime overhead i.e., the swapping process is fast enough to avoid slowing down primary computations of applications, and 3) allow the programmer to control or influence the objects to swap. Besides describing the model and the algorithms behind Marea, we also present our implementation in the Pharo programming language. Our approach has been qualitatively and quantitatively validated. Our experiments and benchmarks on real-world applications show that Marea can reduce the memory footprint between 25% and 40%.
issued: 2026-05-31T05:32:45.282492
language: en
modified: 2026-05-31T05:32:45.282691
contact point: Organization
  fn: CCSD
keyword: infoeu-reposemanticsdoctoralthesis
keyword: infoinfo-dlcomputer-science-csdigital-libraries-csdl
keyword: infoinfo-plcomputer-science-csprogramming-languages-cspl
keyword: infoinfo-secomputer-science-cssoftware-engineering-csse
keyword: memoire-virtuelle
keyword: object-faulting
keyword: object-swapping
keyword: objets-inutilises
keyword: programmation-orientee-objet
keyword: proxies
keyword: serialisation
keyword: serialization
keyword: theses
keyword: unused-objects
keyword: virtual-memory
landing page: https://theses.hal.science/tel-00764991

Application-Level Virtual Memory for Object-Oriented Systems
type: Distribution
format: HTML
issued: 2026-05-31T05:33:13.835843
modified: 2026-05-31T05:32:45.242305
access URL: https://theses.hal.science/tel-00764991

test_moissonnage_selune
type: Agent