• 제목/요약/키워드: Memory Fragmentation

검색결과 29건 처리시간 0.019초

Improving Memory Efficiency of Dynamic Memory Allocators for Real-Time Embedded Systems

  • Lee, Jung-Hee;Yi, Joon-Hwan
    • ETRI Journal
    • /
    • 제33권2호
    • /
    • pp.230-239
    • /
    • 2011
  • Dynamic memory allocators for real-time embedded systems need to fulfill three fundamental requirements: bounded worst-case execution time, fast average execution time, and minimal fragmentation. Since embedded systems generally run continuously during their whole lifetime, fragmentation is one of the most important factors in designing the memory allocator. This paper focuses on minimizing fragmentation while other requirements are still satisfied. To minimize fragmentation, a part of a memory region is segregated by the proposed budgeting method that exploits the memory profile of the given application. The budgeting method can be applied for any existing memory allocators. Experimental results show that the memory efficiency of allocators can be improved by up to 18.85% by using the budgeting method. Its worst-case execution time is analyzed to be bounded.

임베디드 자바가상기계를 위한 고정 크기 메모리 할당 및 해제 (Fixed-Length Allocation and Deallocation of Memory for Embedded Java Virtual Machine)

  • 양희재
    • 대한전자공학회:학술대회논문집
    • /
    • 대한전자공학회 2003년도 하계종합학술대회 논문집 Ⅲ
    • /
    • pp.1335-1338
    • /
    • 2003
  • Fixed-size memory allocation is one of the most promising way to avoid external fragmentation in dynamic memory allocation problem. This paper presents an experimental result of applying the fixed- size memory allocation strategy to Java virtual machine for embedded system. The result says that although this strategy induces another memory utilization problem caused by internal fragmentation, the effect is not very considerable and this strategy is well-suited for embedded Java system. The experiment has been performed in a real embedded Java system called the simpleRTJ.

  • PDF

객체지향 컴퓨터를 위한 확장-가중치 버디 시스템 (An Extended-Weighted Buddy System for an Object-Oriented Computer)

  • 김관중;김병기
    • 한국정보처리학회논문지
    • /
    • 제4권6호
    • /
    • pp.1625-1635
    • /
    • 1997
  • 객체지향 컴퓨터의 동적 메모리 할당을 위해 가중치 버디 시스템을 확장한 확장-가중치 버디 시스템을 제안하였다. 가중치 버디 시스템이 블럭의 크기를 $2^k와\;3*2^k$ 두가지로 제공하는데 비해 확장-가중치 버디 시스템은 블럭의 크기를 $2^k,\;3*2^k,\;5*2^k,\;7*2^k$등으로 제공한다. 이 확장은 각 블럭당 3비트의 추가 비용의 부담만으로 메모리 관리 장치를 실현할 수 있다. 그리고 본 기법과 가중치 버디 시스템을 비교 실험한 결과를 제시하였다. 확장-가중치 버디 시스템은 메모리 할당 요구 크기가 균일분포일 때 가중치 버디 시스템에 비해 내부단편화가 약 60% 정도 감소하였으며, 지수분포일 때 약 50% 정도 감소하였다. 외부단편화는 가중치 버디 시스템에 비해 본 논문에서 제안한 시스템이 크지만, 전체단편화는 지수분포시 확장-가중치 버디 시스템이 적으며 균일 분포시 두 시스템간에 큰 차가 없으므로 가중치 버디 시스템을 대체할 수 있다.

  • PDF

내장형 시스템을 위한 Budgeted 메모리 할당기 (Budgeted Memory Allocator for Embedded Systems)

  • 이중희;이준환
    • 전자공학회논문지SC
    • /
    • 제45권2호
    • /
    • pp.61-70
    • /
    • 2008
  • 내장형 시스템의 설계 유연성을 높이고 예측하기 어려운 입력과 출력을 다루기 위해 동적 메모리 할당기가 사용된다. 일반적으로 내장형 시스템은 사용 기간 동안 계속 수행되기 때문에 메모리 할당기를 설계하는데 있어서 단편화 문제가 중요한 고려 사항 중 하나이다. 본 논문에서는 미리 구분된 객체들에 대한 전용 영역을 활용하여 단편화를 최소화시키기는 budgeted 메모리 할당기를 제안한다. 최신의 메모리 할당기를 사용하는 대신 budgeted 메모리 할당기를 사용하면 필요한 힙 영역의 크기를 최대 49.5% 감소시킬 수 있었다. 힙 영역의 크기가 16KB 이상이면 budgeted 메모리 할당기를 사용함으로 늘어나는 코드의 크기를 줄어든 단편화로 보상할 수 있다.

