skip to main content
research-article

Inspection and Characterization of App File Usage in Mobile Devices

Published:24 September 2020Publication History
Skip Abstract Section

Abstract

While the computing power of mobile devices has been quickly evolving in recent years, the growth of mobile storage capacity is, however, relatively slower. A common problem shared by budget-phone users is that they frequently run out of storage space. This article conducts a deep inspection of file usage of mobile applications and their potential implications on user experience. Our major findings are as follows: First, mobile applications could rapidly consume storage space by creating temporary cache files, but these cache files quickly become obsolete after being re-used for a short period of time. Second, file access patterns of large files, especially executable files, appear highly sparse and random, and therefore large portions of file space are never visited. Third, file prefetching brings an excessive amount of file data into page cache but only a few prefetched data are actually used. The unnecessary memory pressure causes premature memory reclamation and prolongs application launching time. Through the feasibility study of two preliminary optimizations, we demonstrated a high potential to eliminate unnecessary storage and memory space consumption with a minimal impact on user experience.

References

  1. Hyojun Kim, Nitin Agrawal, and Cristian Ungureanu. 2012. Revisiting storage for smartphones. ACM Trans. Stor. 8, 4 (2012), 1--25.Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Wongun Lee, Keonwoo Lee, Hankeun Son, Wook-Hee Kim, Beomseok Nam, and Youjip Won. 2015. WALDIO: Eliminating the filesystem journaling in resolving the journaling of journal anomaly. In Proceedings of the 2015 USENIX Conference on Usenix Annual Technical Conference. USENIX Association, 235--247.Google ScholarGoogle Scholar
  3. Sooman Jeong, Kisung Lee, Seongjin Lee, Seoungbum Son, and Youjip Won. 2013. I/O Stack optimization for smartphones. In Proceedings of the International Conference on Advanced Technologies for Communications (ATC’13).Google ScholarGoogle Scholar
  4. Daeho Jeong, Youngjae Lee, and Jin-Soo Kim. 2015. Boosting quasi-asynchronous I/O for better responsiveness in mobile devices. In Proceedings of the 13th USENIX Conference on File and Storage Technologies. USENIX Association, 191--202.Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. David T. Nguyen, Gang Zhou, Guoliang Xing, Xin Qi, Zijiang Hao, Ge Peng, and Qing Yang. 2015. Reducing smartphone application delay through read/write isolation. In Proceedings of the 13th Annual International Conference on Mobile Systems, Applications, and Services (MobiSys’15). ACM, 287--300.Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Jongmin Lee, Yongseok Oh, Hunki Kwon, Jongmoo Choi, Donghee Lee, and Sam H. Noh. 2013. TinyFTL: An FTL architecture for flash memory cards with scarce resources. In Proceedings of the ACM Asia-Pacific Workshop on Systems (APSYS’13). ACM, 16.Google ScholarGoogle Scholar
  7. Cheng Ji, Li-Pin Chang, Liang Shi, Congming Gao, Chao Wu, Yuangang Wang, and Chun Jason Xue. 2017. Lightweight data compression for mobile flash storage. ACM Trans. Embedd. Comput. Syst. 16, 5s (2017), 183.Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Jace Courville and Feng Chen. 2016. Understanding storage i/o behaviors of mobile applications. In Proceedings of IEEE Symposium on Massive Storage Systems and Technologies (MSST’16).Google ScholarGoogle ScholarCross RefCross Ref
  9. Kisung Lee and Youjip Won. 2012. Smart layers and dumb result: IO characterization of an Android-based smartphone. In Proceedings of International Conference on Embedded Software (EMSOFT’12). ACM, 23--32.Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Peter of GSMArena. 2017. Counterclockwise: Looking Back at the Ever Growing CPU Core Count of Mobile Chipsets. Retrieved from https://www.gsmarena.com/counterclockwise_looking_back_at_the_ever_growing_cpu_core_count_of_mobile_chipsets-news-26454.php.Google ScholarGoogle Scholar
  11. Peter of GSMArena. 2018. Counterclockwise: Base Storage Grows, But the Card Slot Remains Popular. Retrieved from https://www.gsmarena.com/counterclockwise_base%_storage_grows-news-29440.php.Google ScholarGoogle Scholar
  12. Kevin Purdy. 2014. Insufficient Storage Available’ Is One of Android’s Greatest Annoyances. Retrieved from https://www.itworld.com/article/2833377/mobile/insufficient-storage-available-is-one-of-android-s-greatest-annoyances-here-s-how-to-fix-it.html.Google ScholarGoogle Scholar
  13. Xiaoqing Luo, Frank Mueller, Philip Carns, Jonathan Jenkins, Robert Latham, Robert Ross, and Shane Snyder. 2017. ScalaIOExtrap: Elastic i/o tracing and extrapolation. In Proceedings of the 2017 IEEE International Parallel and Distributed Processing Symposium (IPDPS’17). IEEE, 585--594.Google ScholarGoogle ScholarCross RefCross Ref
  14. Tyler Harter, Chris Dragga, Michael Vaughn, Andrea C. Arpaci-Dusseau, and Remzi H. Arpaci-Dusseau. 2012. A file is not a file: Understanding the I/O behavior of Apple desktop applications. ACM Trans. Comput. Syst. 30, 3 (2012), 10.Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Jonathan Corbet. 2015. Adaptive File Readahead. Retrieved from https://lwn.net/Articles/155510/.Google ScholarGoogle Scholar
  16. Song Jiang, Xiaoning Ding, Yuehai Xu, and Kei Davis. 2013. A prefetching scheme exploiting both data layout and access history on disk. ACM Trans. Stor. 9, 3 (2013), 10.Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. 2015. Managing Your App’s Memory. Retrieved from https://developer.android.com/training/articles/memory.html.Google ScholarGoogle Scholar
  18. 2015. App Programming Guide for iOS: The App Life Cycle. Retrieved from https://developer.apple.com/library/ios/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/TheAppLifeCycle/TheAppLifeCycle.html.Google ScholarGoogle Scholar
  19. Jang Hyun Kim, Junghwan Sung, Sang Yun Hwang, and Hyo-Joong Suh. 2015. A novel Android memory management policy focused on periodic habits of a user. In Ubiquitous Computing Application and Wireless Sensor. Springer, 143--149.Google ScholarGoogle Scholar
  20. Sang-Hoon Kim, Jinkyu Jeong, and Jin-Soo Kim. 2017. Application-aware swapping for mobile systems. ACM Trans. Embedd. Comput. Syst. 16, 5s (2017), 182.Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. 2018. UI Automator. Retrieved from https://developer.android.com/training/testing/ui-automator.Google ScholarGoogle Scholar
  22. Cameron Summerson. 2016. Five Ways to Free Up Space on Your Android Device. Retrieved from https://www.howtogeek.com/112356/5-ways-to-free-up-space-on-android/.Google ScholarGoogle Scholar
  23. 2018. Files Go. Retrieved from https://filesgo.google.com/.Google ScholarGoogle Scholar
  24. 2011. Ensuring Data Reaches Disk. Retrieved from https://lwn.net/Articles/457667/.Google ScholarGoogle Scholar
  25. Byungjo Kim, Dong Hyun Kang, Changwoo Min, and Young Ik Eom. 2014. Understanding implications of trim, discard, and background command for eMMC storage device. In Proceedings of the 2014 IEEE 3rd Global Conference onConsumer Electronics (GCCE’14). IEEE, 709--710.Google ScholarGoogle Scholar
  26. Sangwook Shane Hahn, Sungjin Lee, Cheng Ji, Li-Pin Chang, Inhyuk Yee, Liang Shi, Chun Jason Xue, and Jihong Kim. 2017. Improving file system performance of mobile storage systems using a decoupled defragmenter. In Proceedings of the USENIX International Conference on Advanced Technologies for Communications (ATC’17).Google ScholarGoogle Scholar
  27. Takashi Sato. 2007. Ext4 online defragmentation. In Proceedings of the Linux Symposium, Vol. 2. Citeseer, 179--86.Google ScholarGoogle Scholar
  28. Clayton Shepard, Ahmad Rahmati, Chad Tossell, Lin Zhong, and Phillip Kortum. 2011. LiveLab: Measuring wireless networks and smartphone users in the field. ACM SIGMETRICS Perf. Eval. Rev. 38, 3 (2011), 15--20.Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Duo Liu, Kan Zhong, Xiao Zhu, Yang Li, Lingbo Long, and Zili Shao. 2017. Non-volatile memory based page swapping for building high-performance mobile devices. IEEE Trans. Comput. 66, 11 (2017), 1918--1931.Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. Amos Waterland. 2014. Stress is a deliberately simple workload generator for POSIX systems. Retrieved from https://people.seas.harvard.edu/ apw/stress/.Google ScholarGoogle Scholar
  31. 2018. Test UI performance. Retrieved from https://developer.android.com/training/testing/performance.Google ScholarGoogle Scholar
  32. 2014. systrace. Retrieved from https://developer.android.com/studio/command-line/systrace.Google ScholarGoogle Scholar

Index Terms

  1. Inspection and Characterization of App File Usage in Mobile Devices

        Recommendations

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in

        Full Access

        • Published in

          cover image ACM Transactions on Storage
          ACM Transactions on Storage  Volume 16, Issue 4
          Special Section on Computational Storage and Regular Papers
          November 2020
          185 pages
          ISSN:1553-3077
          EISSN:1553-3093
          DOI:10.1145/3426401
          • Editor:
          • Sam H. Noh
          Issue’s Table of Contents

          Copyright © 2020 ACM

          Publisher

          Association for Computing Machinery

          New York, NY, United States

          Publication History

          • Published: 24 September 2020
          • Accepted: 1 June 2020
          • Revised: 1 March 2020
          • Received: 1 April 2019
          Published in tos Volume 16, Issue 4

          Permissions

          Request permissions about this article.

          Request Permissions

          Check for updates

          Qualifiers

          • research-article
          • Research
          • Refereed

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader

        HTML Format

        View this article in HTML Format .

        View HTML Format
        About Cookies On This Site

        We use cookies to ensure that we give you the best experience on our website.

        Learn more

        Got it!