VIVA: A new file system for Linux
-
Students:
-
Shankar Pasupathy (1996, for Linux 1.0), later a PhD student at the
University of Wisconsin
-
Vamsi Krishna Anne (1997, for Linux 2.0), later at Resonate, Inc.
-
Kapil Anantharaman (2006, for Linux 2.6)
-
Purpose: Implement VIVA, a new file system for Linux.
-
Method:
Modify the Linux kernel to insert another file system, in addition to the ones
already there. Implement all Unix functions, such as file creation, reading,
writing, random access, and directory operations.
-
What the students learned:
-
A novel organization (due to Eric Herrin, a PhD student several years
earlier) for file systems, involving bit maps for allocation and
representing file layout.
-
Kernel-level programming and debugging.
(This part required significant cleverness.)
-
Performance testing.
-
Writing up the project and packaging the resulting tools
for Linux 2.0.