• Title/Summary/Keyword: mark-sweep garbage collection

Search Result 6, Processing Time 0.027 seconds

Java Garbage Collection for a Small Interactive System (소규모 대화형 시스템을 위한 자바 가비지 콜렉션)

  • 권혜은;김상훈
    • Journal of KIISE:Software and Applications
    • /
    • v.29 no.12
    • /
    • pp.957-965
    • /
    • 2002
  • 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.

Java Garbage Collection in CLDC (CLDC에서 자바 가비지 콜렉션)

  • Kwon, He-Eun;Kim, Sang-Hoon
    • The Journal of Information Technology
    • /
    • v.5 no.2
    • /
    • pp.27-34
    • /
    • 2002
  • The KVM garbage collector implemented in CLDC was generally based on the simple mark-sweep algorithm, but it is difficult to handle objects of varying size without fragmentation of the available memory. In this paper, we have designed and implemented a memory allocator based on the mark-sweep algorithm that minimizes the fragmentation by the method that determines the allocation position of free-space list according to object size. The experimental result shows that our algorithm reduce the fragmentation and improve the execution time than the existing algorithm.

  • PDF

Design of Garbage Collector for Java-based Embedded Systems (Java 기반 임베디드 시스템을 위한 쓰레기 수집기 설계)

  • 배유석;김태근
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 1999.10a
    • /
    • pp.421-423
    • /
    • 1999
  • 가전 제품이나 정보 가전 기기를 포함하는 실시간 임베디드 응용 분야에서 Java를 소프트웨어 개발 플랫폼으로 선택하는 범위가 확대되고 있다. 현재 Sun에서 제공하는 PersonalJava 기술은 동적인 메모리 할당에 대하여 마크-회수(mark-sweep) 방식의 자동 쓰레기 수집(garbage collection) 기능을 지원하는데, 이 방법은 쓰레기 회수 수행전 응용프로그램의 수행을 중지시키는 방식으로 실시간 임베디드 환경에 적합하지 않다. 본 논문에서는 Java 기반 인터넷 셋톱박스나 디지털 가전기기에 탑재할수 있는 Java 플랫폼을 대상으로 기존에 적용된 비실시간 마크-회수 메모리 관리 기법을 대체하는 실시간 자동 메모리 관리 기법을 제시한다.

  • PDF

Implementation and Performance Analysis of the EVM's Java Dynamic Memory Manager and Garbage Collector (EVM에서의 자바 동적 메모리 관리기 및 쓰레기 수집기의 구현 및 성능 분석)

  • Lee Sang-Yun;Won Hee-Sun;Choi Byung-Uk
    • The KIPS Transactions:PartA
    • /
    • v.13A no.4 s.101
    • /
    • pp.295-304
    • /
    • 2006
  • Java has been established as one of the most widely-used languages owing to its support of object-oriented concepts, safety, and flexibility. Garbage collection in the Java virtual machine is a core component that relieves application programmers of difficulties related to memory management. In this paper, we propose a memory manager and a garbage collector that is implemented on a embedded java virtual machine. The memory manager divide a heap into various-sized cells and manages it as blocks of same-sized cells. So it is possible to allocate and free memory fast. We adopted the 3-color based Mark & Sweep garbage collector as our base algorithm and we propose 4-color based Mark & Sweep garbage collector for supporting multi-threaded program. The proposed garbage collector occurs memory fragmentation but we show through a experiment that the fragmentation ratio is almost fixed according as we create objects continuously.

An Explicit Free Method for the Garbage Objects in Java-based Embedded System (자바기반 내장형 시스템에서 쓰레기 객체의 명시적 자유화 방법)

  • Bae, Soo-kang;Lee, Sung-young
    • The KIPS Transactions:PartA
    • /
    • v.9A no.4
    • /
    • pp.441-450
    • /
    • 2002
  • As the size of embedded system software increase bigger and bigger, and it's complexity is grower and grower, the usage of dynamic memory management scheme such collector also has been increased. Using the garbage collector, however, inherently lead us performance degradation. In order to resolve this kind of performance problem in the Java based embedded system. we introduce an explicit dynamic memory free method to the automated dynamic memory management environment. which can be performed by a programmer. In the worst case, the prosed scheme shows the same performance as the case of that only garbage collector is working, since the unclaimed garbage objects will eventually be collected later by the garbage collector. In the best case. our method is free from any runtime overhead because the applications can be implemented without any intervention of the garbage collector. Although the proposed method can be facilitated with all the existing garbage collection algorithms, it shows an outperform in the case of mark-and-sweep algorithm.

An Explicit Dynamic Memory Management Scheme in Java Run-Time Environment (자바 실행시간 환경에서 명시적인 동적 메모리 관리 기법)

  • 배수강;이승룡;전태웅
    • Journal of KIISE:Software and Applications
    • /
    • v.30 no.1_2
    • /
    • pp.58-72
    • /
    • 2003
  • 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.