Simulation of bounded-buffer problem, with two implementations; The main directory has files common to both implementations -- the main program test-bounded-buffer.c, two .h files for this problem, and a getint.h with a function to convert a command-line argument to an integer with error checking. Each subdirectory has a bounded-buffer.c file representing an implementation of the synchronization-related parts of the problem, plus links and a Makefile to allow building the main program. To build programs: cd to subdirectory (semaphore or monitor) and "make test-bounded-buffer"