Operating Systems, Spring 2021 (Graduates)
This course offers an introduction to the concepts and principles in modern operating systems.
It consists of two major parts: Basic Components and Distributed Systems.
Advanced topics such as real-time and multimedia systems might not be covered
due to the time limits. The course is offered in the graduate program.
- Instructor: Jenq-Haur Wang
- E-mail: jhwang AT <the domain for our school>
- Office: R1534, Technology Building, ext. 4238
- Office Hours: Tue. & Thu. 9:10-12:00am
- Class Hours: Tue. 13:10-16:00pm, R1322, Technology Building
- TA: (TBD) (R1424, Technology Building)
- Textbook: Operating System Concepts, 9th ed.,
by Abraham Silberschatz, Peter Baer Galvin, and Greg Gagne, John Wiley & Sons,
- Note: The latest edition is the 10th edition, which is available as International Student Edition in Taiwan. I will try to cover some of the latest topics in the slides whenever possible.
- Note: Earlier editions (such as 8th ed. or Java version) of the textbook
are also acceptable. Changes in the latest edition will be mentioned
- Note: Please do not confuse it with the authors' new version called "Operating System Concepts Essentials, 2nd Edition", which covers most of the core topics in the contemporary
operating systems. Some chapters were removed, such as Deadlocks, Virtual Machines, and Distributed Systems, will still be covered in this course.
- Distributed Systems, 3rd ed.,
by Maarten van Steen and Andrew S. Tanenbaum, CreateSpace Independent Publishing Platform, 2017. (Available online as a digital personalized copy for free)
- Note: It's a thorough revision and extension of its previous edition: "Distributed Systems: Principles and Paradigms, 2nd ed., 2007" by the same authors.
- Understanding the Linux Kernel, 3rd ed., by Daniel P. Bovet and Marco Cesati, O'Reilly, 2005.
- Modern Operating Systems, 4th ed., by Andrew S. Tanenbaum and Herbert Bos,
- Jul. 2, 2021: The total score including HW#1-#4, the midterm exam, and the term project has been announced. Please check if there's any questions.
- Jun. 8, 2021: The current score including HW#1-#4 and the midterm exam has been announced. Please check if there's any questions.
- May 31, 2021: ***[NOTE]*** Due to the extension of the pandemic warning level 3 to Jun. 14, all courses will remain online until the end of this semester according to the announcement from our university.
- May 24, 2021: ***[NOTE]*** Since the pandemic has not been successfully contained, all courses will remain online until Jun. 12, 2021.
After that, it is subject to changes by CDC epidemic warning levels.
- May 15, 2021: [NOTE] The epidemic warning was raised to level 3 in Taipei and New Taipei City, effective from May 15 to May 28, 2021. Please stay home whenever possible, and wear masks when going out.
- May 14, 2021: ***[NOTE]*** Due to the growing pandemic in Taiwan, all courses will be online during May 15-30, 2021. Please use Microsoft Teams to connect to our online course.
- Apr. 20, 2021: [NOTE] HW#3 has been announced.
- Mar. 30, 2021: [NOTE] HW#2 has been announced.
- Mar. 16, 2021: [NOTE] HW#1 has been announced.
- Mar. 15, 2021: [NOTE] We are going to do the Practice for Distance Learning on Mar. 16 (Tue.). Please remember to join the team *as soon as possible* before that.
Please check on our Facebook group for instructions to join our team using Microsoft Teams.
- Feb. 22, 2021: The homepage for Operating Systems (Spring 2021) has been set up.
NOTE: The tentative schedule and the slides are subject to modification.
|1||Feb. 23, 2021||Course Overview
|2||Mar. 2, 2021||
Chap. 1, Introduction
Chap. 18, Virtual Machines
Chap. 2, Operating System Structures
Ch.1 & 18 will be skimmed.
Chap. 2 will be skimmed.
|3||Mar. 9, 2021||
Chap. 3, Processes
|4||Mar. 16, 2021||
(3/16: University-Wide Practice for Distance Learning)
Chap. 4, Threads & Concurrency
Processes and Threads in Linux (Chap.3 in ULK3)
Notes on Practice for Distance Learning
|5||Mar. 23, 2021||
Chap. 5, CPU Scheduling
Process Scheduling in Linux (Chap.7 in ULK3)
|6||Mar. 30, 2021||
Chap. 6, Synchronization Tools
Chap. 7, Synchronization Examples
|7||Apr. 6, 2021||
(4/6: Compensation Leave)
|8||Apr. 13, 2021||
(Leave for DASFAA 2021)
TA: Details on
Term Project Proposal
(Team member confirmation)
|9||Apr. 20, 2021||
Synchronization in Linux (Chap.5 in ULK3)
Chap. 8, Deadlocks
Chap. 9, Main Memory
Memory Addressing in Linux (Chap.2 in ULK3)
|10||Apr. 27, 2021||
Chap. 10, Virtual Memory
Memory Management in Linux (Chap.8 in ULK3)
|11||May 4, 2021||
Due: Term Project Proposal
|12||May 11, 2021||
Chap. 11, Mass Storage Structure
|13||May 18, 2021|
Chap. 13, File-System Interface
Chap. 14, File System Implementation
VFS in Linux (Chap.12 in ULK3)
Chap. 15, File System Internals
Ch.13 will be skimmed.
|14||May 25, 2021|
Introduction to Distributed Systems (Chap. 1 from DS3)
Architectures in Distributed Systems (Chap. 2 from DS3)
Processes in Distributed Systems (Chap. 3 from DS3)
Communication in Distributed Systems (Chap. 4 from DS3)
Naming in Distributed Systems (Chap. 5 from DS3)
DS3 Ch.1 will be skimmed
DS3 Ch.2-5 will be skimmed
|15||Jun. 1, 2021|
Term Project Presentation (I)
|16||Jun. 8, 2021|
Term Project Presentation (II)
|17||Jun. 15, 2021|
Term Project Presentation (III)
|18||Jun. 23, 2021|
Term Project Presentation (IV)
||6/25 Due: Term Project Report|
Please hand in your homework in paper form or in electronic files before deadline.
Programs or homework in electronic files must be submitted to me via our
submission site as follows:
There will be at least 3-4 homeworks in this semester.
- Program Submission Site: iSchool+
- User Account: your student ID
- Program Uploading: Please compress source codes and documents in a .zip file (file size < 5MB), and clearly name your program files using
Note: If your program needs special environment or tool to compile
or run, please write documentation about it.
Due: Mar. 30, 2021
Due: Apr. 20, 2021
Ch.7-9 (OSc, 9th ed.)
Due: May 4, 2021
Ch.11-12 (OSc, 9th ed.)
Due: Jun. 1, 2021
If you have any questions about the homework, please contact with the TA via e-mail.
- Term Project
- Project Proposal: (Due: May 4, 2021)
- Each team is requried to submit a proposal, which will be counted as part of your score.
- Presentation Schedule
- Project Report: (Due: Jun. 25, 2021)
- NOTE: Each team should turn in their presentation files, survey
report or system codes to iSchool+
after completing the presentation.
- Midterm Exam: Apr. 18 - 24, 2021.
- Date: May 4, 2021 (TBD)
- Time: 13:10-16:00pm
- Location: R1322, Technology Building
- Range: Chap. 1-10 (TBD)
You can check the major topics in Ch.1-10 for preparing your exam.
- Final Exam: Jun. 20 - 26, 2021.
Note: There will be no final exam for this course.
- Please check the current score including HW#1-#4, midterm exam, and Term Project (as of Jul. 2, 2021).
Please check if there's any questions before noon, Jul. 5, 2021.
E-mail: jhwang AT <the domain for our school>
Created: Feb. 22, 2021.
Last Updated: Jul. 2, 2021.