Lightweight Component Models for Embedded Systems

H. John Reekie1
(Professor Edward A. Lee)
Agilent Technologies, Cadence Design Systems, California MICRO, DARPA, Hitachi, MARCO/DARPA Gigascale Silicon Research Center, National Science Foundation, National Semiconductor, and Philips

We are exploring the concept of software component [1] in the context of embedded and real-time systems. Although the term "component" is used in many different ways, the term is coming to have an established meaning in software design and implementation, and we follow the emerging usage of this term. Intuitively, a software component is a piece of software that can be "plugged into" some other piece of software.

In the Ptolemy Project, we have been exploring systems modeling using actors and models of computation for some time [2]. Actor-oriented software design is a natural choice for embedded systems components, and we believe that software component models specifically designed for embedded systems offer promise for improving the ability to "bridge the gap" from systems modeling efforts to implementation. We have proposed two lightweight component models, deliberately making different design choices so that we can explore this design space [3].

The first model, Actif, is being developed as a model suitable for implementation in native binary formats. It has a separate executable and interface, and a controller that is synthesized from the component interfaces. We believe that Actif, although it will take longer to develop suitable infrastructure support, will prove to be a more powerful tool for building reliable real-time systems. The second model, Compact, is being developed as a lightweight framework for execution of components in Java. Its primary aim is to provide a means by which components developed by different authors can be executed in more than one execution framework, again developed by different authors.

We are presently exploring the use of interface automata [4] to abstract and compose Actif actors. Moving forward, we expect to work on implementation of these component models.

[1]
C. Szyperski, Component Software: Beyond Object-Oriented Programming, Addison-Wesley, 1998.
[2]
The Ptolemy project: http://ptolemy.eecs.berkeley.edu.
[3]
H. J. Reekie and E. A. Lee, Lightweight Component Models for Embedded Systems, UC Berkeley Electronics Research Laboratory, Memorandum No. UCB/ERL M02/30, October 2002.
[4]
L. de Alfaro and T. A. Henzinger, "Interface Automata," Proc. Symp. Foundations of Software Engineering, ACM Press, 2001.
1Postdoctoral Researcher

More information (http://ptolemy.eecs.berkeley.edu/~johnr/) or

Send mail to the author : (johnr@eecs.berkeley.edu)


Edit this abstract