CS 110 Arch/OS
Grading - Semaphores Project
Introduction
Quickly, read the projects given to you and grade them, based on
a 20 point scale.
All we are looking for here is a program that has:
-
A wrapper for semaphores, as simple as a number of functions or as
complicated as a class (10 points).
-
Of the 10 points for the wrappers, 5 should pertain to good
error checking of the system calls. Terminating is fine for the
error handling part, i.e., if a system call fails, it probably is
best to not keep looping and retrying.
-
Some reasonable approach to creating a unique key and
then incrementing on each use of the key
(3 points).
ftok is fine, but they must use it at least once to get
a unique key and then increment or decrement that key on each use.
Starting with their UID is also fine.
-
A set of processes 'nicely' using semaphores to control each other
(5 Points).
-
A Key point in the creation of the semaphore wrapper is to be able
to control each semaphore. Previously, implementations have gotten
into trouble with destructors killing off semaphores still in use.
-
Please comment on this project. I wanted for the parent to create
the child, yet the child to control the parent with the semaphore.
Overall,
I think you are really trying to see if they understand
semaphores and that they can create a wrapper for system
calls.
Last modified Oct 3, 2001 by mike@cs.hmc.edu