An Introduction to Real-Time Java Technology: Part 2, Garbage Collection and the Sun Java Real-Time System (Java RTS)
Source: Sun Microsystems
Because Garbage Collection (GC) is one of the largest sources of unpredictability in Java applications, a real-time Virtual Machine (VM) must find a way to prevent collection pauses from causing tasks to miss their deadlines. However, it should be noted that the RTSJ does not define real-time GC. There are several different approaches to scheduling GC within a real-time environment, each with benefits and weaknesses. These include work-based and time-based incremental collection approaches, which are aimed at minimizing the effect of GC on scheduling. Although both processes reduce the duration and improve the predictability of specific pauses, they can be difficult to use and to tune, which limits their reliability for hard-real-time use.