CSE 120: Principles of Operating Systems (Winter 2019)
Lecture and Discussion Times
-
Section A Lectures: Mon/Wed 5:00-6:20, CENTR 115
-
Section B Lectures: Mon/Wed 6:30-7:50, CENTR 115
-
Section A Discussion: Fri 6:00-6:50p, PCYNH 106
-
Section B Discussion: Fri 7:00-7:50p, PCYNH 106
Instructor
Teaching Assistants
-
Ujwal Bachiraju
-
Walker Carlson
-
Vijay Viswanath
-
Ziying Xue
Tutors
-
Ajeya Rengarajan
-
Litao Qiao
-
Tejas Gopal
-
Xiqiang Lin
-
Zaki Siddiqui
-
Lin Zhou
-
Emily Chou
-
Susmitha Kalidindi
-
Shangqing Gu
-
Rohan Bhargava
-
Curtis Tong
-
Lihao He
Description
This is an introductory course on the principles of operating systems.
Topics include processes, scheduling, synchronization, memory management,
virtual memory, file systems, I/O, protection, security, networking,
and distributed systems.
There is a significant systems programming component to the course,
where students are required to design and implement some basic kernel
functions (context switching, scheduling, synchronization) and
a user-level thread package.
The course is organized of the following:
-
Lectures: the lectures comprise the core material, and are based
on the instructor's lecture notes that are provided to the students
-
Discussion: the discussion sections are led by the TA, and may be
organized as discussions on specific topics or question/answer sessions
-
Readings: the readings in the textbook supplement the lecture notes
-
Labs: there are four lab programming assignments (in C)
using UMIX, a user-mode UNIX-based operating system developed by the instructor
-
Exams: there is a midterm exam and a final exam (both closed-book)
covering the material in the lectures and the labs
Lectures
The notes for each lecture will be posted
one day prior to that lecture's class.
-
Jan 7:
Introduction -
Lecture 1
-
Jan 9:
Processes
-
Jan 14: Time-Sharing
-
Jan 16: Scheduling
-
Jan 23: Synchronization
-
Jan 28: Interprocess Communication
-
Jan 30: Deadlock
-
Feb 4: MIDTERM
-
Feb 6: Memory Management
-
Feb 11: Logical Memory
-
Feb 13: Virtual Memory
-
Feb 20: File Systems I
-
Feb 25: File Systems II
-
Feb 27: Input/Output System
-
Mar 4: Protection
-
Mar 6: Security
-
Mar 11: Networks
-
Mar 13: Distributed Systems
Grading
-
30% Midterm Exam
(Mon, Feb 4, in class)
-
40% Final Exam
(SATURDAY COMMON FINAL, Mar 16, 3:00PM-5:59PM, Section A: CENTER 115 and Section B: CENTER 119)
-
30% Programming assignments (four, each worth: 10%, 20%, 30%, 40%)
Textbook
-
Operating System Concepts, 10th Ed., by Silberschatz, Galvin, Gagne; Wiley, 2019
Resources
-
Discussion board: Piazza
(CSE 120 students: please refer to Piazza for all course-related questions
not addressed on this page)