Spring 2011, Zemoudeh
CSE 350: File Systems
School of Computer Science and Engineering
California State University, San Bernardino

Last modified: Sunday, June 19, 2011.

Grades

Final: Wednesday, June 15, 8:00-9:50 am. Please note the time, it is not at 9:20, the final starts at 8 am.

Study Session: Friday June 10, 12:00-2:00 pm, in one of the labs JB-356, JB-358, or JB-359.

Review problems for final: 11.1, 11.2, 11.4, 10.2, 10.3, 10.6, 10.7, 10.9-11, 9.3, 9.6-10, 7.8, 7.13, 7.15, 7.17, 6.1, 6.15, 6.19, 6.28, in addition to homework problems and review questions for the midterm.

The Avail List implementation is here.

Homework 5: Exercises 7.1, 7.5, 9.2, and 9.4. Due Wednesday June 1.

Homework 4: Programming Exercises 6.21 and 6.22. Due Monday May 23.
Add method Delete() to class BufferFile to support deletion of fixed-length records. Overwrite the first character of a record with an asterisk to mark it as a deleted record. Maintain a list of deleted records (avail list) so that they could be reused by the Append() method. Of course if this list is empty, then Append() adds the new record to the end of the file.
Also if method Read() attempted to read a deleted record, it has to instead read the next record.
You may need to modify IOBuffer, FixedLengthBuffer, and FixedFieldBuffer.
Add a field to the file header to store the address of the head of the avail list. Use two bytes in each deleted record to store the address of the next deleted record.
Avail list is maintained as a stack and is embedded in the file.
Program init.cpp creates a file as a starting point for your program. It is instructive to understand the workings of the program and the content of the file it generates.
Hand in a complete printout of your modifications to IOBuffer, FixedLengthBuffer, and FixedFieldBuffer. Also, hand in a print out of your main() containing a series of deletion and appends, and a print out of the octal dump of the final file.

Midterm: Monday, May 9.
Review problems: 2.3, 2.5, 3.5, 3.8, 3.13, 4.4, 4.12, 5.3, 5.8, 5.21, 6.6, 6.12, 6.21, 6.26.

Homework 3: Type in, compile, and run the program in Appendix F. Due Wednesday May 4.
Make sure you use multiple file compilation, just the way it is in the text.
Hand in a printout of the source code, typescript of the sample run, and octal dump (od -bc) of the output files.

Homework 2: Type in, compile, and run the program in Appendix E. Due Monday Apr 25.
Make sure you use multiple file compilation, just the way it is in the text.
Hand in a printout of the source code and octal dump (od -bc) of the output files.

Homework 1: Programming Exercises 10 and 11 (pages 41 and 42). Due Monday Apr 11.

C++ file operations.

A History of File Systems

Syllabus