94 citations found. Retrieving documents...
G. Hamilton, M. L. Powell, and J. G. Mitchell, "Subcontract: A flexible base for distributed programming, " in Proc. 14th ACM Symposium on Operating Systems Principles (SOSP '93), pp. 69--79, Dec. 1993.

 Home/Search   Document Details and Download   Summary   Related Articles   Check  

This paper is cited in the following contexts:

First 50 documents  Next 50

µChoices: An Object-Oriented Multimedia Operating System - Campbell, Tan (1995)   (3 citations)  (Correct)

....high[21] For performonce reosons, newer kernels ollow the migrotion of some services bock into the kernel, ollevioting the need for multiple cross domoin interprocess communicotion colls. Whot services exist in the kernel ond whot ore outside it is o configurotion decision (e.g. Spring[15]) With newer RISC mochine orchitectures built oround deep instruction pipelines, o user trop into the kernel to occess operoting system services is becoming more ond more expensive to service. In designing the Jetstreom[10] LAN, Edwords et ol. omortize system coll overheod over severol ....

G. Hamilton, M. L. Powell, and J. J. Mitchell. Subcontract: A flexible base for distributed programming. Fourteenth Symposium on Operating Systems Principles, pages 69-79, Dec 1993.


Issues in Evolving Existing Commercial Operating Systems - Banerji   (Correct)

.... in future releases, as opposed to creating a more open design (as in MetaObject Protocols) Such a restrictive approach has been used in stackable vnode implementations [Rosenthal, 90] system call indirection [Jones, 93] and to an extent the limited reflective facilities provided by subcontracts [Hamilton, 93a] This design approach automatically forces the prediction of the kinds of things that may be expected to change in future releases of a subsystem, and thus in a sense restricts the adaptability of the system. On the other hand, such an approach allows existing interface standards to be followed ....

G. Hamilton, M. Powell, J. Mitchell, Subcontract: A Flexible Base for Distributed Programming, Proc. 14th ACM Symp. on Operating Systems Principles, Dec 93, pp. 69-79.


Network Objects - Greg (1993)   (48 citations)  (Correct)

....as stable state and multi machine atomic transactions, and are oriented to objects that are implemented by whole address spaces. Our network objects are more primitive and fine grained. The Spring subcontract is an intermediary between a distributed application and the underlying object runtime [9]. For example, switching the subcontract can control whether objects are replicated. A derivative of this idea has been incorporated into the object adaptor of the Common Object Request Broker Ar chitecture [16] We haven t aimed at such a flexible structure, although our highly modular structure ....

Graham Hamilton, Michael L. Powell, and James G. Mitchell. Subcontract: A flexible base for distributed programnfing, Sm Microsystems Laboratories SMLI TR-9313 April, 1993.


Interposed Request Routing for Scalable Network Storage - Anderson, Chase, Vahdat (2000)   (45 citations)  (Correct)

....of file objects and requests across the servers, eliminating redundant caching. 2. 5 Related Work A large number of systems have interposed new system functionality by wrapping an existing interface, including kernel system calls [16] internal interfaces [15] communication bindings [13], or messaging endpoints. The concept of a proxy mediating between clients and servers [26] is now common in distributed systems. We propose to mediate some storage functions by interposing on standard storage access protocols within the network elements. The role of the Slice proxy is primarily ....

Graham Hamilton, Michael L. Powell, and James J. Mitchell. Subcontract: A flexible base for distributed programming. In Proceedings of the Fourteenth ACM Symposium on Operating Systems Principles, pages 69-79, 1993.


A Location Service for Worldwide Distributed Objects - Hauck, van Steen, Tanenbaum (1996)   (3 citations)  (Correct)

....at all. It remains to be seen if a general replication mechanism can be devised that is applicable in all cases, and in a transparent way [6] In Spring, replication can be achieved by special Subcontracts which handle replication at the client side by multiple invocations in different objects [2] . It is unclear to us how this will scale to wide area systems. In Section 2, we introduce the Globe object model which is a uniform model for building distributed 1 applications. We show how state is replicated and how naming is done. Section 3 focuses on the location service of Globe which is ....

G. Hamilton, M. Powell, and J. Mitchell. "Subcontract: A Flexible Base for Distributed Programming". In Proceedings 14th Symposium on Operating Systems Principles, Asheville, North Carolina, December 1993. ACM.


Adaptable and Extensible Bindings in Distributed Environments - Charra, Senart (2001)   (Correct)

....extensions description files are checked. If the current extension is not referenced by any install extension, it is removed. Otherwise, an exception is returned to the application. 4 Related work Our approach is obviously similar in philosophy to a number of others efforts including Spring [HPM93], JavaPod [BR00] OpenCorba [Led98] Flexinet [HHD98] Acceptor pattern [Sch96] and Gandiva [WL96] The separation between interface and implementation can be sufficient to obtain adaptability [WL96] However, such mechanisms make no assumption about semantics of manipulated objects and can ....

Graham Hamilton, Michael L. Powell, and James G. Mictchell. Subcontract: A flexible base for distributed programming. In 14th ACM Symposium on Operating Systems Principles, Asheville, NC (USA), 1993.


Encapsulating Distribution by Remote Objects - Jansen, Klaver, Verkaik, van.. (2000)   (Correct)

....its state and operations. There are only a few distributed object models that follow this approach, notably the fragmented objects as developed by the SOR group at INRIA [10] At best, support is given for adapting the client proxy to specific objects, as used in Spring s subcontract model [5] or as implemented in Java RMI [22] To compensate for the lack of flexibility in the supported object model, CORBA provides interceptors as a mechanism to provide object specific policies [11] However, interceptors essentially allow only breaking into an existing ORB and modifying its invocation ....

G. Hamilton, M. Powell, and J. Mitchell. "Subcontract: A Flexible Base for Distributed Programming. " In Proc. 14th Symp. Operating System Principles, Asheville, N.C., Dec. 1993. ACM.


Using Reflection to Support Dynamic Adaptation of.. - Dowling, Schäfer, ..   (3 citations)  (Correct)

....Increased adaptability is intended to allow mapping decisions to be more easily made on an applicationspecific basis. Following this rationale, a number of designers of operating systems and middleware have proposed architectures for supporting dynamic adaptation in their systems [Bersh96] [HPM93]. For the most part these systems have been implemented from scratch in an ad hoc manner with little or no specific language support for dynamic adaptation. A number of other researchers have suggested using reflection as a principled [Blair99] approach to supporting dynamic adaptation ....

Graham Hamilton, Michael Powell and James Mitchell, Subcontract: A Flexible Base for Distributed Programming, Technical Report for Sun Microsystems, April 1993


Requirements for a real-time ORB - Date May Reference   (Correct)

....these cases is highly unlikely, an open distributed system should provide a framework in which many different sorts of binding with different communication semantics can be efficiently supported and combined. Two systems that have taken this requirement in earnest are SOR [Shapiro94] and Spring [Spring93]. SOR provides a flexible binding protocol that can be used to establish arbitrary client server bindings. Spring provides the notion of subcontract that allows application programmers to define new clientserver communication mechanisms. These two approaches deserve attention since they constitute ....

G. Hamilton, M. Powell, J. Mitchell: "Subcontract: a flexible base for distributed programming", Proceedings of the 14th Symposium on Operating Systems Principles, Asheville NC, December 1993.


Building Distributed Process Management on an Object-Oriented.. - Shirriff (1997)   (8 citations)  (Correct)

....counting, even in the event of failures, and provides subsystem failure notification, simplifying the design for high availability. We use an object communication runtime system [5] based on CORBA [16] that borrows from Solaris doors for interprocess communication and Spring subcontracts [10] for flexible communication semantics. Our object framework lets us define object interfaces using IDL [21] We implement these objects in C , and they can reside either at user level or in the kernel. References to these objects can be passed from node to node. A method on an object reference is ....

G. Hamilton, M. L. Powell, and J. G. Mitchell, "Subcontract: A Flexible Base for Distributed Programming, " Symposium on Operating System Principles, 1993, pp. 69-79.


2K: A Distributed Operating System for Dynamic.. - Kon, Campbell.. (1999)   (Correct)

....allows code downloading for extensibility. However, neither addresses large scale, heterogeneous distributed systems. Spring [M 94] is an object oriented, distributed operating system which also uses clean, IDL based interfaces for system services. Although the Spring subcontract model [HPM93] supports customization of object invocations, Spring is not as adaptable as 2K running on O . The Spring Virtual Memory Manager [KN93] for example, is kept outside the kernel, but it is still a privileged part of the system. Di erently from O applications, Spring applications have no ....

G. Hamilton, M. L. Powell, and J. J. Mitchell. Subcontract: A Flexible Base for Distributed Programming. Proccedings of the 14th Symposium on Operating Systems Principles, pages 69-79, Dec 1993.


Interposed Request Routing for Scalable Network Storage - Anderson, Chase, Vahdat (2000)   (45 citations)  (Correct)

....computing capability within the network elements to virtualize the storage protocol. 2. 5 Related Work A large number of systems have interposed new system functionality by wrapping an existing interface, including kernel system calls [14] internal interfaces [13] communication bindings [11], or messaging endpoints. The concept of a proxy mediating between clients and servers [23] is now common in distributed systems. We propose to mediate some storage functions by interposing on standard storage access protocols within the network elements. Network file services can benefit from ....

Graham Hamilton, Michael L. Powell, and James J. Mitchell. Subcontract: A flexible base for distributed programming. In Proceedings of the Fourteenth ACM Symposium on Operating Systems Principles, pages 69--79, December 1993.


The Performance of a Distributed System Using.. - Muckelbauer, Russo   (Correct)

.... are used by programmers to implement server objects (usually by inheriting from automatically generated parent classes) and or to generate typed references to remote objects via proxy objects[Sha86] While this approach has been adopted by a number of other efforts including Sun s Spring System[HPM93] OMG s CORBA[OMG91] IBM s SOM DSOM[IBM93] and Microsoft s OLEII [Mic94] our work differs in one substantial way: the structure of interfaces is used for conformance checking rather than interface names (or hierarchies of names) We argue in [Muc96] that this choice is superior both ....

G. Hamilton, M. Powell, and J. Mitchell. Subcontract: A Flexible Base for Distributed Programming. In Proceedings of the ACM Symposium on Operating System Principles, December 1993.


The Structure of a Multi-Service Operating System - Roscoe (1995)   (44 citations)  (Correct)

....a unix oriented programming style, thus modules are principally units of code. The definition of interfaces between modules is left to programming conventions, and the data segments of private modules are instantiated on a one per process basis. 21 3.1. 3 Spring Along with Nemesis, Spring [Hamilton93a, Hamilton93b] is one of the few operating systems to use an interface definition language for all system interfaces. Spring is implemented in C and employs the unix model of one address space per process. Shared libraries are used extensively, but the need to link one library against another has led to ....

....not only from the client but also from the server, which is generally unaware of the number of clients currently bound to it. Spring allows a server to specify one of a number of mechanisms for communication when the service is first offered for export. These services are called subcontracts [Hamilton93b]. However, there is no way for the mechanism to be tailored to a particular type of service. Explicit binding Traditional RPC systems have tended to require clients to perform an explicit bind step due to the difficulty of implementing generic implicit binding. The advent of object based systems ....

Graham Hamilton, Michael L. Powell, and James G. Mitchell. Subcontract: A Flexible Base for Distributed Programming. Technical Report 93-13, Sun Microsystems Laboratories, Inc., April 1993. (pp 22, 83)


Reasoning about Meta Level Activities in Open Distributed.. - Venkatasubramanian (1995)   (7 citations)  (Correct)

....about equivalence of actor programs. 1.2 The Two Level Approach Open distributed systems should provide strong support for customization and adaptation. Non reflective systems which support customization do so only on a static basis. In an object oriented system such as Choices [8] or Spring [13], frameworks may be customized for a particular application. However, once customized, the characteristics may not change dynamically. Traditional reflective systems aim at providing a customizable and adaptable execution of concurrent systems. For example, the scheduling problem of the Time Warp ....

Graham Hamilton, Michael Powell, and James Mitchell. Subcontract: A flexible base for distributed programming. In ACM Symposium on Operating System Principles, pages 69--79, 1993.


Integration of Resource Management Activities in.. - Nalini.. (1995)   (Correct)

....and reasoning about their composability. 1 The Two Level Approach Open distributed systems should provide strong support for customization and adaptation. Non reflective systems which support customization do so only on a static basis. In an object oriented system such as Choices [9] or Spring [19], frameworks may be customized for a particular application. However, once customized, the characteristics may not change dynamically. Traditional reflective systems aim at providing customizable and adaptable execution of concurrent systems. For example, the scheduling problem of the Time Warp ....

Graham Hamilton, Michael Powell, and James Mitchell. Subcontract: A flexible base for distributed programming. In ACM Symposium on Operating System Principles, pages 69--79, 1993.


An Adaptive Resource Management Architecture For Global.. - Venkatasubramanian (1998)   (1 citation)  (Correct)

....a customizable and adaptable execution of concurrent systems [178, 168, 172] However, these systems are very difficult and complex to reason about. Non reflective systems which support customization do so only on a static basis. In an object oriented system such as Choices [35] or Spring [75], frameworks may be customized for a particular application. However, once customized, the characteristics may not change dynamically. What we require is an architecture that allows runtime aspects of an application and interaction protocols to be programmed and tuned independently of the basic ....

....load balancing, and scheduling. 4.1 The Two Level Approach Open distributed systems should provide strong support for customization and adaptation. Non reflective systems which support customization do so only on a static basis. In an objectoriented system such as Choices [34] or Spring [75], frameworks may be customized for a particular application. However, once customized, the characteristics may not change dynamically. Traditional reflective systems aim at providing customizable and adaptable execution of concurrent systems. For example, the scheduling problem of the Time Warp ....

Graham Hamilton, Michael Powell, and James Mitchell. Subcontract: A flexible base for distributed programming. In ACM Symposium on Operating System Principles, pages 69--79, 1993.


A Framework for Caching in an Object-Oriented System - Nelson, Hamilton, Khalidi (1993)   (3 citations)  Self-citation (Hamilton)   (Correct)

....on the cache object. Thus the provider and cache object provide a two way coherency connection between the cacher domain and the COM. This two way connection is set up using the cacher object and the cacheable object. 4 Caching Subcontract Every Spring object type has an associated subcontract [15]. A subcontract is executable code that is responsible FIGURE 2. No caching A client domain has a cacheable object that is implemented by the cacheable object manager (COM) domain. cacheable object COM Client Machine B Machine A for many things including marshaling, unmarshaling, and invoking ....

Hamilton, G., M. L. Powell. and J. G. Mitchell. "Subcontract: A Flexible Base for Distributed Programming." Proceedings of Fourteenth ACM Symposium on Operating System Principles (December 1993).


A Hierarchical Protection Model for Protecting against.. - Shinagawa, Kono, Masuda (2003)   (Correct)

No context found.

G. Hamilton, M. L. Powell, and J. G. Mitchell, "Subcontract: A flexible base for distributed programming, " in Proc. 14th ACM Symposium on Operating Systems Principles (SOSP '93), pp. 69--79, Dec. 1993.


IQ-Services: Network-Aware Middleware for.. - Cai, Eisenhauer.. (2004)   (Correct)

No context found.

G. Hamilton, M. Powell, and J. Mitchell. Subcontract: A Flexible Base for Distributed Programming. In Proceedings of ACM Symposium on Operating Systems Principles, pages 69--79, 1993.


SOAP-binQ: High-Performance SOAP with Continuous Quality .. - Seshasayee, Schwan.. (2003)   (Correct)

No context found.

Graham Hamilton, Michael L. Powell, and James J. Mitchell, "Subcontract: A flexible base for distributed programming," in Proceedings of the Fourteenth ACM Symposium on Operating Systems Principles, 1993.


Paper Summaries - Maniatis (2004)   (Correct)

No context found.

Graham Hamilton, Michael L. Powell, and James G. Mitchell. Subcontract: A flexible base for distributed programming. In Proceedings of the Fourteenth ACM Symposium on Operating Systems Principles, pages 80--93, Asheville, NC, U.S.A., December 1993. ACM SIGOPS. 109.


Extensible Operating Systems - Maheshwari (1994)   (Correct)

No context found.

G. Hamilton, M. L. Powell, and J. J. Mitchell. Subcontract: A flexible base for distributed programming. Proceedings of the Fourteenth ACM Symposium on Operating Systems Principles, pages 69--79, 1993.


Design And Implementation Of Indirect Protocols For Mobile.. - Bakre (1996)   (4 citations)  (Correct)

No context found.

G. Hamilton, M. Powell, and J. Mitchell. Subcontract: A flexible base for distributed programming. In Proc. of the 14th Symposium on Operating Systems Principles (SOSP), December 1993.


The ReTINA Project: An Overview - Er Vi Ew   (Correct)

No context found.

Hamilton, M. Powell, J. Mitchell: "Subcontract: a flexible base for distributed programming" - Proceedings of the 14th Symposium on Operating Systems Principles, Asheville NC, December 1993.

First 50 documents  Next 50

Online articles have much greater impact   More about CiteSeer.IST   Add search form to your site   Submit documents   Feedback  

CiteSeer.IST - Copyright Penn State and NEC