EEE3535-02 Operating Systems (Fall 2024)
Lectures: Monday 10-11:50am and Wednesday 11-11:50am at Eng-B039
Lectures-labs-credits: 3-0-3
Instructor: William J. Song (Office: Eng-C410, Email: wjhsong {\at} yonsei {\dot} ac {\dot} kr, Phone: 02-2123-2864)
Teaching assistant: Joshua Dela Rosa (Office: Eng-B705, Email: dsa.shua {\at} yonsei {\dot} ac {\dot} kr, Phone: 02-2123-7290)
Office hours:
- Instructor: Wednesday 10-11am, or otherwise by appointment
- Teaching assistant: TBD
Prerequisites:
- Introduction to C/C++ Programming (or equivalent)
- EEE2020 or CSI2103 Data Structures and Algorithms in C/C++
- EEE3530 or CSI3102 Computer Architecture in RISC-V ISA
Class objectives: This course covers the basic concepts, operations, and structures of operating systems (OS). Class objectives are as follows.
- Learning the basic concepts of operating systems, including processes, scheduling, virtual memory, multi-threading, storage, and I/O sub-systems
- Programming practices of operating systems
Class rules:
- Honest and ethical behaviors are expected at all times. All cheating attempts (even suspicious activities) will be seriously penalized, and the incidents will be reported to the university administration to take additional actions. No excuses will be heard. It will be a one-strike out.
- Students should complete all assignments individually but are encouraged to seek help from the instructor or teaching assistant (TA). There will be two hours of office hours every week, one by the instructor and another by the TA. Students are encouraged to use the office hours for troubleshooting programming assignments or asking questions about class materials.
- Discussions between students are allowed, but assignment solutions (i.e., source codes) must not be shared.
- Lectures will be provided only in English. However, students are allowed to use Korean for Q&As.
- Begging partial credits of assignments or exams will be regarded as cheating attempts, and those students will lose all their scores. Ask questions when you think grading is mistaken, not when you want extra credits for no valid reasons.
Textbook:
- Operating Systems: Three Easy Pieces, Version 1.00, by Remzi H. Arpaci-Dusseau and Andrea C. Arpaci-Dusseau (Link to Yonsei Library)
Grading:
- Attendance: 10%
- Midterm: 15%
- Final: 15%
- Programming assignments: 60% (subject to change)
- Assignment #0: Installation
- Assignment #1: System Call
- Assignment #2: Shell
- Assignment #3: Scheduling
- Assignment #4: Paging
- Assignment #5: Heap
- Assignment #6: Multi-threading
Course plans: (subject to change)
Weeks | Dates | Lectures | Notes | |
1 | 9/2 | 9/4 | Introduction | Assignment #0 |
2 | 9/9 | 9/11 | Process | Assignment #1 |
3 | ||||
4 | 9/23 | 9/25 | Process | Assignment #2 |
5 | 9/30 | 10/2 | Scheduling | |
6 | 10/7 | Scheduling | Assignment #3 | |
7 | 10/14 | 10/16 | Virtual memory | |
8 | 10/21 | Midterm | ||
9 | 10/28 | 10/30 | Virtual memory | Assignment #4 |
10 | 11/4 | 11/6 | Virtual memory | |
11 | 11/11 | 11/13 | Multi-threading | Assignment #5 |
12 | 11/18 | 11/20 | Multi-threading | |
13 | 11/25 | 11/27 | Multi-threading | Assignment #6 |
14 | 12/2 | 12/4 | File systems | |
15 | 12/9 | 12/11 | File systems | |
16 | 12/16 | Final |