내장형 장비용 자바 가상 기계에서의 실시간 쓰레기 수집기 알고리즘에 관한 연구 (Real-time Garbage Collection Algorithm for Efficient Memory Utilization in Embedded Device)

  • 최원영;박재현
    • 대한전기학회:학술대회논문집
    • /
    • 대한전기학회 1998년도 추계학술대회 논문집 학회본부 B
    • /
    • pp.672-674
    • /
    • 1998
  • Java virtual machine has the garbage collector that automate memory management. Mark-compact algorithm is one of the garbage collection algorithm that operating in 2 phases, marking and sweeping. One is Marking is marking live objects reachable from root object set. Sweeping is sweeping unmarked object from memory(return to free memory pool). This algorithm is easy to implement but cause a memory fragmentation. So compacting memory, before memory defragmentation become serious. When compacting memory, all other processes are suspended. It is critical for embedded system that must guarantee real-time processing. This paper introduce enhanced mark-compact garbage collection algorithm. Grouping the objects by their size that minimize memory fragmentation. Then apply smart algorithm to the grouped objects when allocating objects and compacting memory.

  • PDF

메모리가 적은 자바 시스템을 위한 자동 동적 메모리 관리 기법 (Automatic Dynamic Memory Management Techniques for Memory Scarce Java system)

  • 최형규;문수묵
    • 한국정보과학회논문지:시스템및이론
    • /
    • 제35권8호
    • /
    • pp.378-384
    • /
    • 2008
  • 많은 내장형 시스템들이 자바(Java)를 널리 채택하고 있다. 내장형 시스템은 자바 가상 머신을 통해 자바를 지원하며, 자바 가상 머신은 쓰레기 수집기(Garbage Collector)를 통해서 동적 메모리를 자동으로 관리한다. 내장형 시스템은 적은 메모리를 가지고 있기 때문에 자바 가상 머신은 이를 효율적으로 관리해야 한다. 본 논문에서는 여러 자바 프로그램을 동시에 실행할 수 있는 자바 가상 머신에서 적은 메모리를 사용하면서도 효과적으로 메모리를 관리할 수 있는 메모리 관리 기법을 제안한다. 우선 개선된 압축(compaction)기법 기반의 쓰레기 수집 기법을 소개하여 움직일 수 없는 메모리 영역이 존재하더라도 외부 단편화(external fragmentation) 문제를 극복한다. 다음으로 수행 중 메모리 사용을 줄이기 위해서 쓰레기 수집기가 메모리에서 필요 없는 클래스(class)들을 선택적으로 수거하는 class unloading 기법을 소개한다. 소개한 기법들을 실제 동작하는 내장형 시스템에서 실험한 결과, 메모리가 부족하여 동시에 수행할 수 없었던 프로그램들이 같이 수행되는 등 매우 효과적이었다.

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

  • 권혜은;김상훈
    • 정보학연구
    • /
    • 제5권2호
    • /
    • pp.27-34
    • /
    • 2002
  • CLDC를 지원하는 자바가상머신인 KVM의 가비지 콜렉터는 일반적으로 단순한 마크-회수 알고리즘에 기반을 두고 있다. 그러나 이 알고리즘은 단편화 없이 다양한 크기의 객체를 다루기 어렵다는 문제점을 가진다. 본 논문에서는 객체의 크기에 따라 자유 기억 공간의 할당 위치를 결정하는 메모리 할당 방법을 적용한 개선된 마크-회수 가비지 콜렉터를 설계하고 구현하였다. 실험을 통해 단편화 문제가 감소되었고 실행시간의 개선이 있었음을 확인하였다.

  • PDF

