A dynamic platform for run-time adaptation

被引:4
|
作者
Hubert Pham [1 ]
Paluska, Justin Mazzola [1 ]
Saif, Umar [2 ]
Stawarz, Chris [1 ]
Terman, Chris [1 ]
Ward, Steve [1 ]
机构
[1] MIT Comp Sci & Artificial Intelligence Lab, Cambridge, MA USA
[2] LUMS Comp Sci Dept, Lahore, Pakistan
关键词
Middleware platform; Adaptive/Dynamic applications; Block-diagram application construction; Distributed processing; Fault tolerance; MIDDLEWARE; FRAMEWORK;
D O I
10.1016/j.pmcj.2009.07.003
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
We present a middleware platform for assembling pervasive applications that demand fault-tolerance and adaptivity in distributed, dynamic environments. Unlike typical adaptive middleware approaches, in which sophisticated component model semantics are embedded into an existing, underlying platform (e.g., CORBA, COM, EJB), we propose a platform that imposes minimal constraints for greater flexibility. Such a tradeoff is advantageous when the platform is targeted by automatic code generators that inherently enforce correctness by construction. Applications are written as simple, single-threaded programs that assemble and monitor a set of distributed components. The approach decomposes applications into two distinct layers: (1) a distributed network of interconnected modules performing computations, and (2) constructor logic that assembles that network via a simple block-diagram construction API. The constructor logic subsequently monitors the configured system via a stream of high-level events, such as notifications of resource availability or failures, and consequently provides a convenient, centralized location for reconfiguration and debugging. The component network is optimized for performance, while the construction API is optimized for ease of assembly. Microbenchmarks indicate that our runtime incurs minimal overhead. In addition to describing the programming model, platform implementation, and a variety of pervasive applications built using our system, this paper also extends our previous work with a thorough analysis of remote objects and tracking techniques, new contributions in distributed component liveness-monitoring approaches, and expanded microbenchmarks. (C) 2009 Elsevier B.V. All rights reserved.
引用
收藏
页码:676 / 696
页数:21
相关论文
共 50 条
  • [41] Research and Design of Dynamic Run-time Database of Atmosphere
    Wang Li-xin
    Kang Jing
    [J]. PROCEEDINGS OF THE FIRST INTERNATIONAL WORKSHOP ON EDUCATION TECHNOLOGY AND COMPUTER SCIENCE, VOL I, 2009, : 680 - 684
  • [42] Static, dynamic and run-time modeling of compound classes
    Agarwal, R
    Bruno, G
    Torchiano, M
    [J]. ACM SIGPLAN NOTICES, 1996, 31 (11) : 49 - 55
  • [43] A portable approach to dynamic optimization in run-time specialization
    Hidehiko Masuhara
    Akinori Yonezawa
    [J]. New Generation Computing, 2002, 20 : 101 - 124
  • [44] Towards Run-Time Testing of Dynamic Adaptive Systems
    Fredericks, Erik M.
    Ramirez, Andres J.
    Cheng, Betty H. C.
    [J]. PROCEEDINGS OF THE 8TH INTERNATIONAL SYMPOSIUM ON SOFTWARE ENGINEERING FOR ADAPTIVE AND SELF-MANAGING SYSTEMS (SEAMS 2013), 2013, : 169 - 174
  • [45] Analysis and run-time verification of dynamic security policies
    Janicke, Helge
    Siewe, Frangois
    Jones, Kevin
    Cau, Antonio
    Zedan, Hussein
    [J]. DEFENCE APPLICATIONS OF MULTI-AGENT SYSTEMS, 2006, 3890 : 92 - 103
  • [46] Dynamic binary translation using run-time feedbacks
    Ung, D
    Cifuentes, C
    [J]. SCIENCE OF COMPUTER PROGRAMMING, 2006, 60 (02) : 189 - 204
  • [47] Run-time correction
    Grubb, WA
    [J]. OIL & GAS JOURNAL, 2004, 102 (13) : 10 - 10
  • [48] RUN-TIME DEBUGGERS
    NELSON, T
    [J]. DR DOBBS JOURNAL, 1993, 18 (12): : 36 - 36
  • [49] Run-time verification
    Colin, S
    Mariani, L
    [J]. MODEL-BASED TESTING OF REACTIVE SYSTEMS, 2005, 3472 : 525 - 555
  • [50] A Reliable, Safe, and Secure Run-Time Platform for Cyber Physical Systems
    Lim, Sung-Soo
    Im, Eun-Jin
    Dutt, Nikil
    Lee, Kyung Woo
    Shin, Insik
    Lee, Chang-Gun
    Lee, Insup
    [J]. 2013 IEEE SIXTH INTERNATIONAL CONFERENCE ON SERVICE-ORIENTED COMPUTING AND APPLICATIONS (SOCA), 2013, : 268 - 274