In this paper, we introduce a concurrent programming language A′UM which has been designed aiming at high parallelism and high expressivity for the development of large scale software. A′MU is characterized by three...
详细信息
In this paper, we introduce a concurrent programming language A′UM which has been designed aiming at high parallelism and high expressivity for the development of large scale software. A′MU is characterized by three features: stream-based computation, object-oriented abstraction and relational representation.
This paper presents a general model supporting object-oriented programming in concurrent as well as distributed environments. The model combines the advantages of remote procedure calls with those of message passing. ...
详细信息
This paper presents a general model supporting object-oriented programming in concurrent as well as distributed environments. The model combines the advantages of remote procedure calls with those of message passing. It relies on the following concepts: All objects are not active but the active entities are objects, Asynchronous Message Passing with Data-driven synchronization, and Service mechanism allowing an explicit thread of control.
The programming notation Cantor is a research tool used at Caltech for ongoing experiments with fine-grain message-passing concurrent computers called multicomputers. Cantor is an actor-based language, and its semanti...
详细信息
The programming notation Cantor is a research tool used at Caltech for ongoing experiments with fine-grain message-passing concurrent computers called multicomputers. Cantor is an actor-based language, and its semantics conform to the actor model of computation, as described by Agha. Cantor represents one set of ideas about programming multicomputers. These ideas were tested by implementing Cantor on both concurrent and sequential computers and by writing numerous Cantor programs. Essential Cantor provided a minimal platform in which the most basic operations (such as iteration) were expressed explicitly by message passing. Some negative results of Essential Cantor are discussed.
Distributed-memory MIMD computers are cost-effective for many computation-intensive tasks. Unfortunately, it is not always clear how to make effective use of the large numbers of processors available. It is significan...
详细信息
Distributed-memory MIMD computers are cost-effective for many computation-intensive tasks. Unfortunately, it is not always clear how to make effective use of the large numbers of processors available. It is significantly more difficult to write correct programs for these computers than it is for shared memory machines because information can only be shared by sending messages across interprocessor communication links. Thus, the distributed memory execution model implemented by these machines is fundamentally different from the familiar shared memory execution model. The main topics are ease of programming, efficiency issues, and visualization of concurrency.
Concurrent object-oriented programmingsystems (COOPS) require support for fault tolerance, concurrency control, consistent commitment of changes and program-initiated rollback. It is sometimes suggested that the clas...
详细信息
Concurrent object-oriented programmingsystems (COOPS) require support for fault tolerance, concurrency control, consistent commitment of changes and program-initiated rollback. It is sometimes suggested that the classical transaction processing model successfully applied in databases and operating systems be integrated directly into COOPS facilities. This is clearly desirable, but by itself is too limiting. COOPS applications require several granularities of transaction-like facilities. A number of transaction-like mechanisms were addressed, and no doubt there are many others suitable for COOPS. This paper briefly surveys four basic levels of granularity that were discussed. The paper also discusses the author's plans for integrating medium granularity transactions - that is, classical transactions with atomicity and serializability as the correctness conditions - into Meld.
RTO (Real-Time Objects) is an object-based programming paradigm suited for Real-Time and, in particular, Hard-Real-Time applications. A Real-Time (RT) system must provide (with high probability) response times small i...
详细信息
RTO (Real-Time Objects) is an object-based programming paradigm suited for Real-Time and, in particular, Hard-Real-Time applications. A Real-Time (RT) system must provide (with high probability) response times small in comparison with the time constants of the environment. A Hard-Real-Time (HRT) system is a RT system which must also fulfill deterministic constraints on response times. The aim of RTO is to provide a test bed for the experimentation of concepts which are relevant in the RT area. Then it is focused on those dimensions of Object-Based language design which are tightly related to specific requirements of that area. This paper introduces the rationale for the basic choices of RTO.
Many programming languages for developing system software introduce built-in language facilities to describe the concurrent activities. They all center around the notion of the concurrent activity models and the relev...
详细信息
Many programming languages for developing system software introduce built-in language facilities to describe the concurrent activities. They all center around the notion of the concurrent activity models and the relevant synchronization facilities. These models should reflect the most fundamental and the most common properties about the concurrent activities. Unfortunately, they could hardly be brought into play in some particular situations, for example, the distributed computing situation. This paper discusses the development of a new approach to the discription of the concurrent activities. The basis of the approach is the CLUSTER 86, an object-oriented programming language which differs from other similar languages by its 'all-out-of-nothing' design philosophy.
Distributed memory, message passing (DMMP) parallel architectures, such as the intel iPSC(R) computer system, provide the processing power and memory to solve very large parallel programming problems. However, their l...
详细信息
Distributed memory, message passing (DMMP) parallel architectures, such as the intel iPSC(R) computer system, provide the processing power and memory to solve very large parallel programming problems. However, their large grain process model and distributed memory complicate the programmer's view of the system. Extensions have been created for interwork II's global object name space in order to support arrays of objects;interwork II distributes the element objects among the processing nodes so as to balance the number on each node. Indexed objects simplify the programmer's view of parallel architectures by enabling related data to be automatically partitioned among the processing nodes. They also speedup computations by allowing these data to be operated on in parallel. This mechanism has proved useful as the basis for constructing a large, parallel simulation.
In choosing the appropriate model for programming fine-grained tasks to be run on a multicomputer system the facts that objects are inherently sequential and actors are inherently concurrent do not strongly influence ...
详细信息
In choosing the appropriate model for programming fine-grained tasks to be run on a multicomputer system the facts that objects are inherently sequential and actors are inherently concurrent do not strongly influence the choice. The interesting concurrency occurs in the interaction among computational agents, not in the concurrency within an agent. This paper reviews some features of objects and actors and attempts to answer some remarks made by Carl Hewitt concerning the superiority of actors over objects. The interest in this discussion stems from research on a multicomputer being designed at Mississippi State University called the Mapped Array Differential Equation Machine (MADEM).
The analysis of concurrent programs is a field which is still in its infancy. This paper describes our work on the analysis of concurrent programs under the Actor model of computation. The Actor model of computation i...
详细信息
The analysis of concurrent programs is a field which is still in its infancy. This paper describes our work on the analysis of concurrent programs under the Actor model of computation. The Actor model of computation is based on computational objects called actors, which process information by sending and receiving messages. Large numbers of actors may be executing concurrently, and communication between actors occurs asynchronously. This paper has presented a number of preliminary results in the run-time analysis of Actor computations. Run-time analyses are very likely to become an important part of the concurrent programmers' toolbox. As we begin to build more of these tools and gain experience with using them, we will be able to more fully explore the capabilities and limitations of the techniques we have developed.
暂无评论