| Andrew Birrell, Greg Nelson, Susan Owicki, and Edward Wobber. Network objects. In Proceedings of the Fourteenth ACM Symposium on Operating Systems Principles, pages 217-230, 1993. |
....The characteristics of local computing environments are different from those of global computing, and suggest a need for different approaches. Local computing languages are organized around the principle of location transparency, hiding the network behind the abstraction of RPC or RMI [6]. In contrast global computing languages expose the network to the application, recognizing that dealing with the network is an important An extended abstract for an earlier version of this paper appeared as Abstractions for Fault Tolerant Global Computing, D. Duggan, in Foundations of Wide Area ....
Andrew Birrell, Greg Nelson, Susan Owicki, and Edward Wobber. Network objects. In Symposium on Operating Systems Principles, pages 217--230. ACM Press, 1993.
....are scattered over a variety of locations and infoappliances, can ow among such appliances, and contain innumerous references connecting them. More precisely, OBIWAN provides support for such objects in the sense that they can be invoked either remotely, via remote method invocation (RMI) [1, 13], or locally via local method invocation (LMI) based on a replication mechanism that brings objects to the infoappliance where an application is running [7] This exibility of the invocation mechanism allows the application programmer to develop his application so that it resists to network ....
Andrew Birrell, Greg Nelson, Susan Owicki, and Edward Wobber. Network objects. In Proceedings of the Fourteenth ACM Symposium on Operating Systems Principles, pages 217-230, 1993.
....overhead and the GC algorithm is still not resilient to failures. For these reasons there are many variants of the reference counting algorithm that can be grouped in the following main categories: weighted reference counting [15, 123] indirect reference counting [58, 95] and reference listing [18, 85, 106, 108]. Each one of these variants avoids the transmission of increment messages, therefore solving the two race problems previously described. We describe these variants now. 2.3.1.1 Weighted Reference Counting Each cross partition reference has two associated weights: a weight at the source process ....
Andrew Birrell, Greg Nelson, Susan Owicki, and Edward Wobber. Network objects. In Proceedings of the 14th ACM Symposium on Operating Systems Principles, pages 217--230, Asheville, NC (USA), December 1993.
....is reasonably straightforward; in particular, it does not require changes in the structure of network objects. We discuss its internal components, its performance, and its use in some applications. 1 Introduction Object oriented communication has become popular in distributed systems [2, 22, 8]. With objects or without them, distributed systems typically rely on networks with no low level support for security; the vulnerability of distributed systems is by now evident and worrisome [23, 4] A need exists therefore for secure objectoriented communication. We describe the design and ....
....support for security; the vulnerability of distributed systems is by now evident and worrisome [23, 4] A need exists therefore for secure objectoriented communication. We describe the design and implementation of secure network objects. Secure network objects extend Modula 3 network objects [19, 2] with security guarantees. When a client invokes a method of a secure network object over the network, the main security properties are: ffl The client must possess an unforgeable object reference. ffl The client and the owner of the object can choose to authenticate each other. ffl The ....
[Article contains additional citation context not shown here]
Andrew Birrell, Greg Nelson, Susan Owicki, and Edward Wobber. Network objects. In Proceedings of the Fourteenth ACM Symposium on Operating Systems Principles, pages 217--230, December 1993.
....mobility primitives, and we require no changes to the compiler, standard runtime library, or operating system. This paper details the design, implementation and performance of our mobile objects system and two sample applications which use the system. 1 Introduction The network objects paradigm [2] for distributed programming combines object oriented programming with remote procedure call (RPC) A network object is an object whose methods may be invoked by processes other than the one which contains the object. The methods of a network object always execute on the object s home node; if the ....
....analagous to a remote procedure call. This paper describes the design, implementation, and performance of a network objects system that supports object mobility. Our implementation is an extension of an existing (non mobile) network objects package, the DEC SRC Modula 3 network objects system [2]. Our system differs from most mobileobject systems in that we use an existing programming language rather than inventing a new language with object mobility primitives (unlike many other systems [7, 3, 1, 4, 6] and we require no changes in the compiler, standard runtime library, or operating ....
[Article contains additional citation context not shown here]
Andrew Birrell, Greg Nelson, Susan Owicki, and Edward Wobber. Network objects. In Proceedings of the 14th Symposium on Operating System Principles, pages 217--230, 1993.
....a distributed garbage collector for distributed languages, matching these three qualities. Moreover, the algorithm is simple to implement and has low resource requirements for participating spaces. We developed this garbage collector on a system of distributed objects, similar to Network Objects [1], called SSPC (Stub Scion Pair Chains) implemented in Objective Caml (a dialect of ML with object oriented extension) Although our system is based on transparent distributed references, our design assumptions are weak enough to support other kinds of distributed languages, such as those based on ....
....space Y : the new scion scion Y (R) is first created, then a message containing the location of scion Y (R) is sent to X, where the message is unmarshaled by creating stub X (R) 1. 2 Stub Scion Pair Chains The SSPC system [15] is a mechanism of distributed references similar to Network Objects [1] with optimizations, such as lazy short cuts and direct message sending for indirect chains. However, we will only describe here the part needed to understand its garbage collector. The garbage collector is based on referencelisting (a factorization of reference counting) between spaces, with ....
Andrew Birrell, Greg Nelson, Susan Owicki, and Edward Wobber. Network objects. In Proceedings of the 14th ACM Symposium on Operating Systems Principles, pages 217--230, Asheville, NC (USA), December 1993.
....references span bases. Our use of a conceptually global shared object space for specifying distributed programs means that local and remote method calls have the same external behavior. This semantics is in sharp contrast to the semantics supported by typical RPC based implementations [BN84, SB90, BNOWer] In RPC, local objects are copied on a remote call, and are not shared between the caller and callee if the two reside on different nodes. Programs using standard RPC as the communication model must therefore be carefully crafted to avoid unexpected behavior due to unwanted copying and loss of ....
....where the invocation is performed. In both systems, program behavior is not dependent on how objects are distributed in a network. In addition, our implementation differs in important and obvious ways from Obliq s, which is implemented as an interpreted language using Modula 3 s network objects [BNOWer] Emerald [BHJ 87, JLHB88] is a distributed object based language that provides support for mobile objects. Like Obliq, Emerald has no class instance hierarchy. However, similar to the implementation described here, method invocation in Emerald obeys the same semantics regardless of whether ....
Andrew Birrell, Greg Nelson, Susan Owicki, and Edward Wobber. Network Objects. In 14th ACM Symposium on Operating Systems Principles, 1993 December.
....are running while the log data from running programs is to be collected. 2.2 Implementation Issues CMon s implementation is fairly straightfoward. We chose to implement all of the programs (snarflog, telemonitor, and the registry) in the Modula 3 programming language [7] using Network Objects [1] (Modula 3 s object oriented remote procedure call mechanism) for communication among the programs. The implementation was done in 1994, and there was no clearly better choice of programming technology at the time for our prototype system. If we were starting on the implementation today, in 1998, ....
Andrew Birrell, Greg Nelson, Susan Owicki, and Edward Wobber. Network objects. In Proceedings of the Fourteenth ACM Symposium on Operating Systems Principles, pages 217--230. ACM, December 1993.
....there are no read operations. Further, the SHRIMP design does not focus on issues of separating control and data transfer in distributed systems. 8. 9 Channel Model, V System, Network Objects The distributed system structure we propose is loosely related to the Channel Model [31] Network Objects [9], and other systems, like V [16] that use RPC for small data and a separate bulk data transport mechanism. Unlike most of these systems, in our model, there is no explicit activity or thread of control at the destination process to handle an incoming stream of data. Also, no specific request is ....
Andrew Birrell, Greg Nelson, Susan Owicki, and Edward Wobber. Network objects. In Proceedings of the 14th ACM Symposium on Operating Systems Principles, pages 217--230, December 1993.
....Multiprocessor and concurrent GC algorithms [2, 10] are not directly applicable, because they typically are based on strong consistency and scale assumptions. Even Le Sergent and Berthommieu [15] consider a small scale, strongly consistent DSM. Much previous work in distributed garbage collection [6, 20] considers processes communicating by messages (without shared memory) using a hybrid of tracing and counting. Each process traces its internal pointers; references across process boundaries are reference counted as they are sent in messages. Some object oriented databases use a similar approach ....
Andrew Birrell, Greg Nelson, Susan Owicki, and Edward Wobber. Network objects. In Proceedings of the 14th ACM Symposium on Operating Systems Principles, pages 217--230, Asheville, NC (USA), December 1993.
....used cannot be changed without modification of the generator program. The task of RPC stub generators is also somewhat complicated by the attempt to replicate the semantics of local procedure calls: different types of parameters must be handled differently. More recent work is Network Objects [BNOW93] for distributed programming in Modula 3. Similar to RPC systems, Modula 3 uses remote method calls to implement interprocess communication. Since Modula 3 is an object oriented language, most of the problems addressed in our work are also found here. Marshaling of parameters is done by a ....
Andrew Birrel, Greg Nelson, Susan Owicki, and Edward Wobber. Network objects. In Proceedings of the 14th ACM Symposium on Operating Systems Principles, December 1993.
....sharing are applicable to many systems that support shared memory. Also, other object based RPC libraries could be extended in a similar fashion to preserve transparency of the read shared memory. Object based RPC libraries have been built for a variety of languages and systems, including Modula 3 [9], BETA [10] Choices [11] and Spring [12] The rest of the paper is organized as follows. Section 2 presents version based synchronization. Sec tion 3 outlines the implementation of a generic objectbased RPC toolkit, and Sections 4 and 5 describe shared memory extensions to the toolkit. ....
Andrew Birrell, Greg Nelson, Susan Owicki, and Edward Wobber. Network Objects. In Proceedings of the 14th ACM Symp. on Operating Systems Principles, pages 217--230, December 1993.
....developed within the Broadcast BRA such as Navtech (INESC, Portugal) Newtop (Newcastle University, UK) or Phoenix (EPFL, Switzerland) C.3 Distributed garbage collection Persistence by reachability is based on a garbage collection algorithm. Much previous work in distributed garbage collection [6, 44] considers processes communicating by messages (without shared memory) using a hybrid of tracing and counting. Each process traces its internal pointers; references across process boundaries are reference counted as they are sent in messages. Some objectoriented databases use this approach [1, ....
Andrew Birrell, Greg Nelson, Susan Owicki, and Edward Wobber. Network objects. In Proceedings of the 14th ACM Symposium on Operating Systems Principles, pages 217--230, Asheville, NC (USA), December 1993.
....and (3) RPC based stub generation (i.e. language preprocessing) Generally, a reference across an address space boundary is meaningless unless dereference operations are executed at the address space where it is created. Conventional RPC systems [40, 5] and object oriented distributed systems [22, 34, 6, 18, 21, 8] callbacks the target address space every time a remote reference is dereferenced. The VM integrated RPC automatically detects the first dereference of a remote reference by using a memory management unit (MMU) which is equipped with virtually all computers from personal ones to mainframes. ....
....the receiver remotely operates on the referenced data through the identifier. Whenever a remote operation is requested, the runtime system callbacks the sender to perform the requested operation. We call this the callback scheme. It is widely used in distributed object oriented systems [22, 34, 6, 8, 21, 31] in which an object identifier (OID) directly acts as a logical identifier. In the callback scheme, presence tests are required to distinguish logical identifiers from virtual addresses. The callback scheme not only incurs the overhead of presence tests, but also greatly increases the number of ....
Andrew Birrell, Greg Nelson, Susan Owicki, and Edward Wobber. Network objects. In 14th ACM Symposium on Operating Systems Principles, pages 217--230, December 1993.
....the global state is a paged virtual address space. Pages migrate between processors on demand while a protocol ensures the consistency of multiple copies of a page. As an alternate approach, the shared global state in systems such as Emerald [16] Amber [8] Amoeba Orca [24] and Network Objects [1] is a collection of abstract data types or objects. Objects can be placed on and migrated between the network nodes. Operations can be invoked on an object no matter where the object is located, and protocols ensure the consistency of duplicate objects. These systems support varying degrees of ....
Andrew Birrell, Greg Nelson, Susan Owicki, and Edward Wobber. Network objects. In Proceedings of the Fourteenth ACM Symposium on Operating Systems Principles, pages 217--230, Asheville, North Carolina, December 1993.
....messages to trace remote references. 3.2. 1 Local Collection Reference Counting There have been many proposals that extend reference counting schemes to distributed memory machines [10, 11, 30, 55, 77] Implementations of distributed programming languages typically favor reference counting [12] and some parallel languages adopt them [38, 60] Since managing reference counts on every pointer duplication and deletion incurs very expensive overhead, reference counting in distributed environments is often combined with a local tracing collector and keep track of reference counts only for ....
Andrew Birrell, Greg Nelson, Susan Owicki, and Edward Wobber. Network objects. In Proceedings of Fourteenth Symposium on Operating Systems Principles (SOSP), pages 217--230, 1993.
....exchanging mark messages to trace remote references. 2. 1 Local Collection Reference Counts There have been many proposals that extend reference counts to distributed memory machines [6, 11, 26, 27] Implementations of distributed programming languages typically favor reference counts [7, 17] and some parallel languages also adopt them [16] Compared to distributed marking schemes, reference counts seem to have many advantages; for example, processors do not have to be synchronized and only processors that have ever used a reference need to be involved in reclaiming a particular ....
....distributed environments are often combined with a local tracing collector and keep track of reference counts only for remote references. Each processor independently performs local collections and the local collector counts how many remote references the processor still has to each remote object [6, 7, 16, 22]. This necessarily implies local collections are (at least by default) independent. As we will see in Section 7, independent collection performs very badly in synchronous applications. Another potential drawback is that reclamations occur very passively in the sense that a processor that owns ....
Andrew Birrell, Greg Nelson, Susan Owicki, and Edward Wobber. Network objects. In Proceedings of Fourteenth Symposium on Operating Systems Principles (SOSP), pages 217--230, 1993.
....Failure detection based solely on time outs or channel failures is inconsistent because (for instance) a transient overload could cause some space to be considered terminated, whereas it continues to execute. Then, reachable objects could be unsafely reclaimed, as in the Network Objects system [3]. Consistent failure detection is of course harder to achieve [23] Reference tracking (see Section 3.3) is related to failure detection, since it must distinguish a reference from a failed space. This precludes straightforward reference counting; indeed, a scion must record the name of its client ....
.... The rules for forwarding ensure that references are visible to the collector [25] However, forwarding poses the problem of short cutting long chains [12, 25] Some systems supplement the chains with global identifiers to ease shortcutting and equality tests [15, 16] or to detect safety errors [3, 7]. Although they do not have the hiding problem of systems that expose their UUIDs, they do have the same scaling and semantic problems. The stubs and scions are usually used as indirections [17, 25] but sometimes they are just auxiliary data structures that describe direct pointers [11] Although ....
Andrew Birrell, Greg Nelson, Susan Owicki, and Edward Wobber. Network objects. In Proc. 14thSymp. on Operating Systems Principles, volume 27 of Operating Systems Review, pages 217--230, Asheville NC (USA), December 1993. ACM SIGOPS, ACM Press.
....invariance will cause memory fragmentation as some objects persist and their neighbors become garbage. The single address space was first proposed by Monads [15] although the idea can be traced back to the single level store of Multics [21] Much previous work in distributed garbage collection [6, 23] considers processes communicating by messages (without shared memory) using a hybrid of tracing and counting. Each process traces its internal pointers; references across process boundaries are reference counted as they are sent in messages. Some object oriented databases use a similar approach ....
Andrew Birrell, Greg Nelson, Susan Owicki, and Edward Wobber. Network objects. In Proceedings of the 14th ACM Symposium on Operating Systems Principles, pages 217--230, Asheville, NC (USA), December 1993.
....sketchy and seems incapable of collecting a persistent object that has become garbage. EOS [10] has a tracing GC that takes into account user placement hints to improve locality. However, their GC is quite complex and has not been implemented. Much previous work in distributed garbage collection [5, 16] considers processes communicating by messages (without shared memory) using a hybrid of tracing and reference counting. Each process traces its internal pointers; references across process boundaries are reference counted as they are sent in messages. Some object oriented databases use a similar ....
Andrew Birrell, Greg Nelson, Susan Owicki, and Edward Wobber. Network objects. In Proceedings of the 14th ACM Symposium on Operating Systems Principles, pages 217--230, Asheville, NC (USA), December 1993.
....The marshaled representation encodes the location of scionY (R) relative to X. The message is then sent to to X, where the location is unmarshaled to create stubX (R) 3 Stub Scion Pair Chains The SSPC system [13] is a mechanism for distributed reference tracking similar to Network Objects [1] and supporting acyclic distributed garbage collection. It differs from Network Objects in several important respects, such as: a reduction of the number of messages required for sending a reference, lower latencies, fault tolerance, and support for object migration. However, we will only describe ....
Andrew Birrell, Greg Nelson, Susan Owicki, and Edward Wobber. Network objects. In Proceedings of the 14th ACM Symposium on Operating Systems Principles, pages 217--230, Asheville, NC (USA), December 1993.
....reliably even if processes holding references to them crash. This is essential for the support of long running servers, which could otherwise suffer from disabling leakage of storage or other resources. The collector was designed to support a distributed programming paradigm called network objects [BNOW93], but it should be suitable for a variety of distributed systems. Network objects provide a means to incorporate remote procedure call in an object oriented programming style. An object consists of a data record and a set of methods, or operations, that can be invoked on the object. A network ....
Andrew Birrell, Greg Nelson, Susan Owicki, and Edward Wobber. Network objects. In 14th ACM Symposium on Operating Systems Principles, pages 217--230, December 1993.
No context found.
Andrew Birrell, Greg Nelson, Susan Owicki, and Edward Wobber. Network objects. In Proceedings of the Fourteenth ACM Symposium on Operating Systems Principles, pages 217-230, 1993.
No context found.
Andrew Birrell, Greg Nelson, Susan Owicki, and Edward Wobber. Network objects. In Proceedings of the Fourteenth ACM Symposium on Operating Systems Principles, pages 217--230, Asheville, NC, U.S.A., December 1993. ACM SIGOPS.
No context found.
Andrew Birrell, Greg Nelson, Susan Owicki, and Edward Wobber. Network Objects. In SIGOPS, December 1993.
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