Operating System

Course Code: B62010H-01

Course Name: Operating System (B)

Credits: 3.0

Level: Undergraduate

Pre-requisite: Principle of Computer Engineering, C-language programming

Lecture Time: 15 weeks, 2 sessions/week, 2 hours/session

Instructors: Dr. Yungan Bao, Dr. Mingyu Chen

Course Description

This course is a required course for students with major in computer science and technology. The purpose is to enable students to master the basic principles and realization of operating system. Requirements are: understand basic concept and main module of operating system; develop computer concept (i.e., understand every level of abstraction and implementation); have basic ability of writing operating system kernel.

Topics and Schedule

  1. Introduction of Operating System (2 hrs)

1.1.   Development, categories and function of operating system

1.2.   Curriculum

  1. Summary of Operating System (20 hrs)

2.1.   Structure of Operating System

2.2.   Project 1: writing OS boot programming

  1. Process and Threads (10 hrs)

3.1.   Concept and implementation of process and threads (2 hrs)

3.2.   Process scheduling (4 hrs)

3.3.   Example analysis (4 hrs)

3.4.   Project 2: Non-Preemptive Kernel (4 hrs)

  1. Concurrency, Synchronization and Communication Mechanism (12 hrs)

4.1.   Semaphores, monitor, condition variables and other synchronizations (4 hrs)

4.2.   Deadlock (2 hrs)

4.3.   Inter-process communication (2 hrs)

4.4.   Examples Analysis (4 hrs)

4.5.   Project 3: Preemptive Kernel

  1. Virtual Memory (12 hrs)

5.1.   Address space and address translation (2 hrs)

5.2.   Page management of virtual memory (4 hrs)

5.3.   Design of virtual memory (2 hrs)

5.4.   Examples Analysis (4 hrs)

5.5.   Project 4: Management of virtual memory

  1. Facility Management (6 hrs)

6.1.   Interrupt (2 hrs)

6.2.   Device Drivers (2 hrs)

6.3.   Examples Analysis (2 hrs)

6.4.   Project 5: Inter-process communication and device drivers

  1. File System (14 hrs)

7.1.   Magnetic tape, disk, principle of SSD storage medium (2 hrs)

7.2.   Basic concepts of file system (2 hrs)

7.3.   File organization and directory (2 hrs)

7.4.   File performance, network file system (2 hrs)

7.5.   Reliability of file system, influence of storage medium to file system (2 hrs)

7.6.   Examples Analysis (2 hrs)

7.7.   Project 6: File system

  1. Research Frontiers of Operating System (2 hrs)

8.1. Introduction of current operating system research

Grading

Textbook

Anderw S. Tanenbaum, Modern Operating Systems (English version), 3rd, Machinery Industry Press. ISBN: 9787111265276

Reference textbook:

[1] New Design Team, Art of design of Linux Kernel, 2nd, Machinery Industry Press. ISBN: 9787111421764

[2]  Silberschatz, Galvin, and GagneOperating System Concepts 9th Edition ISBN: 9781118063330

Reference