Browse > Article

Java Garbage Collection for a Small Interactive System  

권혜은 (세명대학교 대학원 전산정보학과)
김상훈 (세명대학교 컴퓨터정보학부)
Abstract
Garbage collection in the CLDC typically employs a stop-the-world GC algorithm which is performing a complete garbage collection when needed. This technique is unsuitable for the interactive Java embedded system because this can lead to long and unpredictable delays. In this paper, We present a garbage collection algorithm which reduces the average delay time and supports the interactive environment. Our garbage collector is composed of the allocator and the collector. The allocator determines the allocation position of free-list according to object size, and the collector uses an incremental mark-sweep algorithm. The garbage collector is called periodically by the thread scheduling policy and the allocator allocates the objects of marked state during collection cycle. Also, we introduce a color toggle mechanism that changes the meaning of the bit patterns at the end of the collection cycle. We compared the performance of our implementation with stop-the-world mark-sweep GC. The experimental results show that our algorithm reduces the average delay time and that it provides uniformly low response times.
Keywords
CLDC; java; programming language; garbage collection; mark-sweep garbage collection; incremental garbage collection; CLDC;
Citations & Related Records
연도 인용수 순위
  • Reference
1 Shogo Matsui, Yoshio Tanaka, Atsushi Maeda, Masakazu Nakanishi, 'Complementary Garbage Collector,' The Transactions of Information Processing Society of Japan, Vol.36, No.8, pp. 1874-1884, 1995
2 Paul R. Wilson, Mark S. Johnstone, Michael Neely, David Boles, 'Dynamic Storage Allocation: A Survey and Critical Review,' Proceedings of International Workshop on Memory Management, Lecture Notes in Computer Science, Vol.986, pp. 1-116, 1995   DOI   ScienceOn
3 Tuning Garbage Collection with the 1.3.1 Java Virtual Machine, http://java.sun.com/docs/hotspot/gc
4 James Gosling, Henry McGilton, The Java Language Environment a White Paper, Sun Microsystems, 1996
5 Sun Microsystems, Java 2 Platform Micro Edition(J2ME) Technology for Creating Mobile Devices White Paper, Sun Microsystems, 2000
6 Sun Microsystems, Connected, Limited Device Configuration Specification Version 1.0a Java 2 Platform Micro Edition, Sun Microsystems, 2000
7 Perry Cheng, Guy E. Blelloch, 'A Parallel, Real-Time Garbage Collector,' ACM SIGPLAN Conference on Programming Design and Implementation, pp. 125-136, 2001
8 Tim Lindholm, Frank Yellin, The Java Virtual Machine Specification Second Edition, Addison Wesley, 1999
9 Paul. R. Wilson, 'Uniprocessor Garbage Collection Techniques,' Technical report, University of Texas, Jan 1994. Expanded version of the IWMM92 paper
10 Roger Henriksson, Scheduling Garbage Collection in Embedded Systems, PhD thesis, Lund University, 1998
11 Sun Microsysterns, The HotSpot Virtual Machine Technical White Paper, Sun Microsystems, 2001
12 Jacob Seligmann, Steffen Grarup, 'Incremental Mature Garbage Collection Using the Train Algorithm,' In European Conference on Object-Oriented Programming. Springer-Verlag, pp. 235252, 1995
13 Frank Yellin, Inside the The K Virtual Machine (KVMl, http://servlet.java.sun.com/javaone/javaone2000/pdfs/TS-1507.pdf, 2000
14 William M. Newman, Michael G. Lamming, Interactive System DESIGN, Addison-Wesley, 1995
15 Tamar D., Elliot K. K., Ethan L. Eliot E. S., Katherine B., Itai L., Erez P., Igor Y. Yossi L., 'Implementing an On-the-fly Garbage Collector for Java,' Proceedings of the ACM SIGPLAN Symposium on Memory Management, pp. 155-166, 2000   DOI