Advanced Topics in Operating Systems

Fall 1997

BGU Math & Computer Science Department

Description of the course

This is a hands-on course in implementing fragments of advanced operating systems. Several fragments will be written by different groups of students, and will be merged into a complete operating system module. This year's topic is, again, network file systems, as implemented in the client-server model.

Breakdown of the course topic

File server and client will be implemented on top of UNIX as user processes. They will use sockets or rpc for communication between client and server. After agreement on the protocol and service parameters by the entire class (see design sessions), each group will implement either a client or a server.

Temporal Breakdown

Temporally, the course will be broken down as follows:


This is a 2-cedit course, consisting of weekly 2-hour meetings, and is a valid (partial) replacement for the Project course. The course will contain an introduction section, several design, review, and integration sessions, and a presentation. Attendance of all these sessions or equivalent mandatory. Attendance of help sessions optional. Students will work in pairs. Each pair must choose and implement either a client or a server, but a roughly equal number of pairs for each fragment will be enforced.


Operating Systems is an absolute, inviolate, prerequisite to this course, as are any courses preceding it as prerequisites (such as Systems Programming, Data Structures, etc.).

Design Documents (Under Ongoing Construction)

These documents are agreed upon requirements for clients and servers, inlcuding agreement on protocols, etc. You may use design decisions from last year, as well as an already implemented client/server to test your own end of things.

Back to BGU Math & CS HomePage