Reducing cross domain call overhead using batched futures
OOPSLA '94 Proceedings of the ninth annual conference on Object-oriented programming systems, language, and applications
Hi-index | 0.00 |
For many systems such as operating systems and databases it is important to run client code in a separate protection domain so that it cannot interfere with the correct operation of the system. Clients communicate with the server by making cross domain calls, but these are expensive, often costing substantially more than running the call itself. This thesis describes a new mechanism called batched futures that transparently batches client calls so that domain crossings happen less often, thus substantially reducing the cost. This thesis also presents performance results showing the benefits of the mechanism on various benchmarks. Batched futures are described in a context in which they are particularly applicable and useful: the client interface to Thor, a new object-oriented database. A secondary contribution of this thesis is the description of this safe, language-independent client interface to Thor.