| W | Topic | Date | Worksheet | Events | Location |
|---|---|---|---|---|---|
| 1 | Introduction | Mon 2026/09/07 | Quiz (prerequisite quiz at 10:45am) | Delta | |
| Wed 2026/09/09 | Lecture | Delta | |||
| 2 | File FD, Permission, user/group |
Mon 2026/09/14 | Worksheet 2 | Lab | Delta |
| Wed 2026/09/16 | Lecture | Delta | |||
| 3 | Process fork, exec, linker/loader |
Mon 2026/09/21 | Worksheet 3 | Lab | Delta |
| Wed 2026/09/23 | Quiz | CLL | |||
| 4 | Exception PCB, interrupt, privilege |
Mon 2026/09/28 | Worksheet 4 | No class (教師節 Teachers' Day) | |
| Wed 2026/09/30 | Quiz | CLL | |||
| 5 | IPC pipe, shm, signal |
Mon 2026/10/05 | Worksheet 5 | Lab | Delta |
| Wed 2026/10/07 | Quiz | CLL | |||
| 6 | Scheduling proc state, sched algo |
Mon 2026/10/12 | Lab | Delta | |
| Wed 2026/10/14 | Quiz | CLL | |||
| 7 | Midterm exam | Mon 2026/10/19 | Exam | CLL | |
| Wed 2026/10/21 | No class | ||||
| 8 | I/O Buffering, Direct I/O, Device Driver |
Mon 2026/10/26 | No class (臺灣光復補假 Retrocession Day) | ||
| Wed 2026/10/28 | Quiz xv6 lab 1 announced | CLL | |||
| 9 | xv6 syscall, boot |
Mon 2026/11/02 | Lab | Delta | |
| Wed 2026/11/04 | Office Hour | Delta | |||
| 10 | Virtual Memory Mem. Management |
Mon 2026/11/09 | Quiz xv6 lab 1 | CLL | |
| Wed 2026/11/11 | No class (全校運動會 Sports Day) | ||||
| 11 | Virtual Memory (2) Paging, Page Table |
Mon 2026/11/16 | Lab | Delta | |
| Wed 2026/11/18 | Office Hour | Delta | |||
| 12 | Multi-threading Threading, Event-driven I/O |
Mon 2026/11/23 | Quiz xv6 lab 2 | CLL | |
| Wed 2026/11/25 | Quiz | CLL | |||
| 13 | Synchronization Locks, Atomic Operation |
Mon 2026/11/30 | Lab | Delta | |
| Wed 2026/12/02 | Quiz | CLL | |||
| 14 | Synchronization Semaphore, Conditional Variable |
Mon 2026/12/07 | Lab | Delta | |
| Wed 2026/12/09 | Quiz | CLL | |||
| 15 | File-system FS Implementation, NFS |
Mon 2026/12/14 | Lab | Delta | |
| Wed 2026/12/16 | Office Hour | Delta | |||
| 16 | Final Exam | Mon 2026/12/21 | Exam | CLL | |
| Wed 2026/12/23 | No class |
Staff
陳耘志 (Tony)
Instructor
廖俊一 (Janus)
TA
謝佳晉 (Johnny)
TA
林嘉宏 (Alvin)
TA
施又歆 (Yuhsin)
TA
吳書佑 (Andy)
TA
劉韋呈 (David)
TA
詹茗偉 (Alex)
TA
Information
This course guides you to explore how operating systems work “under the hood.” You will learn how operating systems manage hardware resources, and how to ensure secure and fair resource sharing among processes. We will discuss process management, system calls, virtual memory, storage, scheduling, virtualization, and modern system architectures. You will learn by doing to acquire the skills to analyze, debug, and improve complex systems you use every day.
Time: Monday 10:10~12:10 & Wednesday 09:00~09:50
Classroom: Monday (lab) at DELTA 台達 102 (容量100); Wednesday (quiz) at CLL 劉炯朗館 326 / 328
Textbook:
- Operating Systems: Three Easy Pieces, Remzi H. Arpaci-Dusseau and Andrea C. Arpaci-Dusseau
- Operating System Concepts, 10/e, Abraham Silberschatz and James Peterson.
Grading:
- Projects (14%)
- Midterm Exam (25%)
- Final Exam (25%)
- Quiz (36%)
Total possible points: 100
Language: Instructor will mostly speak English, but you aren’t restricted not to speak Mandarin (歡迎以中文發言).
Exam: Midterm and final exam are paper-based, closed-book, no devices.
Communication:
- Discussion and announcements happen on Discord.
- To ask the instructor a question, send me an email.
- To ask a TA a question, message them on Discord.
Cast
Nini and Niko will be your friends throughout your journey of operating system this semester.


Niko is a nervous, but humble cat, like bugcat Capoo. Niko works as a junior engineer at Datadog. Niko works hard developing his company’s dog tool (there are many cats and cows on Linux, but not many dogs). Niko’s favorite animal is panda (a stronger and bigger cat, he thought).
- Favorite catchphrase: “Le Mao!”
- Favorite tools on Linux:
cowsaywith Capoo,yes - Favorite food: Katsudon