Computer Science 432 - Fall 2006

Operating Systems

Williams College

Final Projects


Each individual or group was able to choose a topic of interest for their final project. A wide range of topics were covered by the five groups. Copies of most of the papers are available upon request.

Paul Stansifer '07, Bartley Tablante '07, Stephen Abbott '07

Title:Playing with Blocks: A Study of File Systems
Abstract: While processor speeds have grown exponentially over the past decades, the efficiency of secondary storage units continues to be a major bottleneck in system performance. Over the years, several file system implementations such as FFS and LFS have attempted to enhance hard disk efficiency. Our goal was to test the performance of a variety of file systems using a simulator over a variety of parameters and conditions.

Reid Lynch '07, Ian Jessen '07, Benjamin Wood '08

Title:The Design and Implementation of RecapFS, a User-Space Versioned File System
Abstract: Versioning file systems transparently maintain multiple version of files as they are changed. At the cost of a small speed overhead and a significant space overhead, they provide the ability for users to rollback to previous versions of files, increasing system usability, reliability, and security. We present RecapFS, a prototype versioning file system. This paper will discuss existing implementations of versioning file systems, the approach and tools we used to construct RecapFS, possible extensions to RecapFS and the version file system model in general.

Rhaad Rabbani '08

Title:Suitability of Various Page Table Schemes in Demand Paging
Abstract: The performance of three basic page table schemes - direct, two-level hierarchical and linear inverted - are studied by modelling main memory and paging hardware. We model the execution of a set of 'typically behaving' processes (i.e. behaving according to locality of reference) using round-robin scheduling on a system implementing demand paging as the necessary virtual memory technology. We also attempt to relate our simulation results to common theories regarding each of the three page table techniques explored.

Mitch Brooks '07, Jessica Chung '07, Myron Minn-Thu-Aye '07

Title:A Memory Management Scheme for Self-Stabilizing Operating Systems
Abstract: Self-stabilizing systems are designed to be able to recover from faults without any human intervention. This paper examines a memory management scheme for self-stabilizing operating systems. We simulate the self-stabilizing memory management algorithm described by Dolev and Yagel. Surprisingly, the proposed strategy appears to stabilize the system faster when there are more errors so we explain this result and suggest possibilities for further work.

Kristof Redei '07, Owen Simpson '07, Aashish Adhikari '07

Title:Beyond Mice and Keyboards: The MIDI Controller as an Input Device
Abstract: Keyboards and mice are useful but limited input devices. Many tasks can be more easily executed using less traditional controllers with features that allow them to communicate easily with the personal computer in ways that the traditional devices cannot. We explore the use of MIDI controllers as input devices and describe our implementation of two applications, MIDIPassword and MIDIShell, that demonstrate the benefits that their use makes possible.


Jim Teresco
Mon Jan 1 18:05:48 EST 2007