An approach towards improvement of contiguous memory allocation linux kernel: a review - Suryavanshi, Anmol Suresh; Sharma, Sanjeevkumar (Indonesian Journal of Electrical Engineering and Computer Science, 2022)
The demand of contiguous memory allocation has been expanded in day-to-day life in all the devices. It is achieved in existing systems by using various reservation techniques. There are various other methods to achieve the goal of contiguous memory allocation in linux kernel such as, input output memory management units (IOMMU’s), scatter/gather direct memory access (DMA) and reserved static memory at boot time. But these solutions have its own drawbacks such as, IOMMU requires hardware. However, the configuration of additional hardware's increases the cost. The power consumption of the system and the reserved static memory in the system goes waste when not in used for specific purpose. It is very difficult to access contiguous memory in low-end devices that are unable to provide real contiguous memory. There is one existing method called contiguous memory allocator (CMA), which provides dynamic contiguous memory. It overcomes most of the problems but CMA itself has some drawbacks, which do not provide the guarantee of failure in future of contiguous memory. The motivation behind this study is to review existing contiguous memory allocation (CMA) method by identifying and removing its drawbacks.