{"title":"Experience with developing services for highly-distributed applications","authors":"Y. Artsy","doi":"10.1109/EDS.1990.138052","DOIUrl":"https://doi.org/10.1109/EDS.1990.138052","url":null,"abstract":"Hermes is an experimental project to evaluate the architecture and services appropriate for the construction of scalable, highly distributed applications. Many of these applications need to transfer data and control between dispersed users, for instance, forms and files between the functionaries (humans and automated tools) that need to process them. These applications are modeled as collections of mobile objects, each encapsulating both state and the operations on the state, and each able to move between the nodes of the functionaries. Discussed here are the distributed services for communication, migration, and logical routing developed at the user level in the Hermes system.<<ETX>>","PeriodicalId":443013,"journal":{"name":"IEEE Workshop on Experimental Distributed Systems","volume":"13 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1990-10-11","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126542779","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Alpha: a nonproprietary OS for large, complex, distributed real-time systems","authors":"E. Jensen, J. Northcutt","doi":"10.1109/EDS.1990.138047","DOIUrl":"https://doi.org/10.1109/EDS.1990.138047","url":null,"abstract":"Alpha is a novel nonproprietary operating system for large, complex, distributed real-time systems. Examples include combat platform and battle management, factory automation, and telecommunications. Such systems run distributed applications and need global (transnode) resource management. They are inherently asynchronous, dynamic, and stochastic, and yet must be highly dependable. Alpha includes support for maintaining application-specific correctness, of distributed execution and consistency of distributed data, and best-effort management of all resources directly with actual application time constraints. Certain features of Alpha are briefly described. First the distribution and real-time characteristics of Alpha's application context are summarized; some of Alpha's approaches to dealing with distribution are discussed. An overview of the project history and status is provided.<<ETX>>","PeriodicalId":443013,"journal":{"name":"IEEE Workshop on Experimental Distributed Systems","volume":"13 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1990-10-11","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128139173","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Distributed virtual memory consistency protocols: design and performance","authors":"A. Sane, K. MacGregor, Roy H. Campbell","doi":"10.1109/EDS.1990.138056","DOIUrl":"https://doi.org/10.1109/EDS.1990.138056","url":null,"abstract":"Choices, an object-oriented framework for the design of distributed virtual memory consistency protocols, is presented. It is shown that custom-designed protocols for different applications are easy to construct and use with this framework. Consistency protocols are shown to be useful in implementing atomic update and in controlling assignment of pages to processes. Experimental results are presented.<<ETX>>","PeriodicalId":443013,"journal":{"name":"IEEE Workshop on Experimental Distributed Systems","volume":"11 3 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1990-10-11","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132547022","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Hermes: an integrated language and system for distributed programming","authors":"R. Strom","doi":"10.1109/EDS.1990.138054","DOIUrl":"https://doi.org/10.1109/EDS.1990.138054","url":null,"abstract":"Hermes is an experimental language for implementing complex systems and distributed applications. It conceals low-level programming details, such as data representation, distribution, communications protocols, and operating system calls, while retaining expressiveness, checkability, and efficiency. Hermes supports multiple interacting applications and services within a single environment. Applications and services interact by making calls and passing typed parameters-exactly the same way modules interact within an application. The syntax and semantics of interaction are uniform, regardless of whether the interacting components are local or remote and whether they belong to the same user or to different users. The distinctive features of Hermes are processes as the basic units of modularity and interaction, ports as capabilities, a representation-independent pointerless type system, and compile-time checking which enforces protection on the granularity of a module. The concept of a multiapplication environment is discussed.<<ETX>>","PeriodicalId":443013,"journal":{"name":"IEEE Workshop on Experimental Distributed Systems","volume":"71 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1990-10-11","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122516945","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Vanguard: a protocol suite and OS kernel for distributed object-oriented environments","authors":"R. Finlayson, M. Hennecke, S. L. Goldberg","doi":"10.1109/EDS.1990.138048","DOIUrl":"https://doi.org/10.1109/EDS.1990.138048","url":null,"abstract":"An overview is given of Vanguard, an experimental object-oriented distributed operating system kernel currently under development. Vanguard is defined by a protocol suite and object model, independent of any particular programming language. The Vanguard protocols and object model are implemented by a distributed kernel that is also structured as an object-oriented Vanguard application. Although object oriented, Vanguard is not based on any single programming language, object oriented or otherwise. The Vanguard kernel currently runs only as an application on top of existing host operating systems.<<ETX>>","PeriodicalId":443013,"journal":{"name":"IEEE Workshop on Experimental Distributed Systems","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1990-10-11","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130686650","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Experience with the AMp group communication system: current Status","authors":"P. Veríssimo","doi":"10.1109/EDS.1990.138049","DOIUrl":"https://doi.org/10.1109/EDS.1990.138049","url":null,"abstract":"A communication architecture, named AMp, which supports, through the adequate protocols, a reliable communication service featuring several order, distributed-agreement, synchronism, and group management properties, is presented. In this local computer network model, host computing units are interconnected, through a broadcast channel, by means of network attachment controllers (NACs). Each host NAC set is a node. The NACs plus the channel are an error-containment domain: they ensure a dependable communications service to the hosts. They also are a performance-containment domain. The decoupling of NACs from the hosts aims at enforcing that containment and offering a host-independent interface. The NAC is said to be fail-silent: it is confined to always delivering correct messages and halting after its first failure. The above-mentioned properties are materialized by a two-phase accept protocol, whose simplicity allows an efficient implementation. In practice the protocol works like a commit protocol. Most of the actual implementation work has been carried out within the scope of the Delta-4 project. The Delta-4 system is an open, dependable distributed architecture. The Estimulo project, which is aimed at exploring new concepts in the design of distributed office systems, not excluding business and scientific applications, is also outlined.<<ETX>>","PeriodicalId":443013,"journal":{"name":"IEEE Workshop on Experimental Distributed Systems","volume":"171 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1990-10-11","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132069570","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Remote execution and communication in GUIDE-an object-oriented distributed system","authors":"D. Decouchant, A. Duda","doi":"10.1109/EDS.1990.138050","DOIUrl":"https://doi.org/10.1109/EDS.1990.138050","url":null,"abstract":"The authors present some issues related to the remote execution, distribution, and communication in GUIDE, an object-oriented programming language and system which supports the construction and execution of distributed applications. At the programmer level, the distribution is hidden, i.e. objects are accessed through systemwide references and the execution may take place at any node in the system. The remote execution in GUIDE is based on job and activity diffusion, and remote object invocation. These concepts are refinements of traditional concepts used for designing distributed systems: client-server model and remote procedure call. They result in a symmetric system architecture offering a high level of transparency to the programmer. The main features of GUIDE are presented, and the remote execution and distribution based on remote object invocation and activity diffusion are considered. The underlying communication protocol is discussed, and some performance figures and conclusions are given.<<ETX>>","PeriodicalId":443013,"journal":{"name":"IEEE Workshop on Experimental Distributed Systems","volume":"114 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1990-10-11","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134468975","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Experience with the Condor distributed batch system","authors":"M. Litzkow, M. Livny","doi":"10.1109/EDS.1990.138057","DOIUrl":"https://doi.org/10.1109/EDS.1990.138057","url":null,"abstract":"Condor is a distributed batch system designed to provide convenient access to unutilized workstations while preserving the rights of their owners and to meet the needs of users who are frustrated by the limitations of computing on a single workstation. Several principles have driven the design of Condor. The first is that workstation owners should always have the resources of the workstation they own at their disposal. The second is that access to remote capacity must be easy and should approximate the local execution environment as closely as possible. The third is portability, which is essential because of rapid developments in the workstations on which Condor operates. Mechanisms basic to the operation of Condor, working experience, and software support requirements are outlined.<<ETX>>","PeriodicalId":443013,"journal":{"name":"IEEE Workshop on Experimental Distributed Systems","volume":"3 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1990-10-11","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132681272","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"MARUTI: a hard real-time operating system","authors":"S. Levi, S. Tripathi, S. Carson, A. Agrawala","doi":"10.1145/71021.71026","DOIUrl":"https://doi.org/10.1145/71021.71026","url":null,"abstract":"The MARUTI operating system is designed to support hard real-time applications on distributed computer systems while providing a fault-tolerant operation. Its design is object oriented, and the communication mechanism allows transparent use of the resources of a distributed system. Fault tolerance is provided through a consistent set of mechanisms that support a number of policies. Most important, MARUTI supports guaranteed-service scheduling, by which jobs that are accepted by the system are guaranteed to meet the time constraints of the computation requests with a specified degree of fault tolerance. As a consequence, MARUTI applications can be executed in a predictable fashion. The development of current hard real-time applications requires that the analyst estimate the resource requirements for all parts of the computation and then makes sure that the resources are available to meet the time constraints, which tends to be a cumbersome process. As a part of the MARUTI system, a set of tools which support the hard real-time applications during various phases of their life cycle has been developed. The present version of MARUTI has been implemented as a prototype running on a Unix platform. Experiences with the development of this prototype are also presented.<<ETX>>","PeriodicalId":443013,"journal":{"name":"IEEE Workshop on Experimental Distributed Systems","volume":"36 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1989-07-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127073231","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}