ABSTRACT
Mobile devices with limited resources are prevalent as they have a relatively low price. Providing a good user experience with limited resources has been a big challenge. This paper found that foreground applications are often unexpectedly interfered by background applications' memory activities. Improving user experience on resource-limited mobile devices calls for a strong collaboration between memory and process management. This paper proposes a framework, Ice, to optimize the user experience on resource-limited mobile devices. With Ice, processes that will cause frequent refaults in the background are identified and frozen accordingly. The frozen application will be thawed when memory condition allows. Evaluation of resource-limited mobile devices demonstrates that the user experience is effectively improved with Ice. Specifically, Ice boosts the frame rate by 1.57x on average over the state-of-the-art.
- R. Bakker. 2022. Android 12: how to know if an app is using the microphone and the camera secretly. https://crast.net/90775/android-12-how-to-know-if-an-app-is-using-the-microphone-and-the-camera-secretly/.Google Scholar
- K. Bareckas. 2022. Is my phone listening to me? https://nordvpn.com/zh/blog/is-my-phone-listening-to-me/.Google Scholar
- J. Brumley. 2017. The Apple and Samsung smartphone market survey. https://seekingalpha.com/article/4101007-apple-samsung-continue-lose-smartphone-market-share-shift-toward-value.Google Scholar
- Y. M. Chang, P. C. Hsiu, Y. H. Chang, and C. W. Chang. 2013. A Resource-Driven DVFS Scheme for Smart Handheld Devices. In ACM Transactions on Embedded Computer Systems. 1--22.Google Scholar
- J. Choi, J. Ahn, J. Kim, S. Ryu, and H. Han. 2016. In-memory file system with efficient swap support for mobile smart devices. In Transactions on Consumer Electronics (TCE). 275--282.Google Scholar
- D. Chu, A. Kansal, and J. Liu. 2012. Fast app launching for mobile devices using predictive user context. In International Conference on Mobile Systems, Applications and Services (MobiSys). 113--126.Google Scholar
- J. Courville and F. Chen. 2016. Understanding storage I/O behaviors of mobile applications. In 32nd Symposium on Mass Storage Systems and Technologies (MSST). 1--11.Google Scholar
- C. Crowder. 2022. Survey: Use Access Dots to Find Out If Apps Are Using Microphone and Camera in the Background. https://www.maketecheasier.com/prevent-android-apps-using-microphone-camera-background/.Google Scholar
- D. Dai, Y. Chen, D. Kimpe, and R. B. Ross. 2021. Trigger-Based Incremental Data Processing with Unified Sync and Async Model. In IEEE Transactions on Cloud Computing (TCC). 372--385.Google Scholar
- L. David, A. Chiu, and D. Yuan. 2021. M3: end-to-end memory management in elastic system software stacks. In Proceedings of the Sixteenth European Conference on Computer Systems (EuroSys). 507--522.Google Scholar
- R. Davis. 2021. Short-form video market soars: people are spending more and more time on short-form video. https://variety.com/2021/streaming/news/china-short-video-market-study-1235001776/.Google Scholar
- Engineers. 2009. Linux Completely Fair Scheduler. https://www.linuxjournal.com/node/10267.Google Scholar
- Engineers. 2020. Introduction of Android OOM Adjustments mechanism. https://developpaper.com/android-oom-adjustments/.Google Scholar
- Engineers. 2021. Process management in Android framework. https://developer.android.com/reference/android/os/Process.html.Google Scholar
- Hocuri et al. 2022. Source code of SuperFreezZ on GitLab. https://gitlab.com/SuperFreezZ/SuperFreezZ.Google Scholar
- Y. Feng, A. Riska, and E. Smirni. 2012. Busy bee: how to use traffic information for better scheduling of background tasks. In ACM/SPEC International Conference on Performance Engineering. 145--156.Google Scholar
- AOSP Foundation. 2021. Android Debug Bridge (ADB) Tool. https://androidmtk.com/download-minimal-adb-and-fastboot-tool.Google Scholar
- AOSP Foundation. 2021. Android ui/application exerciser monkey tool. https://developer.android.com/studio/test/monkey.Google Scholar
- AOSP Foundation. 2021. Performance tracing using Android Systrace. https://developer.android.com/topic/performance/tracing.Google Scholar
- Linux Foundation. 2012. Refault distance. https://lwn.net/Articles/495543/.Google Scholar
- Linux Foundation. 2017. Linux patch of per process reclaim. https://lwn.net/Articles/544319/.Google Scholar
- Linux Foundation. 2021. Least-recently-used (lru) algorithm in Linux kernel. https://www.kernel.org/.Google Scholar
- Linux Foundation. 2021. ZRAM in Linux kernel. https://www.kernel.org/doc/Documentation/blockdev/zram.txt.Google Scholar
- Linux Foundation. 2022. Process Freezing mechanism in Linux kernel. https://elixir.bootlin.com/linux/latest/source/include/linux/freezer.h.Google Scholar
- Linux Foundation. 2022. Shadow entry for refault awareness in the Linux kernel. https://android.googlesource.com/kernel/common/+/refs/heads/android-mainline/mm/workingset.c.Google Scholar
- X. Gao, M. Dong, X. Miao, W. Du, C. Yu, and H. Chen. 2019. EROFS: A Compression-friendly Readonly File System for Resource-scarce Devices. In USENIX Annual Technical Conference (USENIX ATC). 149--162.Google Scholar
- R. Gouicem, D. Carver, J.P. Lozi, J. Sopena, B. Lepers, W. Zwaenepoel, N. Palix, J. Lawall, and G. Muller. 2020. Fewer Cores, More Hertz: Leveraging High-Frequency Cores in the OS Scheduler for Improved Application Performance. In USENIX Annual Technical Conference (USENIX ATC). 435--448.Google Scholar
- J. Gu, Y. Lee, Y. Zhang, M. Chowdhury, and K. G. Shin. 2017. Efficient memory disaggregation with infiniswap. In 14th USENIX Symposium on Networked Systems Design and Implementation (NSDI). 649--667.Google Scholar
- W. Guo, K. Chen, H. Feng, Y. Wu, R. Zhang, and W. Zheng. 2016. MARS: Mobile application relaunching speed-up through flash-aware page swapping. In IEEE Transactions on Computers (TC). 916--928.Google Scholar
- S. Hahn, S. Lee, I. Yee, D. Ryu, and J. Kim. 2018. Fasttrack: Foreground app-aware I/O management for improving user experience of android smartphones. In USENIX Annual Technical Conference (USENIX ATC). 15--28.Google Scholar
- Y. Hu, S. Liu, and P Huang. 2019. A case for Lease-Based, Utilitarian Resource Management on Mobile Devices. In Proceedings of the 24th ACM International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS). 301--315.Google ScholarDigital Library
- G. Huang, M. Xu, F. X. Lin, Y. Liu, Y. Ma, S. Pushp, and X. Liu. 2017. Shuffledog: Characterizing and adapting user-perceived latency of android apps. In IEEE Transactions on Mobile Computing. 2913--2926.Google Scholar
- Facebook Inc. 2015. Report of Facebook application battery drain. https://www.facebook.com/arig/posts/10105815276466163.Google Scholar
- MeiZu Inc. 2019. The smart freeze 3.0 of Flyme. https://meizu-bg.eu/en/some-new-features-and-improvements-in-flyme-7-3/.Google Scholar
- M. Ju, H. Kim, M. Kang, and S. Kim. 2015. Efficient memory reclaiming for mitigating sluggish response in mobile devices. In IEEE 5th International Conference on Consumer Electronics. 232--236.Google Scholar
- The kernel development community. 2007. Freezing of tasks in Linux kernel. https://www.kernel.org/doc/html/v5.6/power/freezing-of-tasks.html.Google Scholar
- S.H. Kim, J. Jeong, and J. Kim. 2017. Application-aware swapping for mobile systems. In ACM Transactions on Embedded Computing Systems. 1--19.Google Scholar
- S.H. Kim, J. Jeong, J.S. Kim, and S. Maeng. 2016. SmartLMK: A memory reclamation scheme for improving user-perceived app launch time. In ACM Transactions on Embedded Computing Systems. 1--25.Google Scholar
- S. Kwon, S.H. Kim, J. Kim, and J. Jeong. 2015. Managing gpu buffers for caching more apps in mobile systems. In International Conference on Embedded Software (EMSOFT). 207--216.Google Scholar
- N. Lebeck, A. Krishnamurthy, H. M. Levy, and I. Zhang. 2020. End the senseless killing: Improving memory management for mobile operating systems. In USENIX Annual Technical Conference (USENIX ATC). 873--887.Google Scholar
- C. Li, L. Shi, Y. Liang, and C. J. Xue. 2020. SEAL: User Experience-Aware Two-Level Swap for Mobile Devices. In Transactions on Computer-Aided Design of Integrated Circuits and Systems (TCAD). 4102--4114.Google Scholar
- C. Li, L. Shi, and Chun Jason Xue. 2021. MobileSwap: Cross-Device Memory Swapping for Mobile Devices. In 58th ACM/IEEE Design Automation Conference (DAC).Google Scholar
- C. Li, H. Zhuang, Q. Wang, C. Wang, and X. Zhou. 2018. LKSM: Light Weight Key-Value Store for Efficient Application Services on Local Distributed Mobile Devices. In Transactions on Services Computing (TSC). 1026--1039.Google Scholar
- Z. Li and M. Ierapetritou. 2008. Process scheduling under uncertainty: Review and challenges. In Computers and Chemical Engineering. 715--727.Google Scholar
- Y. Liang, J. Li, R. Ausavarungnirun, R. Pan, L. Shi, T. W. Kuo, and C. J. Xue. 2020. Acclaim: Adaptive memory reclaim to improve user experience in android systems. In USENIX Annual Technical Conference (USENIX ATC). 897--910.Google Scholar
- Y. Liang, Q. Li, and C. J. Xue. 2019. Mismatched memory management of android smartphones. In 11th USENIX Workshop on Hot Topics in Storage and File Systems (HotStorage).Google Scholar
- X. Liu, C. Vlachou, F. Qian, C. Wang, and K.H. Kim. 2020. Firefly: Untethered Multi-user VR for Commodity Mobile Devices. In USENIX Annual Technical Conference (USENIX ATC). 943--957.Google Scholar
- Nubia Technology Co Ltd. 2017. Patent of process freezing in mobile systems. https://patents.google.com/patent/CN107066320A/en.Google Scholar
- T. Masashi and U. Takeshi. 2013. Smartphone user interface. In FUJITSU Science Technical Journal.Google Scholar
- A. S. Miller. 2019. Study of the frame rate metric: frames-per-second. https://www.reneelab.com/frames-per-second.html.Google Scholar
- S. Nogd, G. Nelissen, M. Nasri, and B. Brandenburg. 2020. Response-Time Analysis for Non-Preemptive Global Scheduling with FIFO Spin Locks. In IEEE Real-Time Systems Symposium (RTSS). 115--127.Google Scholar
- A. Parate, M. Bohmer, D. Chu, D. Ganesan, and B. M. Marlin. 2013. Practical prediction and prefetch for faster access to applications on mobile phones. In Proceedings of the ACM International Joint Conference on Pervasive and Ubiquitous Computing. 275--284.Google Scholar
- Android Open Source Project. 2012. Source code to manage the Java heap in Android. https://android.googlesource.com/platform/art/+/master/runtime/gc/heap.cc.Google Scholar
- J.P. Rodríguez and P.M. Yomsi. 2019. Thermal-Aware Schedulability Analysis for Fixed-Priority Non-Preemptive Real-Time Systems. In IEEE Real-Time Systems Symposium (RTSS). 154--166.Google Scholar
- M. Saxena and M. M. Swift. 2010. FlashVM: Virtual Memory Management on Flash. In USENIX Annual Technical Conference (USENIX ATC).Google Scholar
- S. Son, S. Y. Lee, Y. Jin, J. Bae, J. Jeong, T. J. Ham, J. W. Lee, and Y. Hongil. 2021. ASAP: Fast Mobile Application Switch via Adaptive Prepaging. In USENIX Annual Technical Conference (USENIX ATC). 365--380.Google Scholar
- H. Sungju, J. Yoo, and S. Hong. 2015. Cross-layer resource control and scheduling for improving interactivity in Android. In Software: Practice and Experience. 1549--1570.Google Scholar
- Pyropus technology. 2017. Memory tester tool memtester. https://pyropus.ca/software/memtester/.Google Scholar
- P. Tseng, P. Hsiu, C. Pan, and T. W. Kuo. 2014. User-Centric Energy-Efficient Scheduling on Multi-Core Mobile Devices. In 51st ACM/EDAC/IEEE Design Automation Conference (DAC). 1--6.Google Scholar
- Website. 2021. Number of Smartphone and Mobile Phone Users Worldwide in 2021/2022: Demographics, Statistics, Predictions. https://financesonline.com/number-of-smartphone-users-worldwide/.Google Scholar
- Website. 2022. Perfetto: system profiling, app tracing and trace analysis. https://perfetto.dev/.Google Scholar
- X. Zhang, R. Bashizade, Y. Wang, S. Mukherjee, and A. R. Lebeck. 2021. Statistical Robustness of Markov Chain Monte Carlo Accelerators. In Proceedings of the 26th ACM International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS). 959--974.Google Scholar
- S. Zhao, H. Gu, and A.J. Mashtizadeh. 2021. SKQ: Event Scheduling for Optimizing Tail Latency in a Traditional OS Kernel. In USENIX Annual Technical Conference (USENIX ATC). 759--772.Google Scholar
- S. Zhao, Z. Luo, Z. Jiang, H. Wang, F. Xu, S. Li, J. Yin, and G. Pan. 2019. AppUsage2Vec: Modeling Smartphone App Usage for Prediction. In IEEE 35th International Conference on Data Engineering (ICDE). 1322--1333.Google Scholar
- X. Zhu, D. Liu, K. Zhong, J. Ren, and T. Li. 2017. Smartswap: High-performance and user experience friendly swapping in mobile systems. In Proceedings of the 54th Annual Design Automation Conference (DAC). 1--6.Google Scholar
Index Terms
- ICE: Collaborating Memory and Process Management for User Experience on Resource-limited Mobile Devices
Recommendations
Phased Scheduling for Resource-Constrained Mobile Devices in Mobile Cloud Computing
Mobile cloud computing combines wireless access service and cloud computing to improve the performance of mobile applications. Mobile cloud computing can balance the application distribution between the mobile device and the cloud, in order to achieve ...
IOSR: Improving I/O Efficiency for Memory Swapping on Mobile Devices Via Scheduling and Reshaping
Special Issue ESWEEK 2023Mobile systems and applications are becoming increasingly feature-rich and powerful, which constantly suffer from memory pressure, especially for devices equipped with limited DRAM. Swapping inactive DRAM pages to the storage device is a promising ...
User authentication on mobile devices: Approaches, threats and trends
AbstractMobile devices have brought a great convenience to us these years, which allow the users to enjoy the anytime and anywhere various applications such as the online shopping, Internet banking, navigation and mobile media. While the users ...
Comments