TY - JOUR
T1 - Scheduling real-time garbage collection on uniprocessors
AU - Kalibera, Tomas
AU - Pizlo, Filip
AU - Hosking, Antony L.
AU - Vitek, Jan
PY - 2011/8
Y1 - 2011/8
N2 - 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.
AB - 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.
KW - Joint scheduling
KW - Real-time garbage collection
UR - http://www.scopus.com/inward/record.url?scp=80052354777&partnerID=8YFLogxK
U2 - 10.1145/2003690.2003692
DO - 10.1145/2003690.2003692
M3 - Article
SN - 0734-2071
VL - 29
JO - ACM Transactions on Computer Systems
JF - ACM Transactions on Computer Systems
IS - 3
M1 - 8
ER -