A Middleware-centric design methodology for networked embedded systems

ion levels Hardware Operating System Host insfrastructure Middleware Fig. 2.2. A level-based middleware classification. host infrastructure middleware include the following: the Adaptive Communication Environment (ACE) [22] is a portable and efficient toolkit that encapsulates native operating system network programming capabilities such as inter-process communication, static and dynamic configuration of application components, and synchronization. Real-Time Java Virtual Machines implement the Real-Time Specification for Java (RTSJ) [23]. The RTSJ is a set of extensions to Java that provide a largely platform-independent way of executing code by encapsulating the differences between real-time operating systems and CPU architectures.. Distribution middleware uses and extends host infrastructure middleware in order to automate common network programming tasks, such as connection and memory management, marshaling and demarshaling, endpoint and request demultiplexing, synchronization, and multithreading. Developers who use distribution middleware can program distributed applications much like stand-alone applications, that is, by invoking operations on target objects without concern for their location, language, OS, or hardware. At the heart of distribution middleware are Object Request Brokers (ORBs), such as Java RMI [24], and CORBA [25]. Common middleware services augment distribution middleware by defining higher-level domain-independent services, such as event notification, logging, persistence, security, and recoverable transactions. Whereas distribution middleware focuses largely on managing end-system resources in support of an object-oriented distributed programming model, common middleware services focus on allocating, scheduling, and coordinating various resources throughout a distributed system. Without common middleware services, these end-to-end capabilities would have to be implemented ad hoc by each networked application. Examples of common middleware services include the OMG’s CORBAServices [26] and the CORBA 2.3 Middleware classification 11 Component Model (CCM) [27], which provide domain-independent interfaces and distribution capabilities that can be used by many distributed applications. The OMG CORBAServices and CCM specifications define a wide variety of these services, including event notification, naming, security, and fault tolerance. Domain-specific middleware services satisfy specific requirements of particular domains, such as telecommunications, e-commerce, health care, process automation, or avionics. Whereas the other object-oriented middleware layers provide broadly reusable ”horizontal” mechanisms and services, domain-specific services target vertical markets. From a ”commercial off-the-shelf” (COTS) perspective, domain-specific services are the least mature of the middleware layers today. This is due in part to the historical lack of middleware standards needed to provide a stable base upon which to create domain-specific services. 2.3 Middleware classification The layer decomposition of the whole middleware architecture is a typical modeldriven approach to simplify the design tasks, and classify the functionalities provided by the middleware. Moreover, almost all actual middleware are cross layer, providing a set of services at each layer. Some research efforts have been directed to the development of new middleware based on different programming paradigms [28]. A programming paradigm allows to program the NES as a standalone application it should hide hardware and distribution issues from the programmer as far as possible. We propose to classify them in following four main classes as reported in Figure 2.3 Middleware classification Database Tuplespace OOM MOM TinyDB T-Spaces TAO Mires Cougar ICE TinyLime ... ... ... ... Fig. 2.3. A programming paradigm-based middleware classification.

[1]  Tobin J. Lehman,et al.  T Spaces : The Next Wave , 2004 .

[2]  Massimo Poncino,et al.  SystemC co-simulation for core-based embedded systems , 2007, Des. Autom. Embed. Syst..

[3]  Michi Henning,et al.  A new approach to object-oriented middleware , 2004, IEEE Internet Computing.

[4]  P. Volgyesi,et al.  Component-based development of networked embedded applications , 2002, Proceedings. 28th Euromicro Conference.

[5]  Massimo Poncino,et al.  A timing-accurate modeling and simulation environment for networked embedded systems , 2003, Proceedings 2003. Design Automation Conference (IEEE Cat. No.03CH37451).

[6]  Fredrik Larsson,et al.  Simics: A Full System Simulation Platform , 2002, Computer.

