Distributed Upcalls: A Mechanism for Layering Asynchronous Abstractions
نویسندگان
چکیده
It is common to use servers to provide access to facilities in a distributed system and to use remote procedure call semantics to access these servers. Procedure calls provide a synchronous interface to call downward through successive layers of abstraction, and remote procedure calls allow the layers to reside in different address spaces. Servers, however, often need the ability to initiate asynchronous and independent actions. Examples of this asynchrony are when a network server needs to signal to an upper layer in a protocol, or when a window manager server needs to respond to user input. Upcalls are a facility that allows a lower level of abstraction to pass information to a higher level of abstract in a clean way. We describe a facility for distributed upcalls that allows upcalls to cross address space boundaries. The complement of remote procedure calls for handling synchronous Server requests and distributed upcalls for handling asynchronous server activities provide a powerful tool for structuring servers. These facilities, together with the ability to dynamically load modules into a server, allow the user to arbitrarily place abstractions in the server or in the client. Distributed Upcalls have been built into a server Structuring system called CLAM, which is currently being used to support an extensible window management system. The CLAM system, including distributed upcalls, remote procedure call extensions to C++, dynamic loading, and basic window classes, is currently running under 4.3BSD UNIX on Microvax workstations.
منابع مشابه
Communication and Agreement Abstractions for Fault-Tolerant Asynchronous Distributed Systems
Only for you today! Discover your favourite communication and agreement abstractions for fault tolerant asynchronous distributed systems synthesis lectures on distributed computing theory book right here by downloading and getting the soft file of the book. This is not your time to traditionally go to the book stores to buy a book. Here, varieties of book collections are available to download. ...
متن کاملHigh-performance application-specific networking
Experience with parallel and distributed systems has shown that different application domains require different communication models in order to perform efficiently and be programmed conveniently [37, 57, 60]. Unfortunately, programmers traditionally have had to choose between inflexible but efficient inkernel protocols and flexible but inefficient user-level protocols. This thesis presents app...
متن کاملDALD:-Distributed-Asynchronous-Local-Decontamination Algorithm in Arbitrary Graphs
Network environments always can be invaded by intruder agents. In networks where nodes are performing some computations, intruder agents might contaminate some nodes. Therefore, problem of decontaminating a network infected by intruder agents is one of the major problems in these networks. In this paper, we present a distributed asynchronous local algorithm for decontaminating a network. In mos...
متن کاملPolynomial-Space and Complete Multiply Asynchronous Search with Abstractions
Problems may consist of constraints distributed among several agents. Some problems are naturally distributed. Others were originally centralized but the distribution is expected to help for their resolution. Among naturally distributed problems we focus on those where the distribution is reinforced by privacy requirements. Privacy, robustness against timing variations and robustness against ha...
متن کاملExperience Using a Globally Shared State Abstraction to Support Distributed Applications
In this paper, we evaluate the effectiveness of basing distributed systems on a persistent globally shared address space abstraction, as implemented by Khazana. Khazana provides shared state management services to distributed application developers, including consistent caching, automated replication and migration of data, location management, access control, and (limited) fault tolerance. We r...
متن کامل