32nd International Conference on Technology of Object-Oriented Languages
A C++ Framework for Active Objects in Embedded Real-time Systems-Bridging the Gap Between Modeling and Implementation
Melbourne, Australia
November 22-November 25
ISBN: 0-7695-0462-0
In research communities it is now well-accepted that the object paradigm provides a good foundation for the challenges of concurrent and distributed computing. For practitioners, however, it is not without problems to combine the concepts of processes and objects. A major reason for this is that the predominant object-oriented programming language in industry, C++, does not support concurrency.In this paper we present a simple and powerful approach to extending C++ with constructs for concurrent programming. We discuss the design, application, and implementation of a framework that supports standard concurrency constructs and, contrary to what is suggested in several books on object-oriented modeling techniques for real-time systems, we demonstrate that it is possible to integrate the notions of object and process and maintain a smooth ?virtually non-existing? transition from modeling to implementation.The framework has been used at Bang & Olufsen, a major Danish manufacturer of audio and video equipment, to develop software for a CD player; we illustrate the strength of the approach with examples from this project. As a pleasant side benefit, the framework approach results in a considerable reduction of the code size of more than 50% compared to earlier versions of the system.
Index Terms:
Object technology, concurrency, active objects, embedded systems, real-time methods, frameworks, C++
Citation:
Michael E. Caspersen, "A C++ Framework for Active Objects in Embedded Real-time Systems-Bridging the Gap Between Modeling and Implementation," tools, pp.52, 32nd International Conference on Technology of Object-Oriented Languages, 1999
Usage of this product signifies your acceptance of the
Terms of Use.
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||