[7]  Valérie Issarny,et al.  A Perspective on the Future of Middleware-based Software Engineering , 2007, Future of Software Engineering (FOSE '07).

[8]  Jon Siegel Why use the model driven architecture to design and build distributed applications? , 2005, ICSE.

[9]  Johannes Gehrke,et al.  Query Processing in Sensor Networks , 2003, CIDR.

[10]  유승주 Mixed-Level Cosimulation for Fine Gradual Refinement of Communication in SoC Design , 2001 .

[11]  Greg Kroah-Hartman,et al.  Linux Device Drivers , 1998 .

[12]  Franco Fummi,et al.  Mixing Simulated and Actual Hardware Devices to Validate Device Drivers in a Complex Embedded Platform , 2009, 2009 10th International Workshop on Microprocessor Test and Verification.

[13]  David Gelernter,et al.  Generative communication in Linda , 1985, TOPL.

[14]  Massimo Conti,et al.  System level analysis of the Bluetooth standard , 2005, Design, Automation and Test in Europe.

[15]  Franco Fummi,et al.  A HW/SW co-simulation framework for the verification of multi-CPU systems , 2008, 2008 IEEE International High Level Design Validation and Test Workshop.

[16]  Nader Mohamed,et al.  Middleware: middleware challenges and approaches for wireless sensor networks , 2006, IEEE Distributed Systems Online.

[17]  F. Moya,et al.  Leightweight Middleware for Seamless HW-SW Interoperability, with Application to Wireless Sensor Networks , 2007, 2007 Design, Automation & Test in Europe Conference & Exhibition.

[18]  G. Braun,et al.  A universal technique for fast and flexible instruction-set architecture simulation , 2002, Proceedings 2002 Design Automation Conference (IEEE Cat. No.02CH37324).

[19]  Ashish B. Shah,et al.  Common Object Request Broker Architecture (CORBA) , 2015 .

[20]  Chong-Min Kyung,et al.  Enhancing performance of HW/SW cosimulation and coemulation by reducing communication overhead , 2006, IEEE Transactions on Computers.

[21]  Massimo Poncino,et al.  Virtual hardware prototyping through timed hardware-software co-simulation , 2005, Design, Automation and Test in Europe.

[22]  Franco Fummi,et al.  A SystemC-centric approach for simulation and generation of WSN applications targeted to ZigBee , 2009, 2009 6th Annual International Mobile and Ubiquitous Systems: Networking & Services, MobiQuitous.

[23]  Douglas C. Schmidt,et al.  Mastering complexity with ACE and patterns , 2002 .

[24]  Douglas C. Schmidt,et al.  Middleware for Distributed Systems Evolving the Common Structure for Network-centric Applications , 2001 .

[25]  Kyungshik Lim,et al.  The Conversion of a Device And a Control Message in The Universal Middleware Bridge , 2007, 2007 Digest of Technical Papers International Conference on Consumer Electronics.

[26]  Guoliang Xing,et al.  Middleware specialization for memory-constrained networked embedded systems , 2004, Proceedings. RTAS 2004. 10th IEEE Real-Time and Embedded Technology and Applications Symposium, 2004..

[27]  Fabio Ricciato,et al.  Modeling and simulation of mobile gateways interacting with wireless sensor networks , 2006, Proceedings of the Design Automation & Test in Europe Conference.

[28]  Franco Fummi,et al.  A Middleware-centric Design Flow for Networked Embedded Systems , 2007, 2007 Design, Automation & Test in Europe Conference & Exhibition.

[29]  Wei Hong,et al.  TinyDB: an acquisitional query processing system for sensor networks , 2005, TODS.

[30]  G. Martin,et al.  Improving embedded software design and integration in SOCs , 2000, Proceedings of the IEEE 2000 Custom Integrated Circuits Conference (Cat. No.00CH37044).

[31]  Kyungshik Lim,et al.  Scalable message translation mechanism for the environment of heterogeneous middleware , 2007, IEEE Transactions on Consumer Electronics.

[32]  Massimo Poncino,et al.  Heterogeneous co-simulation of networked embedded systems , 2004, Proceedings Design, Automation and Test in Europe Conference and Exhibition.

[33]  Haiyun Luo,et al.  A two-tier data dissemination model for large-scale wireless sensor networks , 2002, MobiCom '02.

[34]  Thorsten Grotker,et al.  System Design with SystemC , 2002 .

[35]  Douglas C. Schmidt,et al.  Model-Driven Engineering , 2006 .

[36]  Ian T. Downard,et al.  Simulating Sensor Networks in NS-2 , 2004 .

[37]  Stathes Hadjiefthymiades,et al.  Sensation: a middleware integration platform for pervasive applications in wireless sensor networks , 2005, Proceeedings of the Second European Workshop on Wireless Sensor Networks, 2005..

[38]  Franco Fummi,et al.  AME: an abstract middleware environment for validating networked embedded systems applications , 2007, 2007 IEEE International High Level Design Validation and Test Workshop.

[39]  Cecilia Mascolo,et al.  "Middleware for Mobile Computing (A Survey)". In Advanced Lectures on Networking , 2002 .

[40]  Twan Basten,et al.  Ambient Intelligence: Impact on Embedded Sytem Design , 2003, Springer US.

[41]  Franco Fummi,et al.  An energy-aware co-simulation framework for the design of wireless sensor networks , 2008, GLSVLSI '08.

[42]  Stuart Kent,et al.  Model Driven Engineering , 2002, IFM.

[43]  Massimo Poncino,et al.  ISS-centric modular HW/SW co-simulation , 2006, GLSVLSI '06.

[44]  Ira Krepchin,et al.  Texas Instruments Inc. , 1963, Nature.

[45]  Fernando Herrera,et al.  System-level performance analysis in SystemC , 2004, Proceedings Design, Automation and Test in Europe Conference and Exhibition.

[46]  Amy L. Murphy,et al.  Programming Wireless Sensor Networks with the TeenyLimeMiddleware , 2007, Middleware.

[47]  Jordi Carrabina,et al.  Mixed SW/SystemC SoC Emulation Framework , 2007, 2007 IEEE International Symposium on Industrial Electronics.

[48]  Luca Benini,et al.  SystemC Cosimulation and Emulation of Multiprocessor SoC Designs , 2003, Computer.

[49]  Aniruddha S. Gokhale,et al.  Developing applications using model-driven design environments , 2006, Computer.

[50]  Adam Wolisz,et al.  A Service-Based Universal Application Interface for Ad-hoc Wireless Sensor Networks , 2003 .

[51]  Cecilia Mascolo,et al.  Mobile Computing Middleware , 2002, NETWORKING Tutorials.

[52]  David Villa,et al.  Lightweight middleware for seamless HW-SW interoperability, with application to wireless sensor networks , 2007, DATE '07.

[53]  Takeshi Yoshimura,et al.  A fast hardware/software co-verification method for systern-on-a-chip by using a C/C++ simulator and FPGA emulator with shared register communication , 2004, Proceedings. 41st Design Automation Conference, 2004..

[54]  Mani B. Srivastava,et al.  SensorSim: a simulation framework for sensor networks , 2000, MSWIM '00.

[55]  Luca Benini,et al.  MPARM: Exploring the Multi-Processor SoC Design Space with SystemC , 2005, J. VLSI Signal Process..

[56]  Nikil D. Dutt,et al.  Extending the transaction level modeling approach for fast communication architecture exploration , 2004, Proceedings. 41st Design Automation Conference, 2004..

[57]  Woo Kim,et al.  Adapting Model Driven Architecture for Modeling Heterogeneous Embedded S/W Components , 2006, 2006 International Conference on Hybrid Information Technology.

[58]  Kay Römer,et al.  Programming Paradigms and Middleware for Sensor Networks , 2004 .

[59]  Deborah Estrin,et al.  GHT: a geographic hash table for data-centric storage , 2002, WSNA '02.

[60]  Franco Fummi,et al.  Networked embedded system applications design driven by an abstract middleware environment , 2009, 2009 Design, Automation & Test in Europe Conference & Exhibition.

[61]  Marija Mikic-Rakic,et al.  A style-aware architectural middleware for resource-constrained, distributed systems , 2005, IEEE Transactions on Software Engineering.

[62]  Rolf Kraemer,et al.  A wireless communication platform for long-term health monitoring , 2006, Fourth Annual IEEE International Conference on Pervasive Computing and Communications Workshops (PERCOMW'06).

[63]  Amy L. Murphy,et al.  TinyLIME: bridging mobile and sensor networks through middleware , 2005, Third IEEE International Conference on Pervasive Computing and Communications.

[64]  Luca Benini,et al.  NoC synthesis flow for customized domain specific multiprocessor systems-on-chip , 2005, IEEE Transactions on Parallel and Distributed Systems.

[65]  David E. Culler,et al.  TOSSIM: accurate and scalable simulation of entire TinyOS applications , 2003, SenSys '03.

[66]  Franco Fummi,et al.  Co-simulation framework for the Angel platform , 2007, 2007 14th IEEE International Conference on Electronics, Circuits and Systems.

[67]  D. B. Davis,et al.  Sun Microsystems Inc. , 1993 .

[68]  Chieh-Yih Wan,et al.  PSFQ: a reliable transport protocol for wireless sensor networks , 2002, WSNA '02.

[69]  Carlos André Guimarães Ferraz,et al.  A message-oriented middleware for sensor networks , 2004, MPAC '04.

[70]  Ahmed Amine Jerraya,et al.  Timed HW-SW cosimulation using native execution of OS and application SW , 2002, Seventh IEEE International High-Level Design Validation and Test Workshop, 2002..

[71]  Davide Quaglia,et al.  Gateway and Middleware Design: trusted WSN-TLC network communication and enhanced WSN management , 2007, 2007 14th IEEE International Conference on Electronics, Circuits and Systems.

[72]  H. Weinberg Using the ADXL202 in Pedometer and Personal Navigation Applications , 2002 .

[73]  Richard Zurawski Networked embedded systems , 2009 .

[74]  Franco Fummi,et al.  Flexible energy-aware simulation of heterogenous wireless sensor networks , 2009, 2009 Design, Automation & Test in Europe Conference & Exhibition.