Browse > Article

An Explicit Dynamic Memory Management Scheme in Java Run-Time Environment  

배수강 (경희대학교 컴퓨터공학과)
이승룡 (경희대학교 컴퓨터공학과)
전태웅 (고려대학교 컴퓨터정보학과)
Abstract
The objects generated by the keyword new in Java are automatically managed by the garbage collector Inside Java Virtual Machine (JVM) not like using the keywords free or delete in C or C++ programming environments. This provides a means of freedom of memory management burden to the application programmers. The garbage collector however. inherently has its own run time execution overhead. Thus it causes the performance degradation of JVM significantly. In order to mitigate the execution burden of a garbage collector, we propose a novel way of dynamic memory management scheme in Java environment. In the proposed method, the application programmers can explicitly manage the objects In a simple way, which in consequence the run-time overhead can be reduced while the garbage collector is under processing. In order to accomplish this, Java application firstly calls the APIs that arc implemented by native Jana, and then calls the subroutines depending on the JVM, which in turn support to keep the portability characteristic Java has. In this way, we can not only sustain the stability in execution environments. but also improve performance of garbage collector by simply calling the APIs. Our simulation study show that the proposed scheme improves the execution time of the garbage collector from 10.07 percent to 52.24 percent working on Mark-and-Sweep algorithm.
Keywords
Dynamic memory management; Garbage collection; Java virtual machine; Java;
Citations & Related Records
연도 인용수 순위
  • Reference
1 Kaffe.org, Kaffe Java Virtual Machine, http://www.transvirtual.com;http://www.kaffe.org
2 Paul R. Wilson, Mark S. Johnstone, Michael Neely and David Boles, 'Dynamic Storage Allocation: A Survey and Critical Review.' International Workshop on Memory Management, Lecture Notes in Computer Science, Vol.986, pp.1-116, 1995
3 Paul R. Wilson 'Uniprocessor Garbage Collection Techniques.' In Yves Bekkers and Jaques Cohen editors, Proceedings of the 1992 International Workshop on Memory Management, pp.1-42, St Malo, France, pp.17-19, 1992
4 J. Gosling, B. Joy, and G. Steele, The Java Language Specification, Addison-Wesley, Boston, 1996
5 T. Lindholm and F. Yellin, The Java Virtual Machine Specification, Addison-Wesley, Boston, 1997
6 David Gay and Alex Aiken, 'Memory Management with Explicit Regions.' In Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation, number 33:5 in SIGPLAN Notices, pp.313-323, 1998
7 D. T. Ross, 'The AED free storage package.' Comm, ACM, Vol.10, No.8, pp.481-492, 1967   DOI
8 Yuuji Ichisugi and Akinori Yonezawa, 'Distributed garbage collection using group reference counting' In OOPSLA/ECOOP '90 Workshop on Garbage Collection in Object-Oriented Systems, 1990
9 David R. Hanson, 'Fast allocation and deallocation of memory based on object lifetimes.' Software Practice and Experience, Vol.20, No.1, pp.5-12, 1990   DOI
10 Richard Jones and Rafael Lins, Garbage Collection: Algorithms for Automatic Dynamic Memory Management, John Wiley & Sons, England, 1996
11 Kelvin D. Nilsen and William J. Schmidt, 'A high-performance hardware-assisted real time garbage collection system,' Journal of Programming Languages, Vol.2, No.1, 1994
12 Hans-Juergen Boehm and Mark Weiser, 'Garbage Collection in an Uncooperative Environment, Software Practice & Experience,' Software Practice & Experience, Vol.18, No.9, pp.807-820, 1988   DOI   ScienceOn
13 TimeSys Products and Services - Real-Time Hava, http://www.timesys.com/prodserv/java/index.cfm
14 Henry G. Baker, 'Cache conscious copying collection,' OOPSLA/ECOOP '91 Workshop on Garbage Collection in Object -Oriented Systems, 1991
15 Bill Venners, Inside the JAVA2 Virtual Machine(2nd edition), McGraw-Hill, 2000
16 Henry Baker, 'List processing in real time on a serial computer,' CACM, Vol. 21, No.4, pp.280-294, 1978   DOI   ScienceOn
17 Hans-Juergen Boehm, A garbage collector for C and C++, http://www.hpl.hp.com/personal/Hans_Boehm/gc/index.html
18 The Real-Time for Java Expert Group, The Real-Time specification for Java, Addison-Wesley, Boston, 2001
19 Hans-Juergen Boehm, 'Space Efficient Conservative Garbage Collection,' In Proceedings of SIGPLAN'93 Conference on Programming Languages Design and Implementation, ACM SIGPLAN Notices, pp.197-206, 1993   DOI