CS350: Operating Systems
TR 2:50PM - 4:15PM at S2(Science 2) 243
Department of Computer Science
T. J. Watson School of Engineering and Applied Science
State University of New York at Binghamton
Instructor: KD Kang
- Email: email@example.com
- Office: EB T16
- Office Hours: TR 1:40PM - 2:40PM in EB T16
TA: Yan Zhou
- Email: firstname.lastname@example.org
- Office Hours: TR 7PM - 8PM in EB T5
This course is an introduction to modern operating systems. Key concepts
such as processes, threads, scheduling, memory management, virtual memory,
synchronization, and file systems will be covered.
Introduction to distributed systems and
real-time systems will also be provided.
- Operating System Concepts (8th edition), Silberschatz, Galvin and Gagne,
John Wiley and Sons Inc. (Required)
- Tanenbaum, A. Modern Operating Systems, Prentice Hall, 3rd edition, 2006. (Recommended)
3 Quizzes (15 points), Midterm (20 points), Final (25 points),
4 Programming Assignments (30 points),
and Homeworks (10 points).
Binghamton University Honesty Code is strictly enforced in this course.
Any violation will be handled according to the Binghamton University
Honesty Code. Students who violate the code are required to submit the
Report of Academic Dishonesty form to the university.
- If cheating is discovered, all the involved students
will get zero for the corresponding programming
exams, or quizzes. This rule applies to everybody involved in the violation of the
Binghamton University Honesty Code no matter
whether you copied somebody else's work or showed your work to somebody else.
- When regrading is requested, an entire homework or exam will be regraded.
As a result, the score may actually decrease.
- Attendance is mandatory. The instructor will take attendance at random.
For each absence, two points (out of the maximum possible 100 points described above) will
- Lack of attention is considered an absence.
- No laptop usage is allowed in the class. Cell phones should be either in
vibration mode or turned off.
Cell phone calls are only allowed for emergency alerts or personal emergencies.
You should drop other calls.
- There will be 10% late penalty per day for a programming assignment or homework.
No late quiz or exam will be allowed without prior permission except an emergency.
- Good coding practice and comments are required. Generally, style is considered as
important as content.
- The instructor will not debug your code.
- Do not email an incomplete/buggy program to the instructor or TA to get help
for debugging or any other comments.
Schedule (subject to revisions)
- Aug 26: First Class & Ch 1. Introduction
- Aug 28: Ch 1. Introduction
- Sep 2: Ch 2. Operating-System Structures
- Sep 4: Ch 3. Processes
- Sep 9: Ch 3. Processes
- Sep 11: Ch 3. Processes
- Sep 16: Ch 4. Threads
- Sep 18: Ch 4. Threads
- Sep 23: Ch 4 and Ch 5 CPU Scheduling
- Sep 25: Ch 5 & Quiz #1: Chapter 1 - Chapter 4
- Sep 30: No Class (Rosh Hashanah)
- Oct 2: Ch 5. CPU Scheudling
- Oct 4: Ch 5. CPU Scheudling and Real-Time Scheduling
- Oct 7: Ch 6. Process Synchronization
- Oct 9: No Class (Yom Kippur)
- Oct 14: Midterm Exam: Ch 1 - Ch 5
- Oct 16: Ch 6. Process Synchronization
- Oct 21: Ch 6. Process Synchronization
- Oct 23: Ch 7. Deadlocks
- Oct 28: Ch 7. Deadlocks
- Oct 30: Ch 7. Deadlocks
- Nov 4: Ch 8. Main Memory
- Nov 6: Ch 8 & Quiz #2: Ch 5 - Ch 7
- Nov 11: Ch 8 Main Memory
- Nov 13: Ch 9 Virtual Memory
- Nov 18: Ch 9 and Ch 10 File-System Interface
- Nov 20: Ch 10 & Ch 11 File-System Implementation
- Nov 25: Ch 12 Mass-Storage Structure
- Nov 27: No class (Thanksgiving)
- Dec 2: Ch 12 & Quiz #3: Ch 7 - 11 (inclusive)
- Dec 4: Ch 16 & Ch 18 (Introduction to Distributed
- Dec 9: Ch 18 and Q & A for Final
- Dec 11: Final Exam: Chapters 7, 8, 9, 11, 12, 16, 18.1 -
18.5 (inclusive) (at
time and place)
- There will be three homeworks. Each homework is 3% of your total grade. (You automatically
get the remaining 1% for your effort.)
- Homework 1 is due at the beginning of the class
on Oct. 14, 2008. Please be timely; there will be 10% late penalty per day.
- Homework 2 is due at the beginning of the class
on Nov 6, 2008. Please be timely; there will be 10% late penalty per day.
- Homework 3 is due at the beginning of the class
on Dec. 2, 2008. Please be timely; there will be 10% late penalty per day.
- Each programming assignment is 7.5% of your grade.
Please note that the TA is the best person to contact regarding the programming
The instructor will only explain the concepts, while the TA is fully in charge of
- The TA will compile and run your program in Bingsuns and Linux.
Make sure your code compiles in gcc or g++ with no error
and runs correctly in Bingsuns, which is Solaris, or in Linux. If your
program does not successfully compile and run in Bingsuns or Linux, you will get zero.
Click here for Introduction to Bingsuns.
Alternatively, you can use Linux machines available at the
For more information about Unix,
- Programming Assignment #1 is due at
11:59:59PM, October 2, 2008. There will be 10% late penalty
per day. Click here to get the pseudo code you can
use to do this assignment.
- Programming Assignment #2 is due at
Oct. 21, 2008.
There will be 10% late penalty per day.
- Programming Assignment #3 is due at
Nov. 11, 2008.
There will be 10% late penalty per day.
- Programming Assignment #4 is due at
11:59:59PM, Dec. 4, 2008. There will be 10% late penalty