Abstract
As the mobile computing environment evolves, users demand high-quality apps and better user experience. Consequently, memory demand in mobile devices has soared. Device manufacturers have fulfilled the demand by equipping devices with more RAM. However, such a hardware approach is only a temporary solution and does not scale well in the resource-constrained mobile environment.
Meanwhile, mobile systems adopt a new app life cycle and a memory reclamation scheme tailored for the life cycle. When a user leaves an app, the app is not terminated but cached in memory as long as there is enough free memory. If the free memory gets low, a victim app is terminated and the associated memory to the app is reclaimed. This process-level approach has worked well in the mobile environment. However, user experience can be impaired severely because the victim selection policy does not consider the user experience.
In this article, we propose a novel memory reclamation scheme called SmartLMK. SmartLMK minimizes the impact of the process-level reclamation on user experience. The worthiness to keep an app in memory is modeled by means of user-perceived app launch time and app usage statistics. The memory footprint and impending memory demand are estimated from the history of the memory usage. Using these values and memory models, SmartLMK picks up the least valuable apps and terminates them at once. Our evaluation on a real Android-based smartphone shows that SmartLMK efficiently distinguishes the valuable apps among cached apps and keeps those valuable apps in memory. As a result, the user-perceived app launch time can be improved by up to 13.2%.
- Android. 2013a. Homepage. Retrieved from http://www.android.com.Google Scholar
- Android. 2013b. Android Debug Bridge (ADB). Retrieved from http://developer.android.com/tools/help/adb.html.Google Scholar
- Android. 2013c. Managing the Activity Lifecycle. Retrieved from http://developer.android.com/training/basics/activity-lifecycle/index.html.Google Scholar
- Android. 2013d. Monkeyrunner. http://developer.android.com/tools/help/monkeyrunner_concepts.html. (September 2013).Google Scholar
- Android. 2014. Content Providers. Retrieved from http://developer.android.com/guide/topics/providers/content-providers.html.Google Scholar
- Apple Computer. 2006. Launch Time Performance Guidelines. Retrieved from http://developer.apple.com/documentation/Performance/Conceptual/LaunchTime/LaunchTime.pdf.Google Scholar
- Apple. 2013. Apple iOS 7. Retrieved from http://www.apple.com/ios.Google Scholar
- Andrea Arcangeli, Izik Eidus, and Chris Wright. 2009. Increasing memory density by using KSM. In Proceedings of the 2009 Ottawa Linux Symposium (OLS’09). 19--28.Google Scholar
- Hugo Barra. 2012. 500 Million. Retrieved from https://plus.google.com/110023707389740934545/posts/R5YdRRyeTHM.Google Scholar
- Christopher M. Bishop. 2007. Pattern Recognition and Machine Learning (Information Science and Statistics). Springer-Verlag New York. Google Scholar
Digital Library
- David Chu, Aman Kansal, Jie Liu, and Feng Zhao. 2011. Mobile apps: It’s time to move up to CondOS. In Proceedings of the 13th USENIX Conference on Hot Topics in Operating Systems (HotOS’11). 16--20. Google Scholar
Digital Library
- Nathan Eagle and Alex Pentland. 2006. Reality mining: Sensing complex social systems. Personal and Ubiquitous Computing 10, 4 (2006), 255--268. Google Scholar
Digital Library
- Hossein Falaki, Ratul Mahajan, Srikanth Kandula, Dimitrios Lymberopoulos, Ramesh Govindan, and Deborah Estrin. 2010. Diversity in smartphone usage. In Proceedings of the 8th International Conference on Mobile Systems, Applications, and Services (MobiSys’10). 179--194. Google Scholar
Digital Library
- Gartner. 2011. Sales of Smartphones and Tablets to Exceed PCs. Retrieved from http://www.practicalecommerce.com/articles/3069-Sales-of-Smartphones-and-Tablets-to-Exceed-PCs.Google Scholar
- Gartner. 2012. Forecast: Mobile Devices by Open Operating System, Worldwide, 2009-2016, 2Q12 Update. (2012).Google Scholar
- Google. 2011. Google Galaxy Nexus. Retrieved from http://www.google.com/nexus/#/tech-specs.Google Scholar
- Nitin Gupta. 2010. compcache: Compressed Caching for Linux. Retrieved from http://code.google.com/p/compcache.Google Scholar
- Dianne Hackborn. 2010. Multitasking the Android Way. Retrieved from http://android-developers.blogspot.kr/2010/04/multitasking-android-way.html.Google Scholar
- Anthony Hayter. 2012. Probability and Statistics for Engineers and Scientists. Brooks/Cole, Cengage Learning.Google Scholar
- Scott Hudson, James Fogarty, Christopher Atkeson, Daniel Avrahami, Jodi Forlizzi, Sara Kiesler, Johnny Lee, and Jie Yang. 2003. Predicting human interruptibility with sensors: A wizard of oz feasibility study. In Proceedings of the 2003 SIGCHI Conference on Human Factors in Computing Systems (CHI’03). ACM, 257--264. Google Scholar
Digital Library
- Jinkyu Jeong, Hwanju Kim, Jeaho Hwang, Joonwon Lee, and Seungryoul Maeng. 2012. DaaC: Device-reserved memory as an eviction-based file cache. In Proceedings of the 2012 International Conference on Compilers, Architectures and Synthesis for Embedded Systems (CASES’12). 191--200. Google Scholar
Digital Library
- Jinkyu Jeong, Hwanju Kim, Jeaho Hwang, Joonwon Lee, and Seungryoul Maeng. 2013a. Rigorous rental memory management for embedded systems. ACM Transactions on Embedded Computer Systems 12, 1s, Article 43 (March 2013), 21 pages. Google Scholar
Digital Library
- Sooman Jeong, Kisung Lee, Seongjin Lee, Seoungbum Son, and Youjip Won. 2013b. I/O stack optimization for smartphones. In Proceedings of the 2013 USENIX Annual Technical Conference (USENIX ATC’13). USENIX Association, 309--320. Google Scholar
Digital Library
- Yongsoo Joo, Junhee Ryu, Sangsoo Park, and Kang G. Shin. 2011. FAST: Quick application launch on solid-state drives. In Proceedings of the 9th USENIX Conference on File and Stroage Technologies (USENIX FAST’11). 259--272. Google Scholar
Digital Library
- Hans Kellerer, Ulrich Pferschy, and David Pisinger. 2004. Knapsack Problems. Springer-Verlag, Berlin.Google Scholar
- Hyojun Kim, Nitin Agrawal, and Cristian Ungureanu. 2012. Revisiting storage for smartphones. In Proceedings of the 10th USENIX Conference on File and Stroage Technologies (USENIX FAST’12). Google Scholar
Digital Library
- Sung-Hoon Kim, Jinkyu Jeong, and Joonwon Lee. 2014. Efficient memory deduplication for mobile smart devices. In Proceedings of the 2014 IEEE International Conference on Consumer Electronics (ICCE’14).Google Scholar
- L. G. Electronics. 2013. Open webOS. Retrieved from http://www.openwebosproject.org.Google Scholar
- Matt Mackall. 2007. System-wide memory profiling. In Proceedings of the 2007 CELF Embedded Linux Conference (ELC’07).Google Scholar
- Dan Magenheimer. 2013. In-Kernel Memory Compression. Retrieved from http://lwn.net/Articles/545244/.Google Scholar
- Dan Magenheimer, Chris Mason, Dave McCracken, and Kurt Hackel. 2009. Transcendent memory and linux. In Proceedings of the 2009 Ottawa Linux Symposium (OLS’09).Google Scholar
- Mary Meeker and Liang Wu. 2013. KPCB Internet Trends 2013. (May 2013).Google Scholar
- Oracle. 2013. Project: Transcendent Memory. Retrieved from http://oss.oracle.com/projects/tmem.Google Scholar
- Abhinav Parate, Matthias Böhmer, David Chu, Deepak Ganesan, and Benjamin M. Marlin. 2013. Practical prediction and prefetch for faster access to applications on mobile phones. In Proceedings of the 2013 ACM International Joint Conference on Pervasive and Ubiquitous Computing (UbiComp’13). 275--284. Google Scholar
Digital Library
- Ahmad Rahmati, Clayton Shepard, Chad Tossell, Mian Dong, Zhen Wang, Lin Zhong, and Phillip Kortum. 2011. Tales of 34 iPhone users: How they change and why they are different. Technical Report TR-2011-0624 (2011).Google Scholar
- Ahmad Rahmati and Lin Zhong. 2009. A longitudinal study of non-voice mobile phone usage by teens from an underserved urban community. Technical Report TR-0515-09 (2009).Google Scholar
- Nishkam Ravi, Nikhil Dandekar, Preetham Mysore, and Michael L. Littman. 2005. Activity recognition from accelerometer data. In Proceedings of the 7th Conference on Innovative Applications of Artificial Intelligence (IAAI’05). American Association for Artificial Intelligence, 1541--1546. Google Scholar
Digital Library
- Rice Efficient Computing Group. 2012. LiveLab: Measuring wireless networks and smartphone users in the field. http://livelab.recg.rice.edu/traces.html. (July 2012).Google Scholar
- Clayton Shepard, Ahmad Rahmati, Chad Tossell, Lin Zhong, and Phillip Kortum. 2011. LiveLab: Measuring wireless networks and smartphone users in the field. Performance Evaluation Review 38, 3 (January 2011), 15--20. Google Scholar
Digital Library
- The Linux Foundation. 2013. Tizen: An open source, standards-based software platform for multiple device categories. http://www.tizen.org. (2013).Google Scholar
- Ionut Trestian, Supranamaya Ranjan, Aleksandar Kuzmanovic, and Antonio Nucci. 2009. Measuring serendipity: Connecting people, locations, and interests in a mobile 3G network. In Proceedings of the 9th ACM SIGCOMM Conference on Internet Measurement Conference (IMC’09). 267--279. Google Scholar
Digital Library
- Carl A. Waldspurger. 2002. Memory resource management in VMware ESX server. In Proceedings of the 5th Symposium on Operating Systems Design and Implementation (OSDI’02). Google Scholar
Digital Library
- Wikipedia. 2013. Comparison of Android Devices. http://en.wikipedia.org/wiki/Comparison_of_Android_devices. (2013).Google Scholar
- Tingxin Yan, David Chu, Deepak Ganesan, Aman Kansal, and Jie Liu. 2012. Fast app launching for mobile devices using predictive user context. In Proceedings of the 10th International Conference on Mobile Systems, Applications and Services (MobiSys’12). Google Scholar
Digital Library
- Chunhui Zhang, Xiang Ding, Guanling Chen, Ke Huang, Xiaoxiao Ma, and Bo Yan. 2013. Nihao: A predictive smartphone application launcher. Lecture Notes of the Institute for Computer Sciences, Social Informatics and Telecommunications Engineering 110 (2013), 294--313.Google Scholar
Index Terms
SmartLMK: A Memory Reclamation Scheme for Improving User-Perceived App Launch Time
Recommendations
Enhanced student technology support with cross-platform mobile apps
SIGUCCS '11: Proceedings of the 39th annual ACM SIGUCCS conference on User servicesWith smartphones and other web-enabled mobile devices growing quickly in popularity, higher education institutions have the opportunity -- and challenge -- to leverage this young medium to provide dynamic content regarding services, events, and support ...
Developing mobile apps using cross-platform frameworks: a case study
HCI'13: Proceedings of the 15th international conference on Human-Computer Interaction: human-centred design approaches, methods, tools, and environments - Volume Part IIn last few years, a huge variety of frameworks for the mobile cross-platform development have been released to deliver quick and overall better solutions. Most of them are based on different approaches and technologies; therefore, relying on only one ...
Android App Permission and Users’ Adoption: A Case Study of Mental Health Application
Human Aspects of Information Security, Privacy and TrustAbstractThe prevalent use of mobile devices makes mobile applications (apps) a promising approach to enhance mental healthcare. However, at the same time, users’ information privacy and security becomes a serious concern due to the ubiquitous data ...






Comments