객체지향 컴퓨터를 위한 확장-가중치 버디 시스템

An Extended-Weighted Buddy System for an Object-Oriented Computer

  • 발행 : 1997.06.01

초록

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

An extension of the weighted buddy system, called the extended-weighted buddy system, for dynamic memory allocation in an object-oriented computer is presented. The extended-weighted buddy system allows block sizes of $2^k,\;3*2^k,\;5*2^k,\;7*2^k$, whereas the original weighted buddy system allowed block sizes of $2^k\;and\;3*2^k$. This extension is achieved at only the cost of additional 3 bits per block for memory management unit. Simulation results are presented which compare our method with the weighted buddy system. These results indicate that, for uniform request distributions, our system has less internal memory fragmentation than the weighted buddy system(approximately 60%). And, for exponential request distributions, it has less internal memory fragmentation than the weighted buddy method (approximately 50%). The external fragmentation is greater for this system than the weighted buddy system. But, our system has less total memory fragmentation for exponential request distributions, and two systems take a similar total memory fragmentation for uniform request distributions, so we can substitutes the extended-weighted buddy system for weighted buddy system.

키워드