MetaCartSign in to MyCiteSeer

Include Citations | Advanced Search | Help

Include Citations | Advanced Search | Help

  Increasing cross-domain call batching using promises and batched control structures (1995) [14 citations — 2 self]

Download:
Download as a PDF | Download as a PS
by Quinton Y. Zondervan, Quinton Y. Zondervan
Massachusetts Institute of Technology
http://www.lcs.mit.edu/publications/pubs/ps/MIT-LCS-TR-658.ps.gz
Add To MetaCart

Abstract:

In a client-server system, it may be possible for the client to corrupt server data through unsafe access methods or programming errors. A common method for protecting the server data is to separate the client and server into distinct protection domains, e.g. Unix processes. Communication between client and server is restricted to a well-defined set of crossdomain calls and results are passed as opaque pointers to server data. Unfortunately, cross-domain calls are expensive and seriously affect the performance of the system. In his work on Batched Futures, Bogle presents a mechanism for batching cross-domain calls, thus amortizing the overhead of the domain crossing across the batch. Bogle showed that the improvement in performance is directly proportional to the average size of a batch (batching factor). This thesis describes two mechanisms that can be used to improve the batching factor: basic value promises and batched control structures. Basic value promises allow the batching of calls that return basic values (e.g. integer, boolean, character and real). Batched control structures allow the batching of simple control flow statements such as if statements, while loops and for loops. Both mechanisms have been implemented in Thor, an object-oriented database system. This thesis presents performance results showing the effectiveness of both mechanisms in increasing the performance of cross-domain calls.

Citations

578 Efficient software-based fault isolation – Wahbe, Lucco, et al. - 1993
500 A semantics of multiple inheritance – Cardelli - 1984
248 The OO7 benchmark – Carey, DeWitt, et al. - 1993
245 Lightweight Remote Procedure Call – Bershad, Anderson, et al. - 1990
177 Implementing Remote Evaluation – Stamos, Gifford - 1990
127 Exception Handling, Issues and a Proposed Notation – Goodenough - 1975
97 Promises: Linguistic Support for Efficient Asynchronous Procedure Calls in Distributed Systems – Liskov, Shrira - 1988
32 Reducing cross domain call overhead using batched futures – Bogle, Liskov - 1994
24 Typechecking polymorphism in Emerald – Black, Hutchinson - 1991
21 Client Cache Management in a Distributed Object Database – Day - 1995
17 et al. CLU reference manual – Liskov - 1981
16 A highly available object repository for use in a heterogeneous distributed system – Liskov, Johnson, et al. - 1990
8 Promises: Linguistic support for e cient asynchronous procedure calls – Liskov, Shrira - 1988
8 Fast object operations in a persistent programming system – Myers - 1994
5 et al. An introduction to Trellis/Owl – Schaffert - 1986
1 Object invocation performance in thor. Programming Methodology Group Memo to appear – Castro - 1995
1 etal.Theta Reference Manual. Programming Methodology – Day - 1994
1 nstine. A Modula{3 veneer for Thor – Hel - 1994
1 ert et al. An introduction to Trellis/Owl – Scha - 1986
1 A Modula--3 veneer for Thor – Helfinstine - 1994