Ninth IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC'06) (2006)
Apr. 24, 2006 to Apr. 26, 2006
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/ISORC.2006.21
Shahrooz Feizabadi , Virginia Tech, USA
Godmar Back , Virginia Tech, USA
Convenience, reliability, and effectiveness of automatic memory management have long been established in modern systems and programming languages such as Java. The timeliness requirements of real-time systems, however, impose specific demands on the operational parameters of the garbage collector. The memory requirements of real-time tasks must be accommodated with a predictable impact on the timeline, and under the purview of the scheduler. <p>Utility Accrual is a method of dynamic overload scheduling that is designed to respond to CPU overload conditions by producing a schedule that heuristically maximize a predefined metric of utility. There also exists in such systems the possibility of memory overload situations in which the cumulative memory demand exceeds the amount of memory available.</p> <p>This paper presents a utility accrual algorithm for uniprocessor CPU and garbage collection scheduling that addresses memory overload conditions. By tightly linking CPU and memory allocation, the scheduler can appropriately respond to overload along both dimensions. This scheduler is the first of its kind to enable the use of automatic memory management in a utility accrual system. Experimental results using actual Java application profiles indicate the viability of this model.</p>
S. Feizabadi and G. Back, "Automatic Memory Management in Utility Accrual Scheduling Environments," Ninth IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC'06)(ISORC), Gyeongju, Korea, 2006, pp. 11-19.