Skip to content

henryhxu/CSCI3150

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CSCI3150 Intro to Operating Systems, Fall 2024

Administrivia

Schedule

  • Lectures:
    • Tue 12:30pm – 2:15pm, ERB LT
    • Wed 10:30am – 11:15am, ERB LT
  • Tutorials:
    • L01, Thu 10:30am - 11:15am, SHB 123
    • L02, Thu 11:30am - 12:15pm, SHB 123
    • L03, Thu 2:30pm - 3:15pm, SHB 924
    • L04, Thu 4:30pm - 5:15pm, SHB 123
    • L05, Thu 5:30pm - 6:15pm, SHB 123

Team

Member Role Office Hours
Xu, Hong (hongxu@cuhk) Prof Tue 2:30-4:30 pm, SHB 914. By appointment
Wu, Shaofeng (sfwu22@cse) Head TA Thu 12:30-2:30 pm, SHB 117.
Yang, Yitao (ytyang@cse) TA Fri 1:00-3:00 pm, SHB 121
Li, Jianqiang (jqli1@cse) TA Wed 2:30-4:30 pm, SHB 904.
Chen, Kaiwen (kwchen24@cse) TA Fri 10:00-12:00 am, SHB 904.
Chen, Yuetao (ytchen24@cse) TA TUE 1:00-3:00 pm, SHB 904
Feng, Yicheng (ycfeng@cse) TA Wed 2:00-4:30 pm, SHB 904

[NOTE]: Due to the large class size (200+ students), please do not email us individually. Piazza should be used for all Q&A.

Piazza

The Piazza page for this course is here. All communication about this course is done over Piazza. This includes questions, discussions, announcements, as well as private messages. The self-signup code is "3150 rocks!".

Course outline

This course discusses the principles in the design and implementation of operating systems (OS). Main topics include: OS concepts and abstractions, process management, memory management, file systems, and virtualization.

Textbook (optional)

The course materials are partly based upon the following classic textbook:

The following textbook (CSAPP) serves as a very good source of reference:

Grading

Assessment item CSCI Weight
Assignments 50%
Lab quizzes* 10%
Final Exam 40%

*: To encourage tutorial participation, quiz or simple programming task will be conducted at the tutorials randomly. We will randomly pick 5 tutorials and perform this at the end of the tutorial. Each quiz/programming task is worth one mark. There will also be a midterm written quiz worth 5 marks; the date will be announced in a later time.

Schedules

Click on the topic to access the slides, and on the superscript to access the corresponding chapters in the textbook.

Lectures

Week Tue Lecture Wed Lecture PDFs Optional readings
1 Intro, Arch support Arch support Intro, Arch
2 Processes4, 5 Processes Processes A fork() in the road
The Evolution of the Unix Time-sharing System
3 Threads26 Mid-autumn Festival Threads Why Threads Are A Bad Idea (for most purposes)
4 Sync 1: Locks28 Sync 2: Condition Variables30 Sync 1,
Sync 2
5 National Day Sync 2: Condition Variables Sync 2
6 Sync 3: Semaphore31 Deadlock32 Sync 3, Deadlock The Little Book of Semaphores,
Hierarchical ordering of sequential processes
7 CPU
Scheduling
7, 8, 9
Midterm Scheduling
8 Mem. Manag. 113-16 -- MEM 1
9 Mem.: Paging18, 19, 20 -- Paging
10 Mem.: Swapping21, 22 I/O Devices36, 37 Swapping,
I/O Devices
11 A Simple FS39, 40, 41 -- VSFS
12 LFS43 Virtualizationvmm LFS, virt The Design and Implementation of A Log-Structured File System
13 Networking Final Review Net It's Time for Operating Systems to Rediscover Hardware

The following material provides a nice overview of microkernels and kernel architecture, an intriguing topic I wish I had time to teach.

Tutorials and Assignments

Week Topic TA Assignment Due
1 Basic Review: Linux, Git, and C Shaofeng Assignment 1 18:00:00 p.m., Mon, Oct 7th
2 Assignment One: Background Knowledge and Code Walk Shaofeng
3 Assignment One: System Calls in C Programming Shaofeng
4 Mutex Lock Implementation via pthread Library in C Jianqiang
5 Condition Variables via pthread Library in C Jianqiang Assignment 2 18:00:00 p.m., Mon, Nov 4th
6 Semaphores in C Yuetao
7 Multilevel Feedback Queue Yuetao
8 Midterm Solution Kaiwen & Jianqiang Assignment 3 18:00:00 p.m., Mon, Nov 18th
9 Swapping Algorithms Kaiwen
10 Paging (Address Translation) Yitao
11 cancelled Assignment 4 18:00:00 p.m., Mon, Dec. 9th
12 File System API Kaiwen
12 FAT File System Yitao

Assignment Submission(Github Classroom) and Contact

Assignment Classroom Due Contact TA
assignment-one 18:00:00 p.m., Mon, Oct 7th Shaofeng
assignment-one-grace-token 18:00:00 p.m., Tue, Oct 8th Shaofeng
assignment-two 18:00:00 p.m., Mon, Nov 4th Jianqiang & Yuetao
assignment-two-grace-token 18:00:00 p.m., Tue, Nov 5th Jianqiang & Yuetao
assignment-three 18:00:00 p.m., Mon, Nov 18th Kaiwen
assignment-three-grace-token 18:00:00 p.m., Tue, Nov 19th Kaiwen
assignment-four 18:00:00 p.m., Mon, Dec 9th Yitao & Yicheng
assignment-four-grace-token 18:00:00 p.m., TUE, Dec 10th Yitao & Yicheng

Course policies

  • Assignments:
    • No late submission.
    • Grace tokens: You have 2 grace tokens, each can be used to give you a 24-hr extension on one assignment. You can apply at most 1 grace token on each assignment at your own discretion. This gives you some flexibility to cope with your own schedule.
    • According to the University’s regulation, every assignment must be accompanied by a signed declaration of originality; submissions without it will receive zero mark.
    • The declaration form is available here.
  • Use of AI tools:
    • Our approach is "Use only with prior permission".
    • In the assignments, we will explicitly specify which parts can be done with AI tools, and which parts can't.
    • Instructions will be given to properly cite/acknowledge the use of AI tools.
    • The University's guide is here.
  • Lectures and tutorials:
    • Be on time. Set your mobile device to vibration/silient mode.
    • Feel free to ask questions and raise comments during the lecture, but we can only entertain short questions and discussions in-class.
    • Longer and deeper discussion and questions can happen in tutorials.
    • Follow University's regulations on COVID, including use of masks, hand sanitization, seating with social distance, etc.

Announcement regarding assignment submissions.

We understand that certain circumstances, such as severe illness requiring hospitalization or other force majeure events, may prevent you from submitting your assignments on time.

Should you find yourself in such a situation, and upon providing appropriate documentation as proof of the circumstances, you will be permitted to use the average score of all your other assignments as a replacement for the missed assignment. This policy is designed to ensure fairness while maintaining grade standards in light of uncontrollable events.

About

Intro to OS, CSE@CUHK, by Hong Xu

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages