Pub Date : 1993-10-14DOI: 10.1109/WWOS.1993.348168
D. Mosberger, L. Peterson
The motivation for the work presented in this paper stems from the observation that optical token-ring networks have bit-error rates that are low enough to be negligible for all but the most demanding applications. We define the notion of careful protocols that attempt to benefit from the reliability of such networks. Although it might seem trivial to implement protocols in the presence of a reliable network, a closer look reveals that this is not at all true. In essence, while protocols based on unreliable networks have to worry recovering from lost packets, careful protocols have to worry about flow-control. This is work in progress, and as such, incomplete. However, first results appear to show that it might be worthwhile to use careful protocols over networks with high reliability.<>
{"title":"Careful protocols or how to use highly reliable networks","authors":"D. Mosberger, L. Peterson","doi":"10.1109/WWOS.1993.348168","DOIUrl":"https://doi.org/10.1109/WWOS.1993.348168","url":null,"abstract":"The motivation for the work presented in this paper stems from the observation that optical token-ring networks have bit-error rates that are low enough to be negligible for all but the most demanding applications. We define the notion of careful protocols that attempt to benefit from the reliability of such networks. Although it might seem trivial to implement protocols in the presence of a reliable network, a closer look reveals that this is not at all true. In essence, while protocols based on unreliable networks have to worry recovering from lost packets, careful protocols have to worry about flow-control. This is work in progress, and as such, incomplete. However, first results appear to show that it might be worthwhile to use careful protocols over networks with high reliability.<<ETX>>","PeriodicalId":345070,"journal":{"name":"Proceedings of IEEE 4th Workshop on Workstation Operating Systems. WWOS-III","volume":"44 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1993-10-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123676930","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}
Pub Date : 1993-10-14DOI: 10.1109/WWOS.1993.348154
G. Kiczales, J. Lamping, C. Maeda, David Keppel, D. McNamee
Although modern operating systems provide powerful abstractions to application programs, they often fail to implement those abstractions in a way that provides applications programs, especially specialized application programs, with the best utilization of the physical resources of the computer system. The operating system community has implicitly recognized this problem by providing mechanisms that give client programmers more access to the physical substrate. The Mach External Pager allows clients to replace the paging mechanism. More recent work allows client replacement of the paging policy as well. Scheduler activations share the job of thread management between clients and the system. Apertos allows these and other aspects of operating system implementation to be client-controlled. Object-oriented operating systems under development also provide these kinds of control. We contend that there is a very general issue here, which operating systems have been among the first kinds of software to have to face head-on: some implementation decisions are crucial strategy decisions whose resolution will invariably bias the performance of the resulting implementation. Explicitly recognizing this issue helps to make sense of current trends and suggests new directions to explore. We consider the implications of this issue for operating systems, providing a framework with which to analyze systems such as those mentioned above, and suggesting connections with similar problems in other domains.<>
{"title":"The need for customizable operating systems","authors":"G. Kiczales, J. Lamping, C. Maeda, David Keppel, D. McNamee","doi":"10.1109/WWOS.1993.348154","DOIUrl":"https://doi.org/10.1109/WWOS.1993.348154","url":null,"abstract":"Although modern operating systems provide powerful abstractions to application programs, they often fail to implement those abstractions in a way that provides applications programs, especially specialized application programs, with the best utilization of the physical resources of the computer system. The operating system community has implicitly recognized this problem by providing mechanisms that give client programmers more access to the physical substrate. The Mach External Pager allows clients to replace the paging mechanism. More recent work allows client replacement of the paging policy as well. Scheduler activations share the job of thread management between clients and the system. Apertos allows these and other aspects of operating system implementation to be client-controlled. Object-oriented operating systems under development also provide these kinds of control. We contend that there is a very general issue here, which operating systems have been among the first kinds of software to have to face head-on: some implementation decisions are crucial strategy decisions whose resolution will invariably bias the performance of the resulting implementation. Explicitly recognizing this issue helps to make sense of current trends and suggests new directions to explore. We consider the implications of this issue for operating systems, providing a framework with which to analyze systems such as those mentioned above, and suggesting connections with similar problems in other domains.<<ETX>>","PeriodicalId":345070,"journal":{"name":"Proceedings of IEEE 4th Workshop on Workstation Operating Systems. WWOS-III","volume":"10 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1993-10-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128401710","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}
Pub Date : 1993-10-14DOI: 10.1109/WWOS.1993.348181
M. Theimer, A. Demers, B. Welch
Personal digit assistants (PDAs) are small, mobile computing devices whose functionality ranges somewhere between that of an electronic organizer and that of a full-function portable computer. Since PDAs are too small in size to be used for extended work sessions they must justify their existence mostly by providing services that are tailored to people on the go. However, we observe that PDAs are also starting to acquire the ability to communicate and believe that in the long run much of their value will come from being able to interact with external services and devices. The goal of the paper is to relate a view of the ways in which operating systems for this new breed of small ubiquitous computing device will be different from the operating systems of today. The viewpoint is based partly on thoughts about what a ubiquitous computing world will look like and partly on experience with building and using various parts of a ubiquitous computing testbed. In particular, ParcTab computers and ParcPad notebook computers. Both are stylus-based and have onboard communications facilities.<>
{"title":"Operating system issues for PDAs","authors":"M. Theimer, A. Demers, B. Welch","doi":"10.1109/WWOS.1993.348181","DOIUrl":"https://doi.org/10.1109/WWOS.1993.348181","url":null,"abstract":"Personal digit assistants (PDAs) are small, mobile computing devices whose functionality ranges somewhere between that of an electronic organizer and that of a full-function portable computer. Since PDAs are too small in size to be used for extended work sessions they must justify their existence mostly by providing services that are tailored to people on the go. However, we observe that PDAs are also starting to acquire the ability to communicate and believe that in the long run much of their value will come from being able to interact with external services and devices. The goal of the paper is to relate a view of the ways in which operating systems for this new breed of small ubiquitous computing device will be different from the operating systems of today. The viewpoint is based partly on thoughts about what a ubiquitous computing world will look like and partly on experience with building and using various parts of a ubiquitous computing testbed. In particular, ParcTab computers and ParcPad notebook computers. Both are stylus-based and have onboard communications facilities.<<ETX>>","PeriodicalId":345070,"journal":{"name":"Proceedings of IEEE 4th Workshop on Workstation Operating Systems. WWOS-III","volume":"17 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1993-10-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134282803","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}
Pub Date : 1993-10-14DOI: 10.1109/WWOS.1993.348166
B. R. Badrinath, A. Bakre, T. Imielinski, R. Maramtz
Networking protocols are being modified to handle mobility of hosts. This paper argues that there is a need to make mobility explicit at every level of the OSI model - even above the network level through user or application level. Further, it is proposed that the mobile host and the first hop (wireless link) of communication be handled differently than the rest of the network. Hence, in networks with mobile hosts, we propose a radical approach of indirect interaction between clients and servers.<>
{"title":"Handling mobile clients: a case for indirect interaction","authors":"B. R. Badrinath, A. Bakre, T. Imielinski, R. Maramtz","doi":"10.1109/WWOS.1993.348166","DOIUrl":"https://doi.org/10.1109/WWOS.1993.348166","url":null,"abstract":"Networking protocols are being modified to handle mobility of hosts. This paper argues that there is a need to make mobility explicit at every level of the OSI model - even above the network level through user or application level. Further, it is proposed that the mobile host and the first hop (wireless link) of communication be handled differently than the rest of the network. Hence, in networks with mobile hosts, we propose a radical approach of indirect interaction between clients and servers.<<ETX>>","PeriodicalId":345070,"journal":{"name":"Proceedings of IEEE 4th Workshop on Workstation Operating Systems. WWOS-III","volume":"31 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1993-10-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131019121","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}
Pub Date : 1993-10-14DOI: 10.1109/WWOS.1993.348163
J. Mogul
Operating systems people think of desktop systems as "small" machines and worry about supporting small main memories. This is a historical aberration; memory sizes (and memory demands) are growing faster than memory access times are decreasing, so desktop operating systems will have to do a better job at supporting large memories. I discuss three problem areas for programs with large address spaces: avoiding TLB misses, better use of backing store, and use of explicit control to avoid paging latencies.<>
{"title":"Big memories on the desktop","authors":"J. Mogul","doi":"10.1109/WWOS.1993.348163","DOIUrl":"https://doi.org/10.1109/WWOS.1993.348163","url":null,"abstract":"Operating systems people think of desktop systems as \"small\" machines and worry about supporting small main memories. This is a historical aberration; memory sizes (and memory demands) are growing faster than memory access times are decreasing, so desktop operating systems will have to do a better job at supporting large memories. I discuss three problem areas for programs with large address spaces: avoiding TLB misses, better use of backing store, and use of explicit control to avoid paging latencies.<<ETX>>","PeriodicalId":345070,"journal":{"name":"Proceedings of IEEE 4th Workshop on Workstation Operating Systems. WWOS-III","volume":"197 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1993-10-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132292336","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}
Pub Date : 1993-10-14DOI: 10.1109/WWOS.1993.348150
Joseph S. Barrera
Invocation batching combines multiple object invocations into a single message; result chaining makes results from one batched invocation available to the other invocations batched with it. Invocation chaining, or the combination of invocation batching with result chaining, is the key to allowing lightweight objects to be manipulated efficiently across heavyweight boundaries, whether between machines, between address spaces, or between user and kernel. By reducing the number of boundary crossings, invocation chaining reduces the total cost of invocation, making it more effective than previous solutions such as asynchronous messaging. This paper describes an initial implementation of invocation chaining.<>
{"title":"Invocation chaining: manipulating lightweight objects across heavyweight boundaries","authors":"Joseph S. Barrera","doi":"10.1109/WWOS.1993.348150","DOIUrl":"https://doi.org/10.1109/WWOS.1993.348150","url":null,"abstract":"Invocation batching combines multiple object invocations into a single message; result chaining makes results from one batched invocation available to the other invocations batched with it. Invocation chaining, or the combination of invocation batching with result chaining, is the key to allowing lightweight objects to be manipulated efficiently across heavyweight boundaries, whether between machines, between address spaces, or between user and kernel. By reducing the number of boundary crossings, invocation chaining reduces the total cost of invocation, making it more effective than previous solutions such as asynchronous messaging. This paper describes an initial implementation of invocation chaining.<<ETX>>","PeriodicalId":345070,"journal":{"name":"Proceedings of IEEE 4th Workshop on Workstation Operating Systems. WWOS-III","volume":"21 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1993-10-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125588651","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}
Pub Date : 1993-10-14DOI: 10.1109/WWOS.1993.348174
J. Landay, Todd R. Kaufmann
The age of mobile computing with small portable computers is upon us. However, systems researchers continue to focus on transferring their workstation environments to these machines rather than studying what tasks more typical users wish to perform. Furthermore, we argue that even in the unlikely event that these tasks are the same as those performed by researchers on their workstations, desktop environments and applications may still be inappropriate for the wide range of mobile devices that will be marketed. To explore this area, we have built a mobile computing device along with a user interface system that attempts to address some of these issues.<>
{"title":"User interface issues in mobile computing","authors":"J. Landay, Todd R. Kaufmann","doi":"10.1109/WWOS.1993.348174","DOIUrl":"https://doi.org/10.1109/WWOS.1993.348174","url":null,"abstract":"The age of mobile computing with small portable computers is upon us. However, systems researchers continue to focus on transferring their workstation environments to these machines rather than studying what tasks more typical users wish to perform. Furthermore, we argue that even in the unlikely event that these tasks are the same as those performed by researchers on their workstations, desktop environments and applications may still be inappropriate for the wide range of mobile devices that will be marketed. To explore this area, we have built a mobile computing device along with a user interface system that attempts to address some of these issues.<<ETX>>","PeriodicalId":345070,"journal":{"name":"Proceedings of IEEE 4th Workshop on Workstation Operating Systems. WWOS-III","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1993-10-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128894194","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}
Pub Date : 1993-10-14DOI: 10.1109/WWOS.1993.348149
Joseph S. Barrera
Systems software that tunes and reconfigures itself is both feasible and increasingly necessary. The necessity of self-tuning systems arises from the increased complexity of systems software combined with the broader audience for such systems. We demonstrate the feasibility of self-tuning systems by constructing one based on an architecture which separates the tasks of defining expectations, measuring actual performance, analyzing measurements in comparison with expectations, and performing actions in response to analysis which can range from gathering more data to reconfiguring major components of the system. This separation of responsibilities allows systems components to concentrate on performing well within narrower bands of operation, leaving the analysis agent to make more global and longer term decisions regarding the best operating parameters and component implementations to use.<>
{"title":"Self-tuning systems software","authors":"Joseph S. Barrera","doi":"10.1109/WWOS.1993.348149","DOIUrl":"https://doi.org/10.1109/WWOS.1993.348149","url":null,"abstract":"Systems software that tunes and reconfigures itself is both feasible and increasingly necessary. The necessity of self-tuning systems arises from the increased complexity of systems software combined with the broader audience for such systems. We demonstrate the feasibility of self-tuning systems by constructing one based on an architecture which separates the tasks of defining expectations, measuring actual performance, analyzing measurements in comparison with expectations, and performing actions in response to analysis which can range from gathering more data to reconfiguring major components of the system. This separation of responsibilities allows systems components to concentrate on performing well within narrower bands of operation, leaving the analysis agent to make more global and longer term decisions regarding the best operating parameters and component implementations to use.<<ETX>>","PeriodicalId":345070,"journal":{"name":"Proceedings of IEEE 4th Workshop on Workstation Operating Systems. WWOS-III","volume":"40 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1993-10-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124102884","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}
Pub Date : 1993-10-14DOI: 10.1109/WWOS.1993.348172
J. Howard
Future large distributed systems will be made by interconnecting highly autonomous subsystems, rather than by building ever more elaborate complexes which attempt to provide a single system image transparent to the user. The work described here explores the implications of this in the context of file sharing using occasional reconciliation.<>
{"title":"Using reconciliation to share files between occasionally connected computers","authors":"J. Howard","doi":"10.1109/WWOS.1993.348172","DOIUrl":"https://doi.org/10.1109/WWOS.1993.348172","url":null,"abstract":"Future large distributed systems will be made by interconnecting highly autonomous subsystems, rather than by building ever more elaborate complexes which attempt to provide a single system image transparent to the user. The work described here explores the implications of this in the context of file sharing using occasional reconciliation.<<ETX>>","PeriodicalId":345070,"journal":{"name":"Proceedings of IEEE 4th Workshop on Workstation Operating Systems. WWOS-III","volume":"46 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1993-10-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124682415","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}
We are designing a machine with a very large amount of nonvolatile solid state memory. While some mechanical storage device may remain present to handle overflow and to protect against catastrophic (software) failures, the nonvolatile solid state memory is the primary repository of permanent data. Benefits of this approach include much improved access times, and, hopefully, simplified storage system software. We argue that technological advances will soon make it possible to build high-end file servers and database servers with large nonvolatile solid state memories, at a price/performance ratio competitive with disk- or RAID-based designs. The eNVy project comprises two largely separate aspects. In terms of software, we are investigating how to write a storage server that can take advantage of a large nonvolatile memory, regardless of what technology is used. In terms of hardware, we are looking at different ways of building such a memory system.<>
{"title":"eNVy: a NonVolatile main memory storage system","authors":"Michael Wu, W. Zwaenepoel","doi":"10.1145/195473.195506","DOIUrl":"https://doi.org/10.1145/195473.195506","url":null,"abstract":"We are designing a machine with a very large amount of nonvolatile solid state memory. While some mechanical storage device may remain present to handle overflow and to protect against catastrophic (software) failures, the nonvolatile solid state memory is the primary repository of permanent data. Benefits of this approach include much improved access times, and, hopefully, simplified storage system software. We argue that technological advances will soon make it possible to build high-end file servers and database servers with large nonvolatile solid state memories, at a price/performance ratio competitive with disk- or RAID-based designs. The eNVy project comprises two largely separate aspects. In terms of software, we are investigating how to write a storage server that can take advantage of a large nonvolatile memory, regardless of what technology is used. In terms of hardware, we are looking at different ways of building such a memory system.<<ETX>>","PeriodicalId":345070,"journal":{"name":"Proceedings of IEEE 4th Workshop on Workstation Operating Systems. WWOS-III","volume":"264 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1993-10-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134196871","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}