{"title":"MMLite: a highly componentized system architecture","authors":"J. Helander, A. Forin","doi":"10.1145/319195.319210","DOIUrl":"https://doi.org/10.1145/319195.319210","url":null,"abstract":"MMLite is a modular system architecture that is suitable for a wide variety of hardware and applications. The system provides a selection of object-based components that are dynamically assembled into a full application system. Amongst these components is a namespace, which supports a new programming model, where components are automatically loaded on demand. The virtual memory manager is optional and is loaded on demand. Components can be easily replaced and reimplemented. A third party independently replaced the real-time scheduler with a different implementation. Componentization reduced the development time and led to a flexible and understandable system. MMLite is efficient, portable, and has a very small memory footprint. It runs on several microprocessors, including two VLIW processors. It is being used on processors that are embedded in a number of multimedia DirectX accelerator boards.","PeriodicalId":335784,"journal":{"name":"Proceedings of the 8th ACM SIGOPS European workshop on Support for composing distributed applications","volume":"86 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1998-09-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126778068","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":"FlexiNet—a flexible component oriented middleware system","authors":"R. Hayton, A. Herbert, Douglas I. Donaldson","doi":"10.1145/319195.319199","DOIUrl":"https://doi.org/10.1145/319195.319199","url":null,"abstract":"The FlexiNet Platform is a Java middleware platform that features a component based internal structure with strong emphasis placed on reflection and introspection at all levels. This allows programmers to tailor the platform for a particular application domain or deployment scenario by assembling strongly typed components. In this paper we give an overview of the FlexiNet architecture, highlighting how its approach differs from other middleware architectures, and illustrate the benefits that result from the new approach.","PeriodicalId":335784,"journal":{"name":"Proceedings of the 8th ACM SIGOPS European workshop on Support for composing distributed applications","volume":"25 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1998-09-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133056263","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}
Chi-Chao Chang, G. Czajkowski, C. Hawblitzel, Deyu Hu, T. V. Eicken
{"title":"Security versus performance tradeoffs in RPC implementations for safe language systems","authors":"Chi-Chao Chang, G. Czajkowski, C. Hawblitzel, Deyu Hu, T. V. Eicken","doi":"10.1145/319195.319219","DOIUrl":"https://doi.org/10.1145/319195.319219","url":null,"abstract":"In current distributed systems, the performance of remote procedure calls (RPCs) is determined primarily by the performance of the underlying network transport. While the overheads of the RPC system itself are secondary, two ongoing developments are likely to change this and will cause the current RPC systems to become the bottleneck in communication: user-level network interfaces and safe languages. User-level network interfaces such as VIA [2], U-Net [10], Fast Messages [8], NoW Active Messages [1], or Shrimp VMMC [3] are removing the operating system from the critical communication path by allowing applications to access the network interface directly. As a result, the overhead of the network transport underlying RPC decreases by almost an order of magnitude. At the same time, the increasing adoption of Java as the “internet programming language” places a heavier burden on the RPC system because communication among Java programs must satisfy the type safety properties assumed by the language run-time (this is a general issue with safe languages). Typically enforcing this type safety requires additional operations (e.g. checks) in the critical RPC path.","PeriodicalId":335784,"journal":{"name":"Proceedings of the 8th ACM SIGOPS European workshop on Support for composing distributed applications","volume":"14 22","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1998-09-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133204076","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}
J. Liedtke, N. Islam, T. Jaeger, Vsevolod Panteleenko, Yoonho Park
{"title":"Irreproducible benchmarks might be sometimes helpful","authors":"J. Liedtke, N. Islam, T. Jaeger, Vsevolod Panteleenko, Yoonho Park","doi":"10.1145/319195.319232","DOIUrl":"https://doi.org/10.1145/319195.319232","url":null,"abstract":"Historically, benchmarks have been used for commercial purposes. A customer develops or selects a benchmark that generates a load that is considered to be typical for her/his applications. The benchmark is executed on various machines to find the most appropriate vendor and machine. In OS research, we use benchmarks for completely different purposes that can be subsumed under the headline “understanding a complex system”:","PeriodicalId":335784,"journal":{"name":"Proceedings of the 8th ACM SIGOPS European workshop on Support for composing distributed applications","volume":"4 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1998-09-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115422252","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":"Introducing contextual objects in an adaptive framework for wide-area mobile computing","authors":"Anne-Marie Kermarrec, P. Couderc, M. Banâtre","doi":"10.1145/319195.319230","DOIUrl":"https://doi.org/10.1145/319195.319230","url":null,"abstract":"The emergence of mobile computing combined with the increasing popularity of the Internet has introduced new challenges that are not addressed in traditional distributed systems. In particular, mobile computing is characterized by the extreme variability of the environment components such as network bandwidth, computing power, location, services available, etc. The goal of our work is to provide a framework to dynamically adapt applications to the continuous changes of mobile environments including physical constraints and more qualitative changes. As a basis of our work, we present in this paper the concept of contextual objects. This approach allows to express the dependencies of an object according to a number of contexts such as the time, the location or the physical aspects (available network bandwidth or computing power) in a changing environment. 1 I n t r o d u c t i o n In recent years, mobile computing has emerged as a promising class of systems and its importance is still growing: the increasing availability of wireless technology and mobile devices allows users to move around with their own computing environment. At the same time, the number of Internet users grows exponentially and facilities for accessing Internet are henceforth widespread available thereby increasing the need of ubiquitous network access. Supporting mobile users on the Internet is thus becoming essential and leads to new challenges which are not addressed in traditional distributed systems [8]. Although in a static environment system configuration and available resources remain unchanged, mobile computing is mainly characterized by the extreme variability of any kind of computing resources. To deal with the dynamic nature of mobility, tools allowing to adapt applications to such variations at any level (network, systems, resources and software) are needed. Many works have been proposed to achieve transparently either the masking of mobility at the network level or at the system level, or the adaptation to physical constraints. Most of these proposals are able to adapt themselves to mobile constraints but are not specific","PeriodicalId":335784,"journal":{"name":"Proceedings of the 8th ACM SIGOPS European workshop on Support for composing distributed applications","volume":"150 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1998-09-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132676454","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":"Filing system interfaces to support distributed multimedia applications","authors":"S. Childs","doi":"10.1145/319195.319220","DOIUrl":"https://doi.org/10.1145/319195.319220","url":null,"abstract":"As multimedia applications become part of mainstream computing, storage systems have to deal with many different file types, each with their own usage patterns and resource requirements. However, conventional file systems do not recognise this heterogeneity, and treat all stored data alike. By using file classes and interfaces to describe files of different types, useful information can be provided by the application and used by the file system to choose appropriate storage policies. An architecture is proposed by which file systems can provide support for different file classes in a flexible and extensible manner. This architecture is based on the Multi-Service Storage Architecture (MSSA) and will be implemented on the Nemesis operating system, which provides the resource guarantees necessary for multimedia applications.","PeriodicalId":335784,"journal":{"name":"Proceedings of the 8th ACM SIGOPS European workshop on Support for composing distributed applications","volume":"37 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1998-09-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133036185","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":"Constructing distributed groupware systems: a walk on the Wilde side","authors":"Stephen Barrett, B. Tangney, V. Cahill","doi":"10.1145/319195.319216","DOIUrl":"https://doi.org/10.1145/319195.319216","url":null,"abstract":"The term \"groupware\" is used to describe a wide range of application types, from e-mail systems through shared text editors to videoconferencing systems, all of which aim to support the co-operation of multiple users [Ellis et al., 1991]. Building such systems is difficult. All but the most trivial groupware system are complex distributed multi-user systems. For example, a system might integrate a spreadsheet, a CAD package and a multi-media conferencing application, enforcing a variation of strict turn taking on the part of the participants [Cutkosky et al., 1993]. It is important therefore to find a way to support the construction of groupware, so simplifying the design and programming tasks. This support should be generic and comprehensive: it should support, in every important respect, the construction of a very broad spectrum of groupware systems, rather than some subset. We hypothesise that useful groupware support should be based on an integrated approach that focuses first on the commonality across the range of groupware systems, rather than targeting specific support issues for one or other class of system.","PeriodicalId":335784,"journal":{"name":"Proceedings of the 8th ACM SIGOPS European workshop on Support for composing distributed applications","volume":"11 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1998-09-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134151895","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":"Quality of service for wide area clusters","authors":"C. Allison","doi":"10.1145/319195.319214","DOIUrl":"https://doi.org/10.1145/319195.319214","url":null,"abstract":"Quality of Service (QoS) is virtually synonymous with networked multimedia but could other types of distributed system benefit from QoS? This position paper examines the potential use of QoS in wide area cluster computing. The class of parallel applications that can benefit from clusters is currently restricted due to their relatively high latency and low throughput consequences of conventional networking. LANs offer the best performance but also limit the scope for effective clustering to a single room or building. Reliability is another key difference between conventional rnultiprocessors and clusters: the former can reasonably be programmed with the error-free assumption but applications cannot be run on distributed clusters without programming against the potential for remote faults. Emergent wide area high speed switched networks have the potential to reduce latency, increase bandwidth, improve reliability and remove some of the geographical constraints from wide area clustering. Can QoS parameters be used or defined to exploit these capabilities ?","PeriodicalId":335784,"journal":{"name":"Proceedings of the 8th ACM SIGOPS European workshop on Support for composing distributed applications","volume":"32 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1998-09-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130028283","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}
E. G. Sirer, R. Grimm, B. Bershad, A. J. Gregory, Sean McDirmid
{"title":"Distributed virtual machines: a system architecture for network computing","authors":"E. G. Sirer, R. Grimm, B. Bershad, A. J. Gregory, Sean McDirmid","doi":"10.1145/319195.319198","DOIUrl":"https://doi.org/10.1145/319195.319198","url":null,"abstract":"Modern virtual machines, such as Java and Inferno, are emerging as network computing platforms. While today’s virtual machines provide higher-level abstractions and more sophisticated services than their predecessors, and while they have migrated from dedicated mainframes to heterogeneous networked computers, their architecture has essentially remained intact. State of the art virtual machines are still monolithic, that is, all system components reside on the same host and are replicated among all clients in an organization. This crude replication of services among clients creates problems of security, manageability, performance and scalability. We propose a distributed architecture for virtual machines based on distributed service components. In our proposed system, services that control security, resource management, and code optimization are factored out of clients and reside in enterprisewide network servers. The services produce self-certifying, self-regulating, selfoptimizing programs via binary rewriting. We are currently building a Java virtual machine based on this architecture. We argue that distributed virtual machine architectures enable higher integrity, manageability, performance and scalability than monolithic virtual machines where all components reside on all clients.","PeriodicalId":335784,"journal":{"name":"Proceedings of the 8th ACM SIGOPS European workshop on Support for composing distributed applications","volume":"220 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1998-09-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116123114","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":"Imposing transactional properties on distributed software atchitectures","authors":"A. Zarras, V. Issarny","doi":"10.1145/319195.319200","DOIUrl":"https://doi.org/10.1145/319195.319200","url":null,"abstract":"specification language for the definition of the integration rules. Hence, the rules become reusable abstractions that can be easily interpreted while taking into account several implementation details, specific to the given computing system (e.g. implementation language, unde:(Iying communication platform etc.). Since in our execution model, components interact only through their interfaces, our specification language ends up to be quite simple. Its basic constieuents are: declarations of components' interface instances, and operation calls on components' interface in-","PeriodicalId":335784,"journal":{"name":"Proceedings of the 8th ACM SIGOPS European workshop on Support for composing distributed applications","volume":"7 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1998-09-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128704437","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}