The paper highlights the specific problems raised by distributed systems programming and also the way in which these particularities have influenced the definition of new programming languages, specially dedicated for...
详细信息
ISBN:
(纸本)9789889867140
The paper highlights the specific problems raised by distributed systems programming and also the way in which these particularities have influenced the definition of new programming languages, specially dedicated for this type of programming. For this purpose the concepts introduced in a number of approximately 20 programming languages are analyzed, together with the evolution of these concepts from the first languages based on communication through message transmission (CSP, DP or Ada) to the object oriented languages or their distributed extensions (Concurrent C++, Concurrent Smalltalk or Java). In the final part, based on these ideas, a new programming language is defined, which is currently being implemented in the programming languages laboratory of "Politehnica" University of Timisoara, Romania.
A software tool for programming real-time concurrent systems is described. It appears as a set of extensions of the Pascal language, and is adequate for multiprocessor systems without common storage (like networks of ...
详细信息
A software tool for programming real-time concurrent systems is described. It appears as a set of extensions of the Pascal language, and is adequate for multiprocessor systems without common storage (like networks of micros). Applications can be programmed as a set of related tasks that communicate and are synchronized by message exchanges. The scheme is based on Hoare's csp construct and incorporates a logical channel mechanism (called port ) for communication control. A nondeterministic control structure based on Dijkstra's guarded commands is also included, thus allowing selective reception. An implementation based on a compiler-interpreter combination is also described. This implementation generates extended symbolic P-code and runs on a conventional minicomputer.
A major challenge facing ubiquitous computing R&D is the difficulty of writing software for complex, distributed applications. Automatic application partitioning can help development teams rapidly prototype distri...
详细信息
A major challenge facing ubiquitous computing R&D is the difficulty of writing software for complex, distributed applications. Automatic application partitioning can help development teams rapidly prototype distributed ubiquitous computing systems.
Innovations in computing and communications have enabled autonomous electromechanical devices that change their internal states in response to real-time interactions with other devices, software agents, or smart senso...
详细信息
Innovations in computing and communications have enabled autonomous electromechanical devices that change their internal states in response to real-time interactions with other devices, software agents, or smart sensors. Ad-hoc wireless networks of such devices may be engineered to perform autonomous missions like battlefield surveillance using sensor networks or multi-robot air campaigns. A critical research challenge is to harness the capabilities of these devices via ad-hoc wireless networks to invoke deliberate processes in response to operational dynamics and perform collaborative missions effectively. The Control, Communication and Computation Language (C3L) is a language designed to capture the semantics of the dynamic architectures of such distributedsystems and concisely express complex, time-critical and mission-critical operations within the system. The alphabet of C3L consists of atomic events and actions that may be either controllable or uncontrollable. Atomic events and actions are combined in various ways to represent composite behaviors as event/action sequences. This programming paradigm enables heterogeneous, independently-developed devices plug-n-play compatibility in ad-hoc networked applications with either independent or coordinated strategies. By embedding the operational dynamics of the system in the higher-level semantics of the language, this framework permits multi-level fusion of distributed data in an intuitive manner. The revised syntax and a complete operational semantic description of C3L are presented and detailed. To more fully explore the value of C3L as a tool for rapid development and testing of scalable distributed programs for autonomous devices, a C3L compiler has been developed for the language. The compiler exploits the implicit task-level parallelism inherent in C3L programs to automatically generate multi-threaded executable programs. Based on the Microsoft Phoenix framework for compiler development and optimization, the
暂无评论