Font Size: a A A

Research On Multi-core System Memory Of Management Algorithm

Posted on:2012-03-27Degree:MasterType:Thesis
Country:ChinaCandidate:X B YangFull Text:PDF
GTID:2218330368483046Subject:Computer system architecture
Abstract/Summary:PDF Full Text Request
The traditional superscalar processor in the typical program instruction stream can not discover more parallelism, which hinders the performance improvement of single-core processors Multi-core processors considered as a new technical way to enhance the system performance continually provide a good foundation for building high-performance hardware processors.The changes in maximize the performance advantages of multi-core processors needs to design better operating system strategies to match it, which presents new technical challenges for the operating system designers. As an important component of the operating system, memory management plays a vital role of building high-performance multi-core operating systems. The kernel code in the Linux operating system is open, which makes possible for the kernel data structure and algorithm and provides a good test platform for the research on the memory management.The memory management in the Linux operating system mainly uses page management, whose typical methods are Buddy algorithm and Slab algorithm. However, since some memory blocks can not meet the requirements of the partners blocks in the Buddy algorithm, it results in the emergence of many contiguous memory blocks that can not be combined which leads to reduce the memory utilization. Based on the deficiency of the Buddy algorithm, this paper presents a part of the delayed relaxation of merging algorithm.The algorithm mergers contiguous memory blocks, which provides ample space for allocating the memory, reduces the memory fragmentation and finally increases the rate of multi-core processor memory utilization. At the same time, the free list is divided into the ones of partner-bussy and partner-free based on the original partners, which delays the time of mergering the partner blocks, reduces the frequency of splitting and mergering the memory and then improves system run-time. The Slab algorithm improves the performance of space and time by caching the memory allocated and released frequently. But the recovery of the buffer memory is more complex in the Slab algorithm. The paper introduces the local slab queue based on the Slab algorithm. Using the local slab queue and half-full queue reduces the use of spin locks, reducing the race for the shared memory in the kernel, and improves the speed of accessing the memory of the multi-core processors.An experimental platform is built with SimOS simulator in the Linux system to verify the feasibility and high efficiency of the method in the paper, Different memory management algorithms are tested in the experimental platform. The test result shows that the new algorithm reduces the memory fragmentation and increases the parallelism of multi-core processor systems.
Keywords/Search Tags:Multi-core System, Linux memory management, Buddy algorithm, Slab algorithm, Part of the delayed relaxation of merging algorithm
PDF Full Text Request
Related items