Computer Science 354
Operating Systems

Dickinson College
Spring Semester 2000
Grant Braught

Class #18 - Project 3 - Threads Programming

Main Ideas For Today

Reading Assignment For Today

Discussion Assignments

Web Sites Related to Today's Topic

Sample Code For Today's Class

Project Assigned Today

    Due Date: 4/27/00

  1. Barber Shop Expansion:1

    The barber from SleepBarber.c has achieved wild success because he is always well rested and perky. The customers love that. With his success came more and more customers and consequently more money. To better serve his growing number of customers the barber is going to expand. In the expansion he is going to add 2 more barber chairs (with narcoleptic barbers) and a cashier. Expand the code in SleepBarber.c to handle this expansion.


  2. Cookie-Bakers Problem:2

    A small cookie making company called "Deadlock Cookies" consists of 3 cookie chefs and 1 assistant. Each chef has a supply of one of 3 ingredients necessary to make cookies:

    The assistant has an infinite supply of all three items.

    To start the cookie making process the assistant will place a ration of each of two ingredients on the counter. The chef who has the third ingredient will take those two ingredients and begin making a batch of cookies. In the mean time the assistant randomly selects 2 more items and places them on the counter. This process should repeat until 10 batches of cookies have been made.


1. This extension to the Sleeping Barber problem from our text was inspired by a similar problem in "Operating Systems Internals and Design Principals: Third Ed." by William Stallings, (Prentice-Hall Inc., 1998). In his text, Stallings attributes the original problem to Professor Ralph Hilzer of California State University at Chico.

2. This problem is a knock-off of the "Cigarette-Smokers Problem" from "Operating Sytems Concepts, Fifth Ed." by Silberschatz and Galvin (Addison Wesley, 1998).