© University of Kent - Contact | Feedback | Legal | Cookies
The University of Kent, Canterbury, Kent, CT2 7NZ, T +44 (0)1227 764000
Managed languages such as Java and C# are increasingly being considered for hard real-time applications because of their productivity and software engineering advantages. Automatic memory management, or garbage collection, is a key enabler for robust, reusable libraries, yet remains a challenge for analysis and implementation of real-time execution environments. This article comprehensively compares leading approaches to hard real-time garbage collection. There are many design decisions involved in selecting a real-time garbage collection algorithm. For time-based garbage collectors on uniprocessors one must choose whether to use periodic, slack-based or hybrid scheduling. A significant impediment to valid experimental comparison of such choices is that commercial implementations use completely different proprietary infrastructures. We present Minuteman, a framework for experimenting with real-time collection algorithms in the context of a high-performance execution environment for real-time Java. We provide the first comparison of the approaches, both experimentally using realistic workloads, and analytically in terms of schedulability.
Download publication 826 kbytes (PDF)
@article{3161,
author = {Tomas Kalibera and Filip Pizlo and Antony L. Hosking and Jan Vitek},
title = {Scheduling real-time garbage collection on uniprocessors},
month = {August},
year = {2011},
pages = {},
keywords = {},
note = {},
doi = {10.1145/2003690.2003692},
url = {http://www.cs.kent.ac.uk/pubs/2011/3161},
publication_type = {article},
submission_id = {22718_1316265473},
journal = {ACM Transactions on Computer Systems},
volume = {29},
number = {3},
}