Course Description:



This course covers fundamental concepts in operating systems for computers,

including multiprogramming,

interrupt, processes, kernel, parallelism, critical sections, deadlocks,

communication, multiprocessing,

multilevel memory management, binding, name management, file systems,

protection, resource allocation,

scheduling. Experience with concurrent programming, synchronization

mechanisms, interprocess

communication.





Textbook:



A. Silberschatz, P. Galvin, and G. Gangne, Operating System Concepts, 10th

Edition (International Student

Version), John Wiley & Sons, Inc.





Reference:



EdSim51, https://edsim51.com/

Small Device C Compiler, http://sdcc.sourceforge.net/



Teaching Method:



Three hours of lectures per week, weekly written and programming assignments,

one final project with five

checkpoints





Language of Instruction:



English





Syllabus



Chap0: History of OS

Chap1: Introduction

Chap2: System Structures

Chap3: Process Concept

Chap4: Threads

Chap5: Scheduling

Chap6: Synchronization, Chap7: Synchronization Examples

Chap8: Deadlocks

Chap9: Main Memory

Chap10: Virtual Memory

Chap11: Mass Storage

Chap12: I/O

Chap13, Chap14: File System





Evaluation:



Midterm exam 30%

Final exam 40%

Assignments and Projects 30% (weekly, word problem + python

programming for OS algorithms)



Course Website:

http://elearn.nthu.edu.tw/



Attendance is required, whether you are officially enrolled or petitioning to

add this course. Between 11:00-11:15, we will give an online quiz, and the

link will be posted on Google Meet. The quiz system will be closed promptly

at 11:15 and will not be reopened. The same quiz will also be administered in the

other OS course by Prof. Jerry Chou. Students petitioning to add either course

will only need to take the quiz once, and the two courses will coordinate in

handling the add petitions.



[Note] If you are officially enrolled in either course, you may not drop it

and then petition to add so you can switch instructors. Once dropped, you give

up your opportunity to take either OS course this semester.



The actual score on the quiz will ont impact your course grade, but if you do

not take the course, points will be deducted from your course grade. The

purpose is to assess the prerequisite knowledge as early feedback for students

to strengthen their background knowledge. Therefore, take the quiz with

academic honesty.



Again, a reminder that all students in this course, whether officially

enrolled or petitioning to add, are required to take the prerequisite quiz on the
first day.

Extra Selection Application Form(2022):

https://forms.gle/85KqJiKdrWJFsw9J9