The Evolving Philosophers Problem: Dynamic Change Management
IEEE Transactions on Software Engineering
The X-Kernel: An Architecture for Implementing Network Protocols
IEEE Transactions on Software Engineering
Software versus hardware shared-memory implementation: a case study
ISCA '94 Proceedings of the 21st annual international symposium on Computer architecture
Dynamic reconfiguration of distributed applications
Dynamic reconfiguration of distributed applications
Exokernel: an operating system architecture for application-level resource management
SOSP '95 Proceedings of the fifteenth ACM symposium on Operating systems principles
Background memory management for dynamic data structure intensive processing systems
ICCAD '95 Proceedings of the 1995 IEEE/ACM international conference on Computer-aided design
Horus: a flexible group communication system
Communications of the ACM
Design of Dynamically Reconfigurable Real-Time Software Using Port-Based Objects
IEEE Transactions on Software Engineering
Reusable coordinator modules for massively concurrent applications
Software—Practice & Experience
Space-time memory: a parallel programming abstraction for interactive multimedia applications
Proceedings of the seventh ACM SIGPLAN symposium on Principles and practice of parallel programming
A coordination language for mobile components
SAC '00 Proceedings of the 2000 ACM symposium on Applied computing - Volume 1
YAPI: application modeling for signal processing systems
Proceedings of the 37th Annual Design Automation Conference
Data memory minimization by sharing large size buffers
ASP-DAC '00 Proceedings of the 2000 Asia and South Pacific Design Automation Conference
Experience with memory management in open Linda systems
Proceedings of the 2001 ACM symposium on Applied computing
A scalable and flexible data synchronization scheme for embedded HW-SW shared-memory systems
Proceedings of the 14th international symposium on Systems synthesis
Mapping array communication onto FIFO communication - towards an implementation
ISSS '00 Proceedings of the 13th international symposium on System synthesis
JavaSpaces Principles, Patterns, and Practice
JavaSpaces Principles, Patterns, and Practice
The IWIM Model for Coordination of Concurrent Activities
COORDINATION '96 Proceedings of the First International Conference on Coordination Languages and Models
Jada - Coordination and Communication for Java Agents
MOS '96 Selected Presentations and Invited Papers Second International Workshop on Mobile Object Systems - Towards the Programmable Internet
System Design: Traditional Concepts and New Paradigms
ICCD '99 Proceedings of the 1999 IEEE International Conference on Computer Design
HW-SW Co-Design and Verification of a Multi-Standard Video and Image Codec
ISQED '01 Proceedings of the 2nd International Symposium on Quality Electronic Design
Bonita: A set of tuple space primitives for distributed coordination
HICSS '97 Proceedings of the 30th Hawaii International Conference on System Sciences: Software Technology and Architecture - Volume 1
Guaranteeing the quality of services in networks on chip
Networks on chip
Hi-index | 0.00 |
We investigate the use of communication protocols and coordination languages (henceforth interaction languages) for high-volume consumer electronics products in the multimedia application domain. Interaction languages are used to reduce the cost of designing a product by introducing structure and abstraction, by being application-domain specific, and by enabling re-use. They can also reduce the manufacturing cost which includes the cost of using the interaction language, the implementation cost of the interaction language, and its running cost. We classify services that can be offered by an interaction language and their impact on the cost of designing. Choices that can be made in their implementations are also categorised, and their impact on the manufacturing cost is shown. This is illustrated by three existing interaction languages: c-heap, Arachne, and STM.We conclude first that the type of services offered by an interaction language must match the application domain. Furthermore, implementation choices are constrained by the underlying system architecture as well as the services to be offered. Finally, an interaction language with fewer services minimises the manufacturing cost but increases the cost of designing, and vice versa. The cost of designing and the manufacturing cost both contribute to the cost of the final product, which is to be minimised. These costs must be balanced when designing an interaction language.