모바일 게임 서버를 위한 고정크기 메모리 풀 관리 방법 (Fixed Size Memory Pool Management Method for Mobile Game Servers)

  • 박세영;최종선;최재영;김은회
    • 정보처리학회논문지:컴퓨터 및 통신 시스템
    • /
    • 제4권9호
    • /
    • pp.327-336
    • /
    • 2015
  • 모바일 환경에서의 게임 서버는 클라이언트의 요청을 처리하는 버퍼를 생성하기 위해 일반적으로 동적 메모리 할당을 빈번하게 수행한다. 이는 시스템에 부하를 가중시키고 메모리 단편화를 발생시키게 되어 게임 서버의 성능을 저하시킨다. 본 논문에서는 이러한 문제를 해결하기 위해 고정크기 메모리 풀 관리 방법을 제안한다. 제안하는 방법에서의 메모리 풀은 원형 연결 리스트 형태의 순차적 메모리 구조를 가지며, 이를 통해 게임 서버에서의 메모리 단편화 문제를 해결하고, 메모리 할당과 해제를 위해 필요한 메모리 블록의 탐색 시간 비용을 줄일 수 있다. 실험에서는 제안하는 방법과 잘 알려진 오픈소스 메모리 풀 라이브러리(boost) 기반의 메모리 풀 관리방법을 이용하여, 동적 할당을 수행할 때의 성능평가를 통해 해당 기법의 효율성을 보이도록 한다.

실시간 시스템에서의 동적 스토리지 할당을 위한 빠른 수정 이진 버디 기법 (Quick Semi-Buddy Scheme for Dynamic Storage Allocation in Real-Time Systems)

  • 이영재;추현승;윤희용
    • 한국시뮬레이션학회논문지
    • /
    • 제11권3호
    • /
    • pp.23-34
    • /
    • 2002
  • Dynamic storage allocation (DSA) is a field fairly well studied for a long time as a basic problem of system software area. Due to memory fragmentation problem of DSA and its unpredictable worst case execution time, real-time system designers have believed that DSA may not be promising for real-time application service. Recently, the need for an efficient DSA algorithm is widely discussed and the algorithm is considered to be very important in the real-time system. This paper proposes an efficient DSA algorithm called QSB (quick semi-buddy) which is designed to be suitable for real-time environment. QSB scheme effectively maintains free lists based on quick-fit approach to quickly accommodate small and frequent memory requests, and the other free lists devised with adaptation upon a typical binary buddy mechanism for bigger requests in harmony for the .improved performance. Comprehensive simulation results show that the proposed scheme outperforms QHF which is known to be effective in terms of memory fragmentation up to about 16%. Furthermore, the memory allocation failure ratio is significantly decreased and the worst case execution time is predictable.

  • PDF

자원 효율적인 XML 조각 스트림 질의 처리를 위한 XML 분할 (XML Fragmentation for Resource-Efficient Query Processing over XML Fragment Stream)

  • 김진;강현철
    • 정보처리학회논문지D
    • /
    • 제16D권1호
    • /
    • pp.27-42
    • /
    • 2009
  • 유비쿼터스 컴퓨팅의 실현을 위해서는 이동 디바이스 등 클라이언트의 제약된 자원을 효율적으로 사용하는 기법이 요구된다. 메모리 용량이 크지 않은 이동 디바이스의 경우, 대용량 XML 데이터에 대한 질의 처리를 수행하기 위해서는 XML 스트림 질의 처리 기술의 활용이 필수적이다. 최근에 서버에서 XML 문서를 XML 조각(XML fragment)으로 분할하여 스트리밍하고 클라이언트에서 이 조각 스트림을 받아 질의를 처리하는 기법들이 제안되었다. XML 조각 스트림 질의 처리에 있어 XML 문서가 분할되는 방법에 따라 자원 사용(질의 처리 시간 및 메모리 사용량) 면에서 큰 차이가 날 수 있기 때문에 효율적인 XML 문서 분할 방법이 요구된다. 본 논문에서는 클라이언트의 질의 처리 시 자원 사용 효율을 높이기 위한 XML 문서 분할 기법을 제시한다. 이를 위하여 먼저 XML 조각 스트림 질의 처리의 비용 모델을 제시하고, 자원 효율적인 XML 문서 분할 알고리즘을 제시한다. 구현 및 성능 평가 결과 본 논문에서 제시한 기법이 기존 기법들에 비해 질의 처리 시간 및 메모리 사용량 양면 모두에서 우수한 것으로 나타났다. 본 논문의 기여는 XML 조각 스트림 질의 처리 기술의 실용화 가능성을 기존 기술에 비해 한 층더 높였다는 데 있다.