John K. Ousterhout

MICHAEL N. NELSON, BRENT B. WELCH, and JOHN K. OUSTERHOUT (2002)

Michael N. Nelson, Brent B. Welch, John K. Ousterhout

This paper describes a simple distributed mechanism for caching files among a networked collection of workstations. We have implemented it as part of the Sprite operating system. In Sprite, file...

The Zebra Striped Network File System (2001)

John H. Hartman, John K. Ousterhout

Zebra is a network file system that increases throughput by striping file data across multiple servers. Rather than striping each file separately, Zebra forms all the new data from each client into a...

The Design and Implementation of a Log-Structured File System (2000)

Mendel Rosenblum, John K. Ousterhout

This paper presents a new technique for disk storage management called a log-structured file system. A logstructured file system writes all modifications to disk sequentially in a log-like structure,...

Caching in the Sprite Network File System (2000)

Michael N. Nelson, Brent B. Welch, John K. Ousterhout

The Sprite network operating system uses large main-memory disk block caches to achieve high performance in its file system. It provides non-write-through file caching on both client and server...

Measurements of a Distributed File System (2000)

Mary G. Baker, John H. Hartman, Michael D. Kupfer, Ken W. Shirriff, John K. Ousterhout

We analyzed the user-level file access patterns and caching behavior of the Sprite distributed file system. The first part of our analysis repeated a study done in 1985 of the BSD UNIX file system....

Why Aren't Operating Systems Getting Faster As Fast as Hardware? (1999)

John K. Ousterhout

This paper evaluates several hardware platforms and operating systems using a set of benchmarks that stress kernel entry/exit, file systems, and other things related to operating systems. The overall...

Measurements of a Distributed File System (1999)

Mary G. Baker, John H. Hartman, Michael D. Kupfer, Ken W. Shirriff, John K. Ousterhout

We analyzed the user-level file access patterns and caching behavior of the Sprite distributed file system. The first part of our analysis repeated a study done in 1985 of the BSD UNIX file system....

John H. Hartman John K. Ousterhout (1999)

John H. Hartman, John K. Ousterhout

Zebra is a network file system that increases throughput by striping file data across multiple servers. Rather than striping each file separately, Zebra forms all the new data from each client into a...

The Safe-Tcl Security Model (1999)

John K. Ousterhout, Jacob Y. Levy, Brent B. Welch

this paper is organized as follows. Section 2 provides background information

The Design and Implementation of a Log-Structured File System (1999)

Mendel Rosenblum, John K. Ousterhout

This paper presents a new technique for disk storage management called a log-structured file system. A logstructured file system writes all modifications to disk sequentially in a log-like structure,...

The Role of Distributed State (1999)

John K. Ousterhout

Distributed state offers the potential for improving the performance, coherency, and reliability of distributed systems. Unfortunately, distributed state also introduces consistency problems, crash...

Why Aren't Operating Systems Getting Faster As Fast as Hardware? (1998)

John K. Ousterhout

This paper evaluates several hardware platforms and operating systems using a set of benchmarks that stress kernel entry/exit, file systems, and other things related to operating systems. The overall...

The Zebra Striped Network File System (1998)

John H. Hartman, John K. Ousterhout

Zebra is a network file system that increases throughput by striping file data across multiple servers. Rather than striping each file separately, Zebra forms all the new data from each client into a...

Caching in the Sprite Network File System (1998)

Michael N. Nelson, Brent B. Welch, John K. Ousterhout

The Sprite network operating system uses large main-memory disk block caches to achieve high performance in its file system. It provides non-write-through file caching on both client and server...

The Design and Implementation of a Log-Structured File System (1998)

Mendel Rosenblum, John K. Ousterhout

This paper presents a new technique for disk storage management called a log-structured file system. A logstructured file system writes all modifications to disk sequentially in a log-like structure,...

John H. Hartman John K. Ousterhout (1998)

John H. Hartman, John K. Ousterhout

