Abstract
Programs with complex data structures often require dynamic memory management based on automatic memory reclamation (garbage collection). A major problem in adopting garbage collection for embedded real-time systems is that it often causes unpredictable pauses and that, as a result of such delays, hard real-time tasks may miss their deadlines. In this paper, we propose a new real-time garbage collection technique for embedded applications. In our approach, the system jointly schedules garbage collector and hard real-time tasks using one of the aperiodic server approaches. Our study focuses on reducing memory requirements while guaranteeing the deadlines of hard real-time tasks. To achieve this objective, we model garbage collection requests as aperiodic hard real-time tasks, and schedule them using the sporadic server (SS). We also present an effective live-memory analysis to bound the worst-case garbage collection time. Performance analysis shows that the proposed approach considerably reduces the worst -case memory reservation compared with a background policy. The analytic results are verified by simulation based on trace-driven data.
Original language | English |
---|---|
Pages (from-to) | 247-260 |
Number of pages | 14 |
Journal | Journal of Systems and Software |
Volume | 58 |
Issue number | 3 |
DOIs | |
State | Published - 15 Sep 2001 |
Keywords
- Embedded systems
- Garbage collection
- Live-memory analysis
- Scheduling
- Sporadic server