CS 470 - Operating Systems
Spring 2008 - Syllabus


Instructor

Dr. Deborah Hwang
KC-264, 488-2193, hwang@evansville.edu
Home page: http://csserver.evansville.edu/~hwang


Office Hours: See instructor's home page.


Course Home Page

Announcements regarding handouts will be made in class. However, most handouts will be available only at the course home page (http://csserver.evansville.edu/~hwang/s08-courses/cs470.html). It is your responsibility to consult the course home page on a regular basis. Grades will be posted to Blackboard (http://acebb.evansville.edu).


Catalog Data

Components of operating systems. Tasking and processing; process coordination; scheduling; memory organization and management; device management; security; networks; distributed and real-time systems.


Objectives

To develop an awareness of the components of an operating system. To become familiar with design and implementation issues concerning these components. To experience researching, reading, writing, and presenting technical material.


Recommended Co-requisite: CS 320


Required Textbook

Abraham Silberschatz and Peter B. Galvin, Operating System Concepts, 7ed., John Wiley & Sons, 2005, ISBN 0-471-69466-5.


Daily and Weekly Requirements

Assigned daily reading and weekly homework assignments generally given out on Wednesday and due the following Wednesday. Homework problems will be posted to the course webpage.


Programming Projects

There will be 4 programming projects that will illustrate key concepts in operating system design and implementation. Each project will consist of a written functional description of the program (25%), an implementation of the program (50%), and a written analysis of the results of the program (25%).


Case Study

Each student will participate in preparing a written report and presentation describing the features of a specific operating system that illustrates the concepts we discuss in class. See handout Guidelines for Operating Systems Case Study for more details.


Exams and Evaluation

There will be two in-class exams during the term. The comprehensive final exam is optional. Grades will be based on the following weighted distribution:



30%

Two in-class exams (15% each)


15%

Case study report


50%

Programming projects (12.5% each)


5%

Homework assignments


Final grades are based on the final weighted percentage with some adjustments depending on class distribution. Historically, the A/B line falls around 88% +/- 2% with subsequent grade levels every 10%.


Missed Exams, Late Homework, Late Projects

Homework and programing projects are due at the instructor's office and/or electronically as appropriate by 4:30pm on the date specified unless otherwise noted. Any assignments arriving after 4:30pm are considered late. The following automatic late penalties will be applied:



10%

if handed in by 4:30pm, one day late


20%

if handed in by 4:30pm, two days late


30%

if handed in by 4:30pm, three days late


Unexcused late work will not be accepted for credit after three days after the due date without prior arrangements. For the purpose of counting days, Friday 4:30pm to Monday 4:30pm is considered one day. Please note that the purpose of the automatic late extension is to allow students leeway when needed. It is usually better to hand in something late and completed than on-time and incorrect. However, chronically handing in late submissions will lower your final grade.


Valid excuses for missing exams and handing assignments in late include illness, family emergencies, religious observances, official UE events such as varsity games and concerts, etc. They do not include (most) work conflicts, studying for other classes, leaving a day early or staying home an extra day over a weekend or holiday, etc. In general, an excused absence is one caused by circumstances beyond your control.


The instructor will rely on your integrity for getting work excused. If you have a valid excuse, put it in writing, sign your name to it, and give it to the instructor. For religious observances and official UE events, you must inform the instructor that you will be absent before the absence occurs, otherwise it will be considered an unexcused absence.


Excused work must be made up within one calendar week from the original due date for full credit. Late excused work will not be accepted Exceptions will be made for serious or prolonged illness, or other serious problems. Please note: It is your responsibility to take care of missed or late work.


Attendance Policy

Attendance is important and expected. Attendance records will be maintained in accordance with Federal Law, but will not be used in the determination of grades, except in borderline cases. However, the instructor reserves the right to reduce a final grade in this course for excessive absences. Students will be warned prior to such action. Students are responsible for all material covered in class. If you miss a class, find out what was covered from another student. You are responsible for checking the course home page for new assignments even if you miss class.


Honor Code

All students are expected to adhere to the University's Honor Code regarding receiving and giving assistance. Three specific guidelines are in force for this course.



If there is any doubt as to whether assistance is acceptable, consult the instructor.


Reading Schedule

This is a tentative schedule. Adjustments will be made as needed.

Week of

Monday

Tues

Wednesday

Thur

Friday

01/07



Ch 1, 2: Introduction
History


Ch 3.1-3.2: Processes

01/14

Ch 3.3-3.4: Process operations, IPC


Ch 3.5-3.6: IPC


Ch 5.1-5.3: CPU scheduling

01/21

MLK, Jr. Day
No class


Ch 5.3-5.8: CPU Scheduling


Ch 6.1-6.2: Synchronization

01/28

Ch 6.3: 6.6.1: Peterson's algorithm, Semaphores


Ch 6.6-6.7: Classic problems, Monitors


Ch 6.7: Monitors

02/04

Ch 6.8-6.9: Atomic transactions


Exam 1 Review


Exam 1: Ch 1-5

02/11

Ch 4: Threads


Ch 7.1-7.4: Deadlocks, Prevention


Ch 7.5: Avoidance, Banker's algorithm

02/18

Ch 7.6-7.8: Detection, recovery


Ch 8.1-8.3: Memory management


Ch 8.4-8.5: Paging

02/25

Ch 8.5-8.7: Paging, Segmentation


Ch 9.1-9.3: Demand paging


Class canceled
Have a nice break!

03/3

SPRING BREAK

03/10

Ch 9.4-9.5: Page replacement


Instructor out of town
No class


Instructor out of town
No class

03/17

Ch 9.6-9.11: Thrashing, Other considerations


Ch 10: File system interface


Easter break
No class

03/24

Easter break
No class


Exam 2 Review


Exam 2: Ch 6-9

03/31

Ch 11.1-11.4: File system implementation


Ch 11.5-11.11: File system implementation


Ch 12.1-12.5: Disk systems

04/07

Ch 13: I/O systems


Ch 14: Protection


Ch 15: Security

04/14

TBA


TBA


TBA

04/21

Case studies


Case studies


Case studies

04/28

Course review


Reading/Study Day




The optional final exam will be given during the regularly scheduled final exam period, Tuesday, May 6. at 2:45pm - 4:45pm.

01/08/08 4 of 4