NTNU’s logo

Course Name: CSU0033 Operating Systems 作業系統 (Spring 2025)
Instructor: Chao Wang 王超
Teaching Assistant: Yung-Tien Lai 賴勇典
Course Meetings: Mondays 15:30–17:20 and Fridays 10:20–11:10, in classroom B101, Gongguan Campus
Office Hours: Wednesdays and Thursdays, 14:00–16:00 @ room 511, Applied Science Building, Gongguan Campus; or by appointment
Midterm Exam: Week 8, Monday, in class
Final Exam: Week 16, Monday, in class

配合教育部雙語政策,此課程為 EMI 英文授課。

Contents

Course Syllabus

Operating systems (OS) stand at the core in virtually every modern computing systems. From Apps developers to firmware engineers, knowledge of how OS works often makes them better team players in R&D groups for systems software. This one-semester course is designed for third-year undergraduate engineering students, and together we will learn the essentials of operating systems, both theory and practice.

This course will cover topics that are considered standard: processes and their management and synchronization, memory and storage management, and file systems, or put in another way, virtualization, concurrency, and persistence (https://pages.cs.wisc.edu/~remzi/OSTEP/)

This is a demanding course. You should expect to spend some nontrivial time in both textbook reading and hands-on tinkering. The lecture hours will be used to expound key concepts, and both the textbooks and assignments will be the real meat for you to digest. Simply put, you will learn little if you spend time only in lecture hours. Nevertheless, and hopefully, those hours spent could help prepare you to master the hard stuff.

We will do intensive code study in a unix-like teaching operating system named xv6, based on RISC-V. Those who would like to take this course should have knowledge in C language and computer architecture. We will do a pre-test during the first semester week. The topics will include C, computer architecture (the required credit course in our department), and some English. The pre-test will have nothing to do with your score in this course, but if you failed on the C and/or computer architecture part of the pre-test, you must strengthen your background before taking this course.

Grading:

  • Homework Assignments 40%
  • Midterm Exam 15%
  • Final Exam 20%
  • Course Participation 10%
  • Attendance 5%
  • In-Class Written Quizzes 10%

Textbooks

The following two books are required for this course:

  1. (The Comet Book) Operating Systems: Three Easy Pieces, by Remzi H. Arpaci-Dusseau and Andrea C. Arpaci-Dusseau (University of Wisconsin-Madison). Book web site: https://pages.cs.wisc.edu/~remzi/OSTEP/

  2. The xv6 book: https://pdos.csail.mit.edu/6.828/2023/xv6.html

The following books are good but optional for this course:

  1. The RISC-V Reader: An Open Architecture Atlas http://www.riscvbook.com/

  2. (The Dinosaur Book) Operating System Concepts, 10/e global edition, by Silberschatz, Galvin, and Gagne. ISBN 978-11194-5408-3 (Bookstore contact: 02-2311-4027 Mr. Lin)

Course Schedule

See the following course schedule for our coverage of the Comet book. For example, C11–14 means Chapters 11 to 14 therein.

Week # Topic Textbook Coverage
1 Abstraction and Mechanism: The Process C1–4
2 Abstraction and Mechanism: The Process (Cont.) C5–6
3 Scheduling C7–9
4 Memory Virtualization and Address Spaces C11–14
5 Memory Virtualization and Address Spaces (Cont.) C15–17
6 Paging C18–20
7 Memory Policies and Systems C21–22
8 Midterm Exam, and Some Catch-Ups
9 Concurrency and Locks C26–28
10 Condition Variables, Semaphores, and Concurrency Bugs C30–32
11 I/O Devices, HDDs, and RAIDs C35–38
12 File System and Locality C39–41
13 Crash Consistency, Logging, and SSDs C41–43
14 Crash Consistency, Logging, and SSDs (Cont.) C41–43
15 Further Hands-On Study on The xv6 Operating System
16 Final Exam

Accessibility

Students in need are encouraged to bring their considerations to the instructor.

Academic Integrity

All homework assignments and exams must be completed individually and independently, except as specifically allowed by the instructor.

Academic integrity is a key component of your education, which is for your benefit. Anyone found to be cheating or helping someone else cheat will receive zero score for that homework/exam. Please reflect on the university’s motto: Sincerity 誠, Integrity 正, Diligence 勤, Simplicity 樸.

Homework Assignment

All homework assignments will be announced on Moodle.