COSC 374 -
St Mary's 326
Assignments, Projects, and Exams
- Homework 1
Examining Process State in Unix
Due in class January 27th, 2010.
- Project 1 - Part 1
Writing a User Shell, Part 1
Due before class, February 22nd
- Project 1 - Part 2
a User Shell, Part 2
Due before class, March 22nd
- Homework 1
Textbook problems due March 31st:
To submit, please type these up in a printable format (PDF preferred)
and send them by email before the start of class.
- Chapter 8: 3, 4, 11, 19, 20
- Chapter 9: 8, 21, 28, 33, 36
- Project 2
Paging Algorithm Simulation
Due before class April 26th.
Textbook and Readings
The textbook for this course will be
Operating Systems Concepts, by Silbershatz, Galvin,
and Gagne. I have requested the older 7th edition, in hopes it
less expensive. Feel free to buy that one.
A highly recommended (though not required) book that will likely
help with the projects will is:
Advanced Programming in the
UNIX Environment (2nd Edition), by Stevens and Rago. This is just
a good book to have if you ever do any Unix or Linux development.
A dated but amusing and insightful comparison of operating
systems is Neil Stephenson's In the Beginning was the
Command Line. It is well worth reading.
- Instructor: Clay Shields
Office Hours: Tuesday, 2:00 - 3:30 PM, or by appointment.
Contact: Information here
All my courses are run under the same set of policies which are
here. Students are expected to read and understand these
policies. You can also read the Honor Council site.
Description and Grading
This course studies the software systems that provide the
interface between the computer system hardware resources and
the users of the system. This interface is composed of a large
collection of programs that provide simplified and uniform
access to information storage (data and programs on tape,
disk, and in memory), processing elements (CPUs and remote
computers), input/output devices (telecommunications,
keyboards, mice, video displays, printers, etc.), and data
acquisition and equipment control devices. Topics include,
processes and threads of execution, concurrent process
synchronization, concurrent access to hardware resources, file
systems, memory management and virtual memory, job scheduling,
system modeling and performance evaluation, network
communication and protocols, and computer and network
security. A variety of example operating systems of different
types will be examined and their characteristics compared.
Prerequisites: COSC 175 and 251.
- Homeworks and programming exercises: 55%
- Midterm exam: 20%
March 3rd, 2010, in class
- Final exam: 25%
May 8th, 2010, 12:30PM-2:30PM