COMP 421/ELEC 421, COMP 521/ELEC 552:

Operating Systems and Concurrent Programming

Spring 2019

  Rice logo  

Lab #3: The Yalnix File System

Your task is to implement a simple file system for the Yalnix operating system. Your YFS file system will support multiple users, with a tree-structured directory, and will be similar in functionality and disk layout to the "classical" Unix file system. Unlike the Unix file system implementation, though, your file system will be implemented as a server process running on top of the Yalnix kernel. Client processes using the file system send individual file system requests as messages to the file server process. The server handles each request, sends a reply message back to the client process at completion, and then waits for another request to arrive at the server. Interfacing to the disk hardware is handled by the Yalnix kernel, which provides kernel calls for use by the file server for reading and writing sectors on the disk. The file system server definition is simplified in order to make the project more manageable; for example, the file system server is not multi-threaded.

The project should be done in groups of 2 students. You are free to choose your own partner for the project. You may keep the same partner for this project as you had for the second project, or you may pick a new partner for this project if you like. If you need help finding a partner, please post a message on Piazza or post a followup on any existing message on Piazza searching for a Lab 3 partner.

And please also use Piazza if you have questions on the project.

The project is due by 11:59 PM, Friday, April 19, 2019

Project Information

[Back to COMP 421 homepage]