skip to main content
10.1145/2451512.2451536acmconferencesArticle/Chapter ViewAbstractPublication PagesveeConference Proceedingsconference-collections
research-article

Traveling forward in time to newer operating systems using ShadowReboot

Published:16 March 2013Publication History

ABSTRACT

Operating system (OS) reboots are an essential part of updating kernels and applications on laptops and desktop PCs. Long downtime during OS reboots severely disrupts users' computational activities. This long disruption discourages the users from conducting OS reboots, failing to enforce them to conduct software updates. This paper presents ShadowReboot, a virtual machine monitor (VMM)-based approach that shortens downtime of OS reboots in software updates. ShadowReboot conceals OS reboot activities from user's applications by spawning a VM dedicated to an OS reboot and systematically producing the rebooted state where the updated kernel and applications are ready for use. ShadowReboot provides an illusion to the users that the guest OS travels forward in time to the rebooted state. ShadowReboot offers the following advantages. It can be used to apply patches to the kernels and even system configuration updates. Next, it does not require any special patch requiring detailed knowledge about the target kernels. Lastly, it does not require any target kernel modification. We implemented a prototype in VirtualBox 4.0.10 OSE. Our experimental results show that ShadowReboot successfully updated software on unmodified commodity OS kernels and shortened the downtime of commodity OS reboots on five Linux distributions (Fedora, Ubuntu, Gentoo, Cent, and SUSE) by 91 to 98%.

References

  1. Y. Abe, H. Yamada, and K. Kono. Enforcing Appropriate Process Execution for Exploiting Idle Resources from Outside Operating Systems. In Proceedings of the 3rd ACM European Conference on Computer Systems (EuroSys '08), pages 27--40, Apr. 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. J. Arnold and M. F. Kaashoek. Ksplice: Automatic Rebootless Kernel Updates. In Proceedings of the 4th ACM European Conference on Computer Systems (EuroSys '09), pages 187--198, Apr. 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. A. Baumann, J. Appavoo, R. W. Wisniewski, D. D. Silva, O. Krieger, and G. Heiser. Reboots are for Hardware: Challenges and Solutions to Updating an Operating System on the Fly. In Proceedings of the USENIX Annual Technical Conference (ATC '07), pages 337--350, Jun. 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. N. Bila, E. de Lara, K. Joshi, H. A. Lagar-Cavilla, M. Hiltunen, and M. Satyanarayanan. Jettison: Efficient Idle Desktop Consolidation with Partial Migration. In Proceedings of the 7th ACM European Conference on Computer Systems (EuroSys '12), pages 211--224, Apr. 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. H. Chen, R. Chen, F. Zhang, B. Zang, and P.-C. Yew. Live Updating Operating Systems Using Virtualization. In Proceedings of the 2nd ACM International Conference on Virtual Execution Environments (VEE '06), pages 35--44, Jun. 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. B.-G. Chun, S. Ihm, P. Maniatis, M. Naik, and A. Patti. CloneCloud: Elastic Execution between Mobile Device and Cloud. In Proc. of the 6th ACM European Conference on Computer Systems (EuroSys '11), pages 301--314, Apr. 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. A. Depoutovitch and M. Stumm. Otherworld - Giving Applications a Change to Servive OS Kernel Crashes. In Proceedings of the 5th ACM European Conference on Computer Systems (EuroSys '10), pages 181--194, Apr. 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. L. Eggert and J. D. Touch. Idletime Scheduling with Preemption Intervals. In Proceedings of the 20th ACM Symposium on Operating Systems Principles (SOSP '05), pages 249--262, Oct. 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. FFmpeg Project. Ffmpeg. http://ffmpeg.org/.Google ScholarGoogle Scholar
  10. D. Gupta, S. Lee, M. Vrable, S. Savage, A. C. Snoeren, G. Varghese, G. M. Voelker, and A. Vahdat. Difference Engine: Harnessing Memory Redundancy in Virtual Machines. In Proceedings of the 8th USENIX Symposium on Operating Systems Design and Implementation (OSDI '08), pages 309--322, Dec. 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. O. Krieger, M. Auslander, B. Rosenburg, R. W. Wisniewski, J. Xenidis, D. D. Silva, M. Ostrowski, J. Appavoo, M. Butrico, M. Mergen, A.Waterland, and V. Uhlig. K42: Building a Complete Operating System. In Proceedings of the 1st ACM European Conference on Computer Systems (EuroSys '06), pages 133--145, Apr. 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. G. Kroah-Hartman, J. Corbet, and A. McPherson. Linux kernel development, 2009.Google ScholarGoogle Scholar
  13. H. A. Lagar-Cavilla, J. A. Whitney, A. M. Scannell, P. Patchin, S. M. Rumble, E. de Lara, M. Brudno, and M. Satyanarayanan. SnowFlock: Rapid Virtual Machine Cloning for Could Computing. In Proceedings of the 4th ACM European Conf. on Computer Systems (EuroSys '09), pages 1--12, Apr. 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. D. E. Lowell, Y. Saito, and E. J. Samberg. Devirtualizable Virtual Machines Enabling General, Single-Node, Online Maintenance. In Proceedings of the 11th ACM International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS '04), pages 211--223, Oct. 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. C. R. Lumb, J. Schindler, and G. R. Ganger. Freeblock Scheduling Outside of Disk Firmware. In Proceedings of the 1st USENIX Symposium on File and Storage Technologies (FAST '02), pages 10--22, Jan. 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. K. Makris and K. D. Ryu. Dynamic and Adaptive Updates of Non-Quiescent Subsystems in Commodity Operating System Kernels. In Proceedings of the 2nd ACM European Conference on Computer Systems (EuroSys '07), pages 327--340, Mar. 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. G. Milos, D. G. Murray, S. Hand, and M. A. Fetterman. Satori: Enlightened page sharing. In Proceedings of the USENIX Annual Technical Conference (USENIX '09), pages 1--14, Jun. 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. ORACLE. Virtualbox, 2007. http://www.virualbox.org.Google ScholarGoogle Scholar
  19. C. A. N. Soules, J. Appavoo, K. Hui, R. W. Wisniewski, D. D. Silva, G. R. Ganger, O. Krieger, M. Stumm, M. Auslander, M. Ostrowski, B. Rosenburg, and J. Xenidis. System Support for Online Reconfiguration. In Proceedings of the USENIX Annual Technical Conference (ATC '03), pages 141--154, Jun. 2003.Google ScholarGoogle Scholar
  20. M. M. Swift, M. Annamalai, B. N. Bershad, and H. M. Levy. Recoverying device drivers. In Proceedings of the 6th USENIX Symposium on Operating Systems Design and Implementation (OSDI '04), pages 1--16, Dec. 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. M. M. Swift, D. Martin-Guillerez, M. Annamalai, B. N. Bershad, and H. M. Levy. Live Update for Device Drivers. Technical Report CSTR- 2008-1634, University of Winsconsin Computer Sciences, Mar. 2008.Google ScholarGoogle Scholar
  22. The Apache Software Foundation. Apache HTTP server, 1995. http://www.apache.org/.Google ScholarGoogle Scholar
  23. M. Vrable, J. Ma, J. Chen, D. Moore, E. Vandekieft, A. Snoeren, G. Voelker, and S. Savage. Scalability, Fidelity, and Containment in the Potemkin Virtual Honeyfarm. In Proceedings of the 20th ACM Symposium on Operating Systems Principles (SOSP '05), pages 148--162, Oct. 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. C. A. Waldspurger. Memory Resource Management in VMware ESX Server. In Proceedings of the 5th USENIX Symposium on Operating System Design and Implementation (OSDI '02), pages 181--194, Dec. 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. K. Yamakita, H. Yamada, and K. Kono. Phase-based Reboot: Reusing Operating System Execution Phases for Cheap Reboot-based Recovery. In Proc. of the 41st Annual IEEE/IFIP International Conference on Dependable Systems and Networks (DSN '11), pages 169--180, Jun. 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Traveling forward in time to newer operating systems using ShadowReboot

      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
      • Published in

        cover image ACM Conferences
        VEE '13: Proceedings of the 9th ACM SIGPLAN/SIGOPS international conference on Virtual execution environments
        March 2013
        210 pages
        ISBN:9781450312660
        DOI:10.1145/2451512
        • cover image ACM SIGPLAN Notices
          ACM SIGPLAN Notices  Volume 48, Issue 7
          VEE '13
          July 2013
          194 pages
          ISSN:0362-1340
          EISSN:1558-1160
          DOI:10.1145/2517326
          Issue’s Table of Contents

        Copyright © 2013 ACM

        Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 16 March 2013

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • research-article

        Acceptance Rates

        Overall Acceptance Rate80of235submissions,34%

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader