Thư viện tri thức trực tuyến
Kho tài liệu với 50,000+ tài liệu học thuật
© 2023 Siêu thị PDF - Kho tài liệu học thuật hàng đầu Việt Nam

Lightweight Remote Procedure Call
Nội dung xem thử
Mô tả chi tiết
Lightweight Remote Procedure Call
BRIAN N. BERSHAD, THOMAS E. ANDERSON, EDWARD D. LAZOWSKA,
and HENRY M. LEVY
University of Washington
Lightweight Remote Procedure Call (LRPC) is a communication facility designed and optimized for
communication between protection domains on the same machine. In contemporary small-kernel
operating systems, existing RPC systems incur an unnecessarily high cost when used for the type of
communication that predominates-between protection domains on the same machine. This cost
leads system designers to coalesce weakly related subsystems into the same protection domain, trading
safety for performance. By reducing the overhead of same-machine communication, LRPC encourages
both safety and performance. LRPC combines the control transfer and communication model of
capability systems with the programming semantics and large-grained protection model of RPC.
LRPC achieves a factor-of-three performance improvement over more traditional approaches based
on independent threads exchanging messages, reducing the cost of same-machine communication to
nearly the lower bound imposed by conventional hardware. LRPC has been integrated into the Taos
operating system of the DEC SRC Firefly multiprocessor workstation.
Categories and Subject Descriptors: C.1.3. [Processor Architectures]: Other Architecture Stylescapability architectures; D.3.3 [Programming Languages]: Language Constructs--modules, puckages; D.4.1 [Operating Systems]: Process Management-concurrency, multiprocessing/multiprogramming, scheduling; D.4.4 [Operating Systems]: Communications Management; D.4.6 [Operating Systems]: Security and Protection--access controls, information flow controls; D.4.7 [Operating Systems]: Organization and Design; D.4.8 [Operating Systems]: Performancemeasurements
General Terms: Design, Measurement, Performance
Additional Key Words and Phrases: Modularity, remote procedure call, small-kernel operating
systems
1. INTRODUCTION
This paper describes Lightweight Remote Procedure Call (LRPC), a communication facility designed and optimized for communication between protection
domains on the same machine.
This paper was nominated for publication in Z’OCS by the Program Committee for ACM SIGOPS
Symposium on Operating Systems Principles, December 1989.
This material is based on work supported by the National Science Foundation under Grants CCR8619663, CCR-8700106, and CCR-8703049, the Naval Ocean Systems Center, U.S. WEST Advanced
Technologies, the Washington Technology Center, and Digital Equipment Corporation (the Systems
Research Center and the External Research Program). Anderson was supported by an IBM Graduate
Fellowship Award, and Bershad was supported by an AT&T Ph.D. Scholarship.
Authors’ address: Department of Computer Science and Engineering, University of Washington,
Seattle, WA 98195.
Permission to copy without fee all or part of this material is granted provided that the copies are not
made or distributed for direct commercial advantage, the ACM copyright notice and the title of the
publication and its date appear, and notice is given that copying is by permission of the Association
for Computing Machinery. To copy otherwise, or to republish, requires a fee and/or specific
permission.
0 1990 ACM 0734-2071/90/0200-0037 $01.50
ACM Transactions on Computer Systems, Vol. 8, No. 1, February 1990, Pages 37-55.