MP: An Application Specific Concurrent Language
MP: An Application Specific Concurrent Language
In this paper we present the definition, and implementation of a concurrent language mp (Message Passer), which is aimed at programming embedded multi micro-processor systems. The novel features of the language includes the ability to program and develop the entire distributed system as a single unit, and the provision of simple restricted concurrency constructs that make such systems modular and deadlock free. mp programs are invariant with respect to the characteristics of a particular target machine, for instance, the number of processors, and their mutual connectivity. Programs written in mp can be transformed to a restricted set of Communicating Sequential Processes (CSP), in which particular specifications can be shown to be satisfied. The restricted model of concurrency, does not prevent the language being able to express all of the known course grained parallel programming paradigms. However, the structured nature of the code makes the model particularly attractive in concurrent embedded systems, where deadlock freedom and program correctness are prime issues. An mp program is a collection of objects which execute concurrently, maintain their own local state and connect with other objects via bound variables. Explicit communication between objects is totally transparent to the application programmer. A compiler for the language has been built and a multiprocessor run time environment has been established for any system with a C compiler and the message passing standard MPI library. Several applications have been tested, ranging from a clocked digital circuit simulation, to a simple event driven process controller.
131-333
JS, Reeve
dd909010-7d44-44ea-83fe-a09e4d492618
MC, Rogers
a56be9d1-2cdd-4bdb-82f2-71e57ed46f0c
1996
JS, Reeve
dd909010-7d44-44ea-83fe-a09e4d492618
MC, Rogers
a56be9d1-2cdd-4bdb-82f2-71e57ed46f0c
JS, Reeve and MC, Rogers
(1996)
MP: An Application Specific Concurrent Language.
Concurrency and Computation: Practice and Experience, 8 (4), .
Abstract
In this paper we present the definition, and implementation of a concurrent language mp (Message Passer), which is aimed at programming embedded multi micro-processor systems. The novel features of the language includes the ability to program and develop the entire distributed system as a single unit, and the provision of simple restricted concurrency constructs that make such systems modular and deadlock free. mp programs are invariant with respect to the characteristics of a particular target machine, for instance, the number of processors, and their mutual connectivity. Programs written in mp can be transformed to a restricted set of Communicating Sequential Processes (CSP), in which particular specifications can be shown to be satisfied. The restricted model of concurrency, does not prevent the language being able to express all of the known course grained parallel programming paradigms. However, the structured nature of the code makes the model particularly attractive in concurrent embedded systems, where deadlock freedom and program correctness are prime issues. An mp program is a collection of objects which execute concurrently, maintain their own local state and connect with other objects via bound variables. Explicit communication between objects is totally transparent to the application programmer. A compiler for the language has been built and a multiprocessor run time environment has been established for any system with a C compiler and the message passing standard MPI library. Several applications have been tested, ranging from a clocked digital circuit simulation, to a simple event driven process controller.
More information
Published date: 1996
Organisations:
EEE
Identifiers
Local EPrints ID: 251945
URI: http://eprints.soton.ac.uk/id/eprint/251945
PURE UUID: 6844453c-cc9c-460c-839e-4671bcb676b3
Catalogue record
Date deposited: 18 Nov 1999
Last modified: 14 Mar 2024 05:14
Export record
Contributors
Author:
Reeve JS
Author:
Rogers MC
Download statistics
Downloads from ePrints over the past year. Other digital versions may also be available to download e.g. from the publisher's website.
View more statistics