Zebra is a network file system that increases throughput by striping file data across multiple servers. Rather than striping each file separately, Zebra forms all the new data from each client into a...

The Design and Implementation of a Log-Structured File System (1998)

Mendel Rosenblum, John K. Ousterhout

This paper presents a new technique for disk storage management called a log-structured file system. A logstructured file system writes all modifications to disk sequentially in a log-like structure,...

The Zebra Striped Network File System (1998)

John H. Hartman, John K. Ousterhout

Zebra is a network file system that increases throughput by striping file data across multiple servers. Rather than striping each file separately, Zebra forms all the new data from each client into a...

Why Aren't Operating Systems Getting Faster As Fast as Hardware? (1998)

John K. Ousterhout

This paper evaluates several hardware platforms and operating systems using a set of benchmarks that stress kernel entry/exit, file systems, and other things related to operating systems. The overall...

An X11 Toolkit Based on the Tcl Language (1998)

John K. Ousterhout

This paper describes a new toolkit for X11 called Tk. The overall functions provided by Tk are similar to those of the standard toolkit Xt. However, Tk is implemented using Tcl, a lightweight...

An X11 Toolkit Based on the Tcl Language (1998)

John K. Ousterhout

This paper describes a new toolkit for X11 called Tk. The overall functions provided by Tk are similar to those of the standard toolkit Xt. However, Tk is implemented using Tcl, a lightweight...

The Zebra Striped Network File System (1998)

John H. Hartman, John K. Ousterhout

Zebra is a network file system that increases throughput by striping file data across multiple servers. Rather than striping each file separately, Zebra forms all the new data from each client into a...

John H. Hartman John K. Ousterhout (1998)

John H. Hartman, John K. Ousterhout

Zebra is a network file system that increases throughput by striping file data across multiple servers. Rather than striping each file separately, Zebra forms all the new data from each client into a...

Scripting: Higher Level Programming for the 21st Century (1997)

John K. Ousterhout

Scripting languages such as Perl and Tcl represent a very different style of programming than system programming languages such as C or Java. Scripting languages are designed for "gluing"...

Scripting: Higher Level Programming for the 21st Century (1997)

John K. Ousterhout

Scripting languages such as Perl and Tcl represent a very different style of programming than system programming languages such as C or Java TM . Scripting languages are designed for "gluing"...

The Design and Implementation of a Log-Structured File System (1997)

Mendel Rosenblum, John K. Ousterhout

This paper presents a new technique for disk storage management called a log-structured file system. A logstructured file system writes all modifications to disk sequentially in a log-like structure,...

Caching in the Sprite Network File System (1997)

Michael N. Nelson, Brent B. Welch, John K. Ousterhout

The Sprite network operating system uses large main-memory disk block caches to achieve high performance in its file system. It provides non-write-through file caching on both client and server...

Why Aren't Operating Systems Getting Faster As Fast as Hardware? (1997)

John K. Ousterhout

This paper evaluates several hardware platforms and operating systems using a set of benchmarks that stress kernel entry/exit, file systems, and other things related to operating systems. The overall...

A Trace-Driven Analysis of the UNIX 4.2 BSD File System (1997)

John K. Ousterhout, Herve Da Costa, David Harrison, John A. Kunze, Mike Kupfer, James G. Thompson

We analyzed the UNIX 4.2 BSD file system by recording userlevel activity in trace files and writing programs to analyze the traces. The tracer did not record individual read and write operations, yet...

Why Aren't Operating Systems Getting Faster As Fast as Hardware? (1997)

John K. Ousterhout

This paper evaluates several hardware platforms and operating systems using a set of benchmarks that stress kernel entry/exit, file systems, and other things related to operating systems. The overall...

Caching in the Sprite Network File System (1997)

Michael N. Nelson, Brent B. Welch, John K. Ousterhout

The Sprite network operating system uses large main-memory disk block caches to achieve high performance in its file system. It provides non-write-through file caching on both client and server...

The Design and Implementation of a Log-Structured File System (1997)

