• DocumentCode
    2828755
  • Title

    Runtime Programming through Model-Preserving, Scalable Runtime Patches

  • Author

    Kirsch, Christoph M. ; Lopes, Luís ; Marques, Eduardo R B ; Sokolova, Ana

  • Author_Institution
    Dept. of Comput. Sci., Univ. of Salzburg, Salzburg, Austria
  • fYear
    2011
  • fDate
    20-24 June 2011
  • Firstpage
    77
  • Lastpage
    86
  • Abstract
    We consider a methodology for flexible software design, runtime programming, defined by recurrent, incremental software modifications to a program at runtime, called runtime patches. The principles we consider for runtime programming are model preservation and scalability. Model preservation means that a runtime patch preserves the programming model in place for programs -- in terms of syntax, semantics, and correctness properties -- as opposed to an ``ad-hoc´´, disruptive operation, or one that requires an extra level of abstraction. Scalability means that, for practicality and performance, the effort in program compilation required by a runtime patch should ideally scale in proportion to the change induced by it. We formulate runtime programming over an abstract model for component-based concurrent programs, defined by a modular relation between the syntax and semantics of programs, plus built-in notions of initialization and quiescence. The notion of a runtime patch is defined over these assumptions, as a model-preserving transition between two programs and respective states. Additionally, we propose an incremental compilation framework for scalability in patch compilation. The formulation is put in perspective through a case-study instantiation over a language for distributed hard real-time systems, the Hierarchical Timing Language (HTL).
  • Keywords
    object-oriented methods; program compilers; software engineering; component-based concurrent programs; flexible software design; hierarchical timing language; incremental software modifications; model preservation; patch compilation; program compilation; runtime patches; runtime programming; Programming; Real time systems; Runtime; Scalability; Semantics; Switches; Syntactics; compilation; component-based systems; concurrency; modularity; reconfigurable systems; runtime patching; runtime programming; scalability;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Application of Concurrency to System Design (ACSD), 2011 11th International Conference on
  • Conference_Location
    Newcastle Upon Tyne
  • ISSN
    1550-4808
  • Print_ISBN
    978-1-61284-974-4
  • Type

    conf

  • DOI
    10.1109/ACSD.2011.28
  • Filename
    5988920