CMPSCI 377: Operating Systems (Spring 2005)



These pages are only provided for historical reference. The projects and hw have been removed.

Course Description

 In this course we examine the important problems in operating system design and implementation. The operating system provides a well-known, convenient, and efficient interface between user programs and the bare hardware of the computer on which they run. The operating system is responsible for allowing resources (e.g., disks, networks, and processors) to be shared, providing common services needed by many different programs (e.g., file service, the ability to start or stop processes, and access to the printer), and protecting individual programs from one another. The course will start with a brief historical perspective of the evolution of operating systems over the last fifty years, and then cover the major components of most operating systems. This discussion will cover the tradeoffs that can be made between performance and functionality during the design and implementation of an operating system. Particular emphasis will be given to three major OS subsystems: process management (processes, threads, CPU scheduling, synchronization, and deadlock), memory management (segmentation, paging, swapping), file systems, and operating system support for distributed systems.


Course Information

Instructor: Mark Corner

Lecture Time & Place: TTh 11:15-12:45, LGRT 101

Discussion Time & Place: W 11:15-12:05, ELAB 303

Credits: 4

Instructor: Mark Corner (mcorner@cs.umass.edu), 330 Computer Science Research Bldg

Office Hours: T 10-11, Th 4-5, or by appointment, Room 330

 

Teaching Assistants:      George Konidaris (gdk@cs.umass.edu)

                                              Anthony Bellissimo (twon@cs.umass.edu), 

TA Office Hours: See Below

 

Staff email address: cs377staff@cs.umass.edu

 

Course web page: http://www.cs.umass.edu/~mcorner/courses/377/

Course newsgroup: cmpsci.edlab.cs377

 

Textbook: Operating Systems Concepts, 6th Edition, Silberschatz/Galvin/Gagne

Course Syllabus: pdf

Possible Companion Books: C++ For Java Programmers by Timothy A. Budd and C++ for Java Programmers by Mark Allen Weiss

 

Additional Class in C++: CS197C
 

 Staff

Mark Corner

George Konidaris

 

Anthony Bellissimo

 


Schedule

Midterm Evening Exam: Wed Mar 23 2005  06:00 PM-08:00 PM  ELAB0303
Final  Exam: Tue May 17 2005 16:00PM-18:00PM ECSC 119

 

Sample Midterm, Review Session Monday, March 21 5:30-6:30 PM CS150

Sample Exam

 

Extra Office Hours:

Project 1:

Mark: Saturday March 5, 10AM-12AM CS330

George: Monday March 7, 12-2PM Edlab

Anthony: Thursday March 10, 3PM-5PM Edlab
 

Project 2:

Mark: Sunday March 10, 4PM-6PM CS330

George: Monday March 11, 12-2PM Edlab

Anthony: Thursday March 14, 3PM-5PM Edlab

 

Project 3:

Mark: Saturday March 7, 3PM-5PM CS330

George: Monday May 9, 12-2PM Edlab

Anthony: Thursday May 12, 3PM-5PM Edlab

 

 

Schedule

 

Monday

Tuesday

Wednesday

Thursday

Friday

9-9:30

 

 

 

 

 

9:30-10

 

 

 

 

 

10-10:30

 

Mark Corner

Office Hours CS330

 

Mark Corner

Office Hours CS330

Anthony Bellisimo

Office Hours

Edlab

10:30-11

 

 

11-11:30

 

Lecture LGRT 101

11:15-12:45

Discussion Section

ELAB 303

11:15-12:05

Lecture LGRT 101

11:15-12:45

11:30-12

 

12-12:30

 

 

12:30-1

 

 

 

1-1:30

 

 

 

 

 

1:30-2

 

 

 

 

 

2-2:30

 

 

George

Office Hours

Edlab

Staff Meeting

 

2:30-3

 

 

 

3-3:30

 

 

 

 

3:30-4

 

 

 

 

4-4:30

 

 

 

 

 

4:30-5

 

 

 

 

 

 


Project Handouts


Resources