NTU Course

Operating Systems

Offered in 112-2Updated
  • Notes

    課程加簽公布於 https://www.csie.ntu.edu.tw/~os/.資102同步.

  • Limits on Course Adding / Dropping
    • Restriction: sophomores and beyond and Restriction: within this department (including students taking minor and dual degree program) and Restriction: students with an odd student ID number

  • NTU Enrollment Status

    Enrolled
    0/80
    Other Depts
    0/0
    Remaining
    0
    Registered
    0
  • Course Description
    This course is designed for junior CS-major students and serves as the introduction system-level course. In this course, we will learn how the operating systems are designed and implemented. The following are the goals of this course. 1. To be familiar with the architecture and design of operating systems. The course means to teach how the modern operating systems are structured, and how the major sub-systems in modern operating systems are designed and implemented. The students are expected to design and implement application/domain specific operating systems at end of the course. 2. To become good system programmers. It means that you will have the capability of implementing an operating systems for special purposes. The learning process that you will have in this course should teach you how a good operating system should be and how the design of operating system may affect the performance of user applications. Hence, it will lead to design and implement an operating system at small to mid-size. At the end of the semester, you may want to go through this list again to see if the goals are met. We will appreciate if you could provide us your comments regarding the class at the end of the semester. (Well, you can send us your comments at any time. However, I guess that it is more reasonable to review the class at the end of the semester.)
  • Course Objective
    The following are the goals of this course. 1. To be familiar with the architecture and design of operating systems. The course means to teach how the modern operating systems are structured, and how the major sub-systems in modern operating systems are designed and implemented. The students are expected to design and implement application/domain specific operating systems at end of the course. 2. To become good system programmers.?It means that you will have the capability of implementing an operating systems for special purposes. The learning process that you will have in this course should teach you how a good operating system should be and how the design of operating system may affect the performance of user applications. Hence, it will lead to design and implement an operating system at small to mid-size.
  • Course Requirement
    Prerequisites: The students should be familiar with data structures, system programming, and basic C/C++ programming.
  • Expected weekly study hours before and/or after class
  • Office Hour
    Fri09:30 - 11:00
    9:30 AM ~ 11:00AM on Friday for Prof. Chi-Sheng Shih or make appointments via email
  • Designated Reading
    待補
  • References
    Optional reference book: - “Xv6, a simple Unix-like teaching operating system” by R. Cox, M.F. Kaashoek, & R. Morris, 2011, https://pdos.csail.mit.edu/6.S081/2020/xv6.html. - “Advanced Programming in the Unix Environment” third edition by W. Richard Stevens and Stephen A. Rago, Addison-Wesley, 2013. It is distributed by 開發圖書有限公司. - Understanding Unix/Linux Programming: A Guide to Theory and Practice, Molay, Prentice Hall, ISBN: 0130083968
  • Grading
    28%

    Midterm

    28%

    Final Exam

    4%

    MP0

    10%

    MP1

    10%

    MP2

    10%

    MP3

    10%

    MP4


    1. NTU has not set an upper limit on the percentage of A+ grades.
    2. NTU uses a letter grade system for assessment. The grade percentage ranges and the single-subject grade conversion table in the NATIONAL TAIWAN UNIVERSITY Regulations Governing Academic Grading are for reference only. Instructors may adjust the percentage ranges according to the grade definitions. For more information, see the Assessment for Learning Section
  • Adjustment methods for students
    Adjustment MethodDescription
    A1

    以錄音輔助

    Assisted by recording

    A2

    以錄影輔助

    Assisted by video

    B2

    書面報告取代口頭報告

    Written report replaces oral report

    D1

    由師生雙方議定

    Negotiated by both teachers and students

  • Make-up Class Information
  • Course Schedule
    2/20Week 1Introduction of course
    2/27Week 2Introduction to Operating Systems
    3/05Week 3Process
    3/12Week 4Thread
    3/19Week 5Memory system
    3/26Week 6Memory system
    4/02Week 7Memory system
    4/09Week 8MidTerm
    4/16Week 9Scheduling
    4/23Week 10Scheduling
    4/30Week 11Mass Storage and I/O systems
    5/07Week 12File Systems
    5/14Week 13File Systems
    5/21Week 14Synchronization
    5/28Week 15Synchronization