|
Course Description
Course Overview
Textbooks
Grading Policy
Weekly Schedule
How to order textbooks
How to apply for a computer account
CSE computing help and information
OGI Academic Integrity Policy
|
CSE513 - Introduction to Operating Systems
Spring 2004
Friday 1-3.50 pm
Room 407
Wilson Clark Center
Instructor
Jonathan Walpole
walpole@cse.ogi.edu
503.748.1161
503.748.1553 FAX
|
Teaching Assistant
Chris Chambers
chambers@cse.ogi.edu
503.748.####
503.748.1553 FAX
|
Course Overview
|
CSE 513 is an introductory course in Operating Systems. It is intended
for graduate students who do not have prior operating systems experience.
The course will introduce the core concepts, such as processes and threads,
scheduling, synchronization, memory management, file systems, input and
output device management and security. The course will consist of assigned
reading, weekly lectures, a midterm and final exam, and a sequence of
small programming assignments. The goal of the readings and lectures is
to introduce the core concepts. The goal of the programming assignments is
to give students some limited exposure to real operating system code.
Students are expected to read the assigned materials prior to each class,
and to participate in in-class discussions. The programming assignments
will require prior knowledge of C or C++ programming and some familiarity
with Unix.
|
Textbooks
|
Required:
  "Modern Operating Systems, 2nd edition,"
by Andrew Tannenbaum, Prentice Hall.
|
Useful:
 "Understanding the Linux Kernel, 2nd edition,"
by Daniel P. Bovet & Marco Cesati.
|
Grading Policy
|
You are expected to study the assigned reading
before
coming to class, so that you can participate in class discussions.
This is an important aspect of the class. Come prepared to ask and
answer questions in class.
Other parts of the class grade will be based on a midterm and final
exam and a multi-part, small group project involving Linux kernel
programming. The relative contribution of each of these activities
to the overall grade is as follows:
Participation in class discussions - 20%
Project Assignments - 30%
Midterm Exam - 20%
Final Exam - 30%
|
Project Assignments
|
Details of the course project can be found
here. The first project assignment should be done individually.
The remaining assignments should be done in pairs. If you are not an
experienced C programmer it would be a good idea to pair up with
someone who is. If you are an experienced programmer please be
willing to pair up with someone who is not. I hope you will be
able to help each other and learn from each other. You first
point of contact for the project should be the class TA, Chris Chambers -
chambers@cs.pdx.edu
 
 
|
|
Weekly Schedule
|
| Week Number | Lecture Topic | Reading Assignment |
Week One
04/02/04 | Intro to OS, History of OS, OS-Related Hardware Review | Ch. 1, p. 1-70 |
Week Two
04/09/04 | Processes & Threads, Scheduling Mechanisms and Policies | Ch. 2, p. 71-100 and p. 132-152 |
Week Three
04/16/04 | Interprocess Communication and Synchronization (1) | Ch. 2, p. 97-129 |
Week Four
04/23/04 | Synchronization (2) and Deadlock | Ch. 3, p. 159-189 |
Week Five 04/30/04 | Midterm exam and project discussion | |
Week Six 05/07/04 | Memory Management (guest lecture) | Ch. 4, p. 189-262 |
Week Seven
05/14/04 | Virtual Memory | Ch. 4, p. 189-262 |
Week Eight
05/21/04 | Input/Output and File Systems | Ch. 5, p. 269-372; Ch. 6, p. 379-453 |
Week Nine
05/28/04 | Distributed and Multiprocessor Operating Systems | Ch. 8, p. 503-583 |
Week Ten
06/04/04 | Security | Ch. 9, p. 583-671 |
Finals Week 06/11/04 |
Final Exam
| |
|