Check out the new USENIX Web site.
Computing SystemsUSENIX


Volume 9, Number 3

Summer 1996

Pages 155-178

The Expected Lifetime of Single-Address-Space Operating Systems

By David Kotz and Preston Crow


Trends toward shared-memory programming paradigms, large (64-bit) address spaces, and memory-mapped files have led some to propose the use of a single virtual-address space, shared by all processes and processors. To simplify address-space management, some have claimed that a 64-bit address space is sufficiently large that there is no need to ever re-use addresses. Unfortunately, there has been no data to either support or refute these claims, or to aid in the design of appropriate address-space management policies. In this paper, we present the results of extensive kernel-level tracing of the workstations on our campus, and discuss the implications for single-address-space operating systems. We found that single-address-space systems will probably not outgrow the available address space, but only if reasonable space-allocation policies are used, and only if the system can adapt as larger address spaces become available.

Optimized Memory-Based Messaging: Leveraging the Memory System for High-Performance Communication

By David R. Cheriton and Robert A. Kutter


Memory-based messaging, passing messages between programs through a shared memory segment, is a recognized technique for efficient communication that takes direct advantage of memory system performance. However, the conventional operating system and hardware support for this approach is inefficient, especially in large-scale multiprocessor systems.

This paper describes interface, software and hardware optimizations for memory-based messaging that efficiently exploit the basic mechanisms of the memory system to provide superior communication performance. We describe the overall model of optimized memory-based messaging, its implementation in an operating system kernel and hardware support for this approach in a scalable multiprocessor architecture. The optimizations include address-valued signals, message-oriented memory consistency and automatic signaling on write. Performance evaluations show these extensions provide a three-to-five-fold improvement in communication performance over a comparable software-only implementation.

Pages 217-237

Achieving Predictable Response Time with an Intelligent File System Updater

By Li-Chi Feng and Ruei-Chuan Chang


Delayed write is a very popular technique to improving the file system performance of UNIX operating systems. When write operations are delayed, an update policy decides how and when to write these modified blocks to their assigned disk locations. Recent research results show that conventional update mechanisms perform not very well, because they neglect the fact that different I/O requests naturally have different characteristics. It makes time critical interactive jobs endure large variations in response time. Update policy controls background write activities that are less time critical and should be performed under constraints that do not violate the urgency of other time critical jobs. In this paper we propose an effective update scheme. We suggest new techniques: burst declustering and opportunistic asynchronous write. Besides, we develop a system activity sensor called SAPRO (system activity probe) that monitors the system activities and disk queuing status to adjust the behavior of our algorithm. Performance evaluation shows that our algorithm can alleviate the lengthy queuing delay, reduce the variance and worst case read response time significantly (30% and 51% respectively). The mean read response time and total system performance are also improved.

Pages 239-253

A Tool for Building Firewall-Router Configurations

By Christopher J. Calabrese


Several commercial firewall solutions are currently available, but they may not be appropriate for all situations because of their expense, lack of flexibility, or lack of scalability. Instead, many firewalls are built using packet-filtering routers.

One big impediment to building router-based firewalls is how poorly the configuration languages used to describe the proper operation of the routers are suited to the job of building and maintaining robust firewalls. These languages are overly-terse and do not support software- engineering techniques such as code re-use and data- hiding.

This paper describes a tool that overcomes these limitations by generating a configuration in the router's native configuration language from a high-level description of the firewall that is embedded in KORNSHELL, a popular computer language supporting code- reuse and data-hiding.

Pages 255-257

Controversy: Independent One-Time Passwords

Rejoinder by John Adams

Response by Aviel D. Rubin

Pages 259-260

Contributors to This Issue


?Need help? Use our Contacts page.
Last changed: May 16, 1997 pc
'Systems index
Publications index