A memory management scheme for enhancing performance of applications on Android

K. Vimal, A. Trivedi. RAICS 2015

[IEEE]

Android OS is an unbridled success in the mobile market. Memory management has always been an area of concern to developers of large applications and also to consumers who want a seamless user experience. Memory leaks in applications have been talked about a lot in the past where subtle vulnerabilities often result in unwanted consequences such as application crashes. Memory is a limited resource for any device especially in portables (mobiles, tablets) and effective memory management is of utmost importance in determining the responsiveness of any system. Android contains modified Linux kernel and the task of managing memory is done by Activity Manager Service (AMS) and Low Memory Killer (LMK). Android features a least recently used reclamation process and adjustment based low memory handling. But this scheme may kill processes that may be required in a short interval of time leading to more number of memory loading cycles taking time in the order of 3-5 seconds. Previous research done in this area has attained 22.1% loading latency improvement of applications and this research is an endeavor to do better by using more appropriate cache management techniques. The main goal of this research is to design a new memory management scheme for the Android operating system that takes into account application usage patterns of the user to decide the applications that have to be killed from the main memory and dynamically set the background process cache limit based on hit rate and number of applications of user’s interest.