![]()
CSCI 480/580 Principles
of Operating System Fall
2012
![]()
Professor Nathalie Japkowicz
Office: PM 559
Phone: (815) 753-3846
E-mail: nat@cs.niu.edu
Office Hours:
Tuesday/Thursdays 11am-12pm
TA
Taylor Burnidge
Office: FR 227
Phone: (815) 753-0826
E-mail: z1544918@students.niu.edu
Office Hours : TBA
Time: Tuesday/Thursday: 12:30pm 1:45pm
Location: PM 203
Textbook
Operating
System Concepts Essentials
Abraham Silberschatz, Peter Baer Galvin, Greg
Gagne
John Wiley & Sons, Inc., 2010
The course slides and assignments will be available on Blackboard.
All students in this class should have LINUX computing accounts on the hosts turing or hopper . Your login name for your LINUX account is your z number (with a lower case 'z'). NOTE: The password on your LINUX account is independent from the password on your standard computer account and must be changed separately.
If you do not have a LINUX computing account, you must create one. Details on how to activate an account on Turing/Hopper can be found on the following web page: http://www.cs.niu.edu/resources/resources.shtml
Ψ Learn the fundamental
principles of operating systems,
Ψ Get exposed to the
problems operating systems designers face, explore the tradeoffs and solutions
to these problems,
Ψ See how these issues
are solved in practice in real operating systems (Unix, Windows, etc.)
Ψ Get a hands-on
programming experience (some C, mostly Java) dealing with issues which
operating systems must address
Your final grade will be broken down as:
· 15% . Assignments
· 20% . Quizzes
· 25% . Midterm
· 40% . Final exam.
The grading scale used for this course is:
|
A: 90-100% |
B: 80-90% |
C: 70-80% |
D: 60-70% |
F: 0-60% |
There is no rounding up to the nearest letter grade.
Note: Graduate Students will only receive 10% of their grade from the quizzes and will have to do a presentation and submit a report on some advanced topics of operating systems of their choice. This presentation and report will account for 10% of their grade.
There will be 5 10-point quizzes during the semester. A missed quiz will receive zero points unless previous arrangements are made with your instructor. Each quiz will be weighed equally.
There will be a 100 point midterm exam on October 18, 2012. The review session for the exam will take place on October 16, 2012.
There will be a 100 point final exam. It will be written by your instructor and administered at the date and time listed on the Final Exam Schedule.
Assignments
There will be 3 programming assignments. Programs will be submitted electronically as will be explained in class.
All assignments are due at the date and time specified. The time a program was submitted is determined by when it is electronically received. Late assignments will be penalized by 15% per day for the first two days that the assignment is late. All assignments submitted more than two days late will receive a grade of 0 for that assignment. Programming assignments that are due the final week of class may not be turned in late - any such assignment submitted after the due date and time will receive 0 points.
Your documentation for each program must contain the following information: your name, Course Number/Section Number, assignment number, and due date. The code must be appropriately commented.
Tentative
Schedule
|
Week |
Week of |
Topics |
Readings |
Quiz/ Exam/ Program |
|
1 |
Aug 27 |
Course Organisation; Overview of Computer Systems
and Operating Systems |
Chapters 1 & 2 |
|
|
2 |
Sept 3 |
Processes: Concepts, Process Control Block, Process
Scheduling, Operation on Processes, |
Chapter
3: Sec: 1-3 |
|
|
3 |
Sept 10 |
Processes (contd): Interprocess Communication Cooperation
between Processes |
Chapter
3: Sec: 4-6 |
|
|
4 |
Sept 17 |
Demo 1 (Observing Process behaviour); Threads: Concepts, Multi-Threading |
Chapter
4: Sec: 1-3 |
Quiz 1 |
|
5 |
Sept 24 |
Threads (contd): Threading Issues and
Challenges, Illustrations |
Chapter 4: Sect: 4-5 |
Assnt
1 due |
|
6 |
Oct 1 |
Demo 2 (Interprocess communication w/ pipes); CPU Scheduling: Overview,
Algorithms |
Chapter
5: Sec: 1-3 |
Quiz 2 |
|
7 |
Oct 8 |
Demo 3 (Multi-Threading); CPU Scheduling (contd): Thread and Multiprocessor Scheduling; Scheduling
on Real Systems |
Chapter
5: Sec: 4-7 |
|
|
8 |
Oct 15 |
Midterm review and Midterm |
Midterm |
|
|
9 |
Oct 22 |
Process Synchronization: Concepts, Semaphores, Classic
Problems, Real Systems |
Chapter 6 |
Assnt
2 due |
|
10 |
Oct 29 |
Demo 4 (Semaphores); Deadlocks: Concepts, Handling, Prevention, Avoidance,
Detection, Recovery |
Chapter
7 |
Quiz 3 |
|
11 |
Nov 5 |
Memory Management: Concepts, Swapping, Paging,
Segmentation |
Chapter
8 |
|
|
12 |
Nov 12 |
Demo 5 (Paging); Virtual Memory: Concepts, Demand Paging, Page Replacement,
Allocation of Page Frames |
Chapter
9 |
Quiz 4 |
|
13 |
Nov 19 |
File Systems: Concepts, Access Methods, Disk Structure Thanksgiving Break |
Chapters
10 & 11 |
Assnt
3 due |
|
14 |
Nov 26 |
Mass Storage Systems: Concepts, Disk Structure,
Attachment, Scheduling, Management I/O Systems: Concepts, Structure, Complexity and Performance
of I/O Hardware |
Chapters 12 & 13 |
Quiz 5 |
|
15 |
Dec 3 |
Graduate Students Presentations Final Review |
||
|
16 |
Dec 10 |
Finals
week |
Final |