Mendel Rosenblum, John K. Ousterhout

This paper presents a new technique for disk storage management called a log-structured file system. A logstructured file system writes all modifications to disk sequentially in a log-like structure,...

A Trace-Driven Analysis of the UNIX 4.2 BSD File System (1997)

John K. Ousterhout, Herve Da Costa, David Harrison, John A. Kunze, Mike Kupfer, James G. Thompson

We analyzed the UNIX 4.2 BSD file system by recording userlevel activity in trace files and writing programs to analyze the traces. The tracer did not record individual read and write operations, yet...

A Comparison of Two Distributed Systems: Amoeba and Sprite (1997)

Fred Douglis, M. Frans Kaashoek, John K. Ousterhout, Andrew S. Tanenbaum

This paper compares two distributed operating systems, Amoeba and Sprite. Although the systems share many goals, they diverged on two philosophical grounds: whether to emphasize a distributed...

The Safe-Tcl Security Model (1997)

John K. Ousterhout, Jacob Y. Levy, Brent B. Welch

Safe-Tcl is a mechanism for controlling the execution of programs written in the Tcl scripting language. It allows untrusted scripts (applets) to be executed while preventing damage to the...

The Design and Implementation of a Log-Structured File System (1996)

Mendel Rosenblum, John K. Ousterhout

This paper presents a new technique for disk storage management called a log-structured file system. A logstructured file system writes all modifications to disk sequentially in a log-like structure,...

The Zebra Striped Network File System (1996)

John H. Hartman, John K. Ousterhout

Zebra is a network file system that increases throughput by striping file data across multiple servers. Rather than striping each file separately, Zebra forms all the new data from each client into a...

The LFS Storage Manager (1996)

Mendel Rosenblum, John K. Ousterhout

Advances in computer system technology in the areas of CPUs, disk subsystems, and volatile RAM memory are combining to create performance problems existing file systems are ill-equipped to solve....

A Comparison of Two Distributed Systems: Amoeba and Sprite (1996)

Fred Douglis, M. Frans Kaashoek, John K. Ousterhout, Andrew S. Tanenbaum

This paper compares two distributed operating systems, Amoeba and Sprite. Although the systems share many goals, they diverged on two philosophical grounds: whether to emphasize a distributed...

Tcl and the Tk Toolkit (1996)

John K. Ousterhout

this document, but I'm also interested in hearing about inaccuracies, typos, or any other constructive criticism you might have. 2 DRAFT (8/12/93): Distribution Restricted 1 DRAFT (8/12/93):...

Tcl and the Tk Toolkit (1995)

John K. Ousterhout

DRAFT (8/12/93): Distribution Restricted This book is about two packages called Tcl and Tk. Together they provide a programming system for developing and using graphical user interface (GUI)...

An X11 Toolkit Based on the Tcl Language (1995)

John K. Ousterhout

This paper describes a new toolkit for X11 called Tk. The overall functions provided by Tk are similar to those of the standard toolkit Xt. However, Tk is implemented using Tcl, a lightweight...

An X11 Toolkit Based on the Tcl Language (1995)

John K. Ousterhout

This paper describes a new toolkit for X11 called Tk. The overall functions provided by Tk are similar to those of the standard toolkit Xt. However, Tk is implemented using Tcl, a lightweight...

An X11 Toolkit Based on the Tcl Language (1995)

John K. Ousterhout

This paper describes a new toolkit for X11 called Tk. The overall functions provided by Tk are similar to those of the standard toolkit Xt. However, Tk is implemented using Tcl, a lightweight...

Tcl: An Embeddable Command Language (1995)

John K. Ousterhout

Tcl is an interpreter for a tool command language. It consists of a library package that is embedded in tools (such as editors, debuggers, etc.) as the basic command interpreter. Tcl provides (a) a...

A Comparison of Two Distributed Systems: Amoeba and Sprite (1994)

Fred Douglis, M. Frans Kaashoek, John K. Ousterhout, Andrew S. Tanenbaum

This paper compares two distributed operating systems, Amoeba and Sprite. Although the systems share many goals, they diverged on two philosophical grounds: whether to emphasize a distributed...

A Comparison of Two Distributed Systems: Amoeba and Sprite (1994)

Fred Douglis, M. Frans Kaashoek, John K. Ousterhout, Andrew S. Tanenbaum

This paper compares two distributed operating systems, Amoeba and Sprite. Although the systems share many goals, they diverged on two philosophical grounds: whether to emphasize a distributed...

A Comparison of Two Distributed Systems: Amoeba and Sprite (1994)

Fred Douglis, M. Frans Kaashoek, John K. Ousterhout, Andrew S. Tanenbaum

This paper compares two distributed operating systems, Amoeba and Sprite. Although the systems share many goals, they diverged on two philosophical grounds: whether to emphasize a distributed...

Tcl and the Tk Toolkit (1994)

John K. Ousterhout

this document, but I'm also interested in hearing about inaccuracies, typos, or any other constructive criticism you might have. 2 DRAFT (8/12/93): Distribution Restricted 1 DRAFT (8/12/93):...

Tcl and the Tk Toolkit (1994)

John K. Ousterhout

this document, but I'm also interested in hearing about inaccuracies, typos, or any other constructive criticism you might have. 2 DRAFT (8/12/93): Distribution Restricted 1 DRAFT (8/12/93):...

A Comparison of Two Distributed Systems: Amoeba and Sprite (1994)

Fred Douglis, M. Frans Kaashoek, John K. Ousterhout, Andrew S. Tanenbaum

This paper compares two distributed operating systems, Amoeba and Sprite. Although the systems share many goals, they diverged on two philosophical grounds: whether to emphasize a distributed...

A Comparison of Two Distributed Systems: Amoeba and Sprite (1994)

Fred Douglis, M. Frans Kaashoek, John K. Ousterhout, Andrew S. Tanenbaum

This paper compares two distributed operating systems, Amoeba and Sprite. Although the systems share many goals, they diverged on two philosophical grounds: whether to emphasize a distributed...

Tcl and the Tk Toolkit (1994)

John K. Ousterhout

this document, but I'm also interested in hearing about inaccuracies, typos, or any other constructive criticism you might have. 2 DRAFT (8/12/93): Distribution Restricted 1 DRAFT (8/12/93):...

Tcl and the Tk Toolkit (1994)

John K. Ousterhout

this document, but I'm also interested in hearing about inaccuracies, typos, or any other constructive criticism you might have. 2 DRAFT (8/12/93): Distribution Restricted 1 DRAFT (8/12/93):...

Why Aren't Operating Systems Getting Faster As Fast as Hardware? (1993)

John K. Ousterhout

This paper evaluates several hardware platforms and operating systems using a set of benchmarks that stress kernel entry/exit, file systems, and other things related to operating systems. The overall...

Why Aren't Operating Systems Getting Faster As Fast as Hardware? (1993)

John K. Ousterhout

This paper evaluates several hardware platforms and operating systems using a set of benchmarks that stress kernel entry/exit, file systems, and other things related to operating systems. The overall...

Tcl: An Embeddable Command Language (1993)

John K. Ousterhout

Tcl is an interpreter for a tool command language. It consists of a library package that is embedded in tools (such as editors, debuggers, etc.) as the basic command interpreter. Tcl provides (a) a...

Tcl and the Tk Toolkit (1993)

John K. Ousterhout

this document, but I'm also interested in hearing about inaccuracies, typos, or any other constructive criticism you might have. 2 DRAFT (8/12/93): Distribution Restricted 1 DRAFT (8/12/93):...

An X11 Toolkit Based on the Tcl Language (1993)

John K. Ousterhout

This paper describes a new toolkit for X11 called Tk. The overall functions provided by Tk are similar to those of the standard toolkit Xt. However, Tk is implemented using Tcl, a lightweight...

The Role of Distributed State (1993)

John K. Ousterhout

Distributed state offers the potential for improving the performance, coherency, and reliability of distributed systems. Unfortunately, distributed state also introduces consistency problems, crash...

The Role of Distributed State (1993)

John K. Ousterhout

Distributed state offers the potential for improving the performance, coherency, and reliability of distributed systems. Unfortunately, distributed state also introduces consistency problems, crash...

A Comparison of Two Distributed Systems: Amoeba and Sprite (1993)

Fred Douglis, M. Frans Kaashoek, John K. Ousterhout, Andrew S. Tanenbaum

This paper compares two distributed operating systems, Amoeba and Sprite. Although the systems share many goals, they diverged on two philosophical grounds: whether to emphasize a distributed...

Performance Measurements of a Multiprocessor Sprite Kernel (1993)

John H. Hartman, John K. Ousterhout

This report presents performance measurements made of the Sprite operating system running on a multiprocessor. A variety of micro- and macro-benchmarks were run while varying the number of processors...

Performance Measurements of a Multiprocessor Sprite Kernel (1993)

John H. Hartman, John K. Ousterhout

This report presents performance measurements made of the Sprite operating system running on a multiprocessor. A variety of micro- and macro-benchmarks were run while varying the number of processors...

A Comparison of Two Distributed Systems: Amoeba and Sprite (1993)

Fred Douglis, M. Frans Kaashoek, John K. Ousterhout, Andrew S. Tanenbaum

This paper compares two distributed operating systems, Amoeba and Sprite. Although the systems share many goals, they diverged on two philosophical grounds: whether to emphasize a distributed...

The LFS Storage Manager (1993)

Mendel Rosenblum, John K. Ousterhout

Advances in computer system technology in the areas of CPUs, disk subsystems, and volatile RAM memory are combining to create performance problems existing file systems are ill-equipped to solve....

Pseudo Devices: User-Level Extensions to the Sprite File System (1993)

Brent B. Welch, John K. Ousterhout

A pseudo-device is a mechanism in the Sprite network file system that lets a userlevel server process emulate a file or I/O device. Pseudo-devices are accessed like regular files or devices, and they...

Pseudo Devices: User-Level Extensions to the Sprite File System (1993)

Brent B. Welch, John K. Ousterhout

A pseudo-device is a mechanism in the Sprite network file system that lets a userlevel server process emulate a file or I/O device. Pseudo-devices are accessed like regular files or devices, and they...

Caching in the Sprite Network File System (1993)

Michael N. Nelson, Brent B. Welch, John K. Ousterhout

The Sprite network operating system uses large main-memory disk block caches to achieve high performance in its file system. It provides non-write-through file caching on both client and server...

A Trace-Driven Analysis of the UNIX 4.2 BSD File System (1993)

John K. Ousterhout, Herve Da Costa, David Harrison, John A. Kunze, Mike Kupfer, James G. Thompson

We analyzed the UNIX 4.2 BSD file system by recording userlevel activity in trace files and writing programs to analyze the traces. The tracer did not record individual read and write operations, yet...

The Sprite Network Operating System (1993)

John K. Ousterhout, Andrew R. Cherenson, Frederick Douglis, Michael N. Nelson, Brent B. Welch

Sprite is a new operating system for networked uniprocessor and multiprocessor workstations with large physical memories. It implements a set of kernel calls much like those of 4.3 BSD UNIX, with...

The Sprite Network Operating System (1993)

John K. Ousterhout, Andrew R. Cherenson, Frederick Douglis, Michael N. Nelson, Brent B. Welch

Sprite is a new operating system for networked uniprocessor and multiprocessor workstations with large physical memories. It implements a set of kernel calls much like those of 4.3 BSD UNIX, with...

A Trace-Driven Analysis of the UNIX 4.2 BSD File System (1993)

John K. Ousterhout, Herve Da Costa, David Harrison, John A. Kunze, Mike Kupfer, James G. Thompson

We analyzed the UNIX 4.2 BSD file system by recording userlevel activity in trace files and writing programs to analyze the traces. The tracer did not record individual read and write operations, yet...

The LFS Storage Manager (1993)

Mendel Rosenblum, John K. Ousterhout

Advances in computer system technology in the areas of CPUs, disk subsystems, and volatile RAM memory are combining to create performance problems existing file systems are ill-equipped to solve....

Caching in the Sprite Network File System (1993)

Michael N. Nelson, Brent B. Welch, John K. Ousterhout

The Sprite network operating system uses large main-memory disk block caches to achieve high performance in its file system. It provides non-write-through file caching on both client and server...

Pseudo-File-Systems (1993)

Brent B. Welch, John K. Ousterhout

This paper describes a facility that transparently extends the Sprite distributed file system to include foreign file systems and arbitrary user services. A pseudo-filesystem is a sub-tree of the...

Pseudo-File-Systems (1993)

Brent B. Welch, John K. Ousterhout

This paper describes a facility that transparently extends the Sprite distributed file system to include foreign file systems and arbitrary user services. A pseudo-filesystem is a sub-tree of the...

Tcl: An Embeddable Command Language (1993)

John K. Ousterhout

Tcl is an interpreter for a tool command language. It consists of a library package that is embedded in tools (such as editors, debuggers, etc.) as the basic command interpreter. Tcl provides (a) a...

The Zebra Striped Network File System (1993)

John H. Hartman, John K. Ousterhout

Zebra is a network file system that increases throughput by striping file data across multiple servers. Rather than striping each file separately, Zebra forms all the new data from each client into a...

The Zebra Striped Network File System (1993)

John H. Hartman, John K. Ousterhout

Zebra is a network file system that increases throughput by striping file data across multiple servers. Rather than striping each file separately, Zebra forms all the new data from each client into a...

Tcl and the Tk Toolkit (1993)

John K. Ousterhout

this document, but I'm also interested in hearing about inaccuracies, typos, or any other constructive criticism you might have. 2 DRAFT (8/12/93): Distribution Restricted 1 DRAFT (8/12/93):...

Zebra: A Striped Network File System (1993)

John H. Hartman, John K. Ousterhout

This paper presents the design of Zebra, a striped network file system. Zebra applies ideas from log-structured file system (LFS) and RAID research to network file systems, resulting in a network...

Zebra: A Striped Network File System (1993)

John H. Hartman, John K. Ousterhout

This paper presents the design of Zebra, a striped network file system. Zebra applies ideas from log-structured file system (LFS) and RAID research to network file systems, resulting in a network...

Pseudo Devices: User-Level Extensions to the Sprite File System (1993)

Brent B. Welch, John K. Ousterhout

A pseudo-device is a mechanism in the Sprite network file system that lets a userlevel server process emulate a file or I/O device. Pseudo-devices are accessed like regular files or devices, and they...

Pseudo-File-Systems (1993)

Brent B. Welch, John K. Ousterhout

This paper describes a facility that transparently extends the Sprite distributed file system to include foreign file systems and arbitrary user services. A pseudo-filesystem is a sub-tree of the...

A Comparison of Two Distributed Systems: Amoeba and Sprite (1992)

Fred Douglis, M. Frans Kaashoek, John K. Ousterhout, Andrew S. Tanenbaum

This paper compares two distributed operating systems, Amoeba and Sprite. Although the systems share many goals, they diverged on two philosophical grounds: whether to emphasize a distributed...

Measurements of a Distributed File System (1992)

Mary G. Baker, John H. Hartman, Michael D. Kupfer, Ken W. Shirriff, John K. Ousterhout

We analyzed the user-level file access patterns and caching behavior of the Sprite distributed file system. The first part of our analysis repeated a study done in 1985 of the BSD UNIX file system....

A Trace-Driven Analysis of Name and Attribute Caching in a Distributed System (1992)

Ken W. Shirriff, John K. Ousterhout

This paper presents the results of simulating file name and attribute caching on client machines in a distributed file system. The simulation used trace data gathered on a network of about 40...