Lab 3 - A Simple File Manager

COP4610/CGS5765, Introduction to Operating Systems, Fall 2003
Department of Computer Science, Florida State University

Points: 100 points.

Due: Week 15, December 3, 2003 at the demonstration time (Note: NOT late submission will be accepted for this project. See below).

Maximum team size: Two (2).

Purpose
Design and implement a simple file manager.

Programming assignment
Implement the API functions given in Part A and Part B on pages 561--567 in the textbook with the following exceptions: Your program must be able to handle files upto 10,000 bytes with a total of 4,000,000 bytes of virtual disk space (by changing BLOCK_SIZE and NUM_BLOCK) and the reliability is assumed to 1.0 (In other words, comment out the statement "if rand() > threshold) return ERROR;" on page 566). Then using the API functions and other system calls, write an interactive shell program (based on your lab 1), which supports the following additional internal commands:

Submission
The submission procedure for this lab is different from the previous ones. You need to submit the following items in hardcopy at the demonstration time on the due date. Each group only needs to submit one report. Special note on late submission: As this lab is due in the last week of classes, which can be a very busy period for you. To give you time to prepare for your final exams, late submission of this lab will NOT be accepted unless medical and other serious conditions prevent you from finishing this assignment on or before the given due date.

Extra credit
Please state clearly in your report if you have achieved the following requirement for extra credits:

Grading

Demonstration
On December 3, 2003 during your recitation session, you/your group need to demonstrate your program in class. At the demonstration time, you need to turn in your report first (with source code and results attached) and then you run your program before class. Everyone including the TA, others in the class, and the instructor is allowed to ask questions. You need to demonstrate your file manager program on machine "program".