skip to main content
10.1145/2984043.2984049acmconferencesArticle/Chapter ViewAbstractPublication PagessplashConference Proceedingsconference-collections
short-paper

Towards practical release-level dynamic software updating on stock Java: evaluating an efficient and safely programmable Java dynamic updating system

Published:20 October 2016Publication History

ABSTRACT

Towards more usable dynamic software updating on stock Java, we propose (1) a programming model that transformation code can be statically type-checked against, also featuring type-safe execution of transformation code; (2) an efficient checkpointable eager state transformation approach that avoids hazards of deadlocks and data-races when transformation code is executed, also allowing to seamlessly abort an update if any exception occurs; and (3) a programming approach based on assertions to abort dynamic updates if assumptions of transformation code are not met. We implement the three aspects in a dynamic updating system to study their performance and usability.

References

  1. 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, New York, NY, USA, 2009. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. T. Gu, C. Cao, C. Xu, X. Ma, L. Zhang, and J. Lu. Javelus: A Low Disruptive Approach to Dynamic Software Updates. In Proceedings of the 2012 19th Asia-Pacific Software Engineering Conference - Volume 01, APSEC ’12, pages 527–536, Washington, DC, USA, 2012. IEEE Computer Society. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. J. Kabanov. JRebel Tool Demo. Electron. Notes Theor. Comput. Sci., 264(4):51–57, Feb. 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. S. Magill, M. Hicks, S. Subramanian, and K. S. McKinley. Automating Object Transformations for Dynamic Software Updating. In Proceedings of the ACM Conference on Object Oriented Programming Systems Languages and Applications, OOPSLA ’12, pages 265–280, New York, NY, USA, 2012. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. L. Pina and M. Hicks. Tedsuto: A general framework for testing dynamic software updates. In Proceedings of the IEEE 9th International Conference on Software Testing, Verification and Validation, ICST, Apr. 2016.Google ScholarGoogle ScholarCross RefCross Ref
  6. L. Pina, L. Veiga, and M. Hicks. Rubah: DSU for Java on a Stock JVM. In Proceedings of the 2014 ACM Conference on Object Oriented Programming Systems Languages & Applications, OOPSLA ’14, pages 103–119, New York, NY, USA, 2014. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. S. Subramanian, M. Hicks, and K. S. McKinley. Dynamic Software Updates: A VM-centric Approach. In Proceedings of the 30th ACM SIGPLAN Conference on Programming Language Design and Implementation, PLDI ’09, pages 1–12, New York, NY, USA, 2009. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. T. Würthinger, C. Wimmer, and L. Stadler. Unrestricted and Safe Dynamic Code Evolution for Java. Sci. Comput. Program., 78 (5):481–498, May 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Towards practical release-level dynamic software updating on stock Java: evaluating an efficient and safely programmable Java dynamic updating system

    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
      SPLASH Companion 2016: Companion Proceedings of the 2016 ACM SIGPLAN International Conference on Systems, Programming, Languages and Applications: Software for Humanity
      October 2016
      72 pages
      ISBN:9781450344371
      DOI:10.1145/2984043
      • General Chair:
      • Eelco Visser

      Copyright © 2016 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 the author(s) 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: 20 October 2016

      Permissions

      Request permissions about this article.

      Request Permissions

      Check for updates

      Qualifiers

      • short-paper

      Upcoming Conference

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader