Operating Systems
EE 5173/921 U9580
Professor: Farn Wang (王凡教授)
farn@cc.ee.ntu.edu.tw http://cc.ee.ntu.edu.tw/~farn Office: BL 616 Phone: +886-2-33663602 Semester: Fall 2015 Classroom: BL 103 Credits: 3 Time: 14:20-17:20 Wednesday
News:
(2015/01/07) Samples of final exams available.
(2015/11/04) The number of conferences that the students may choose paper from for midterm report is now five.
(2015/11/04) Details for the evaluation of the term report is announced.
(2015/10/28) Midterm on Nov. 11, 2015 is changed to midterm report which still accounts for 30% in the student course evaluation. Related rules for the mid-term report submission can be found here.
(2015/10/28) Class on Nov. 04, 2015 is cancelled. The missing hours will be made up on Nov. 11 and Nov. 18, 2015.
After careful calculation, the teacher still owes 2 hours to the class. The teacher missed 2 hours on Oct. 14. However, there will be a make-up class on Jan. 20, 2016. The teacher thus has to make up two hours for canceling the class on Nov. 4, 2015.
(2015/10/10) Project presentation rules announced.
(2015/09/29) Dates specified explicitly for midterm, final exam, and projects.
(2015/09/29) Rules for homework submission announced.
(2015/09/20) All homeworks announced.
(2015/09/16) Syllabus announced.
(2013/12/19) Materials for project 3 announced.
(2013/11/26) Materials for project 2 announced.
(2013/10/10) Materials for project 1 announced.
Background:
Operating systems (OS) are the lowest-level software between computer architecture and the other software. It is only via operating systems, users and other programs can access the underlying hardware functions. The evolution of OS has brought about most of the software technology that we know of today. Thus, the knowledge we learned from an OS course is actually a snapshot of the whole computer technology and serves inspiration for solutions to all technical challenges that we may see in the careers of IT professionals.
Goals:
Learning the fundamentals of OS;
Gaining a snapshot of advanced and developing technology in OS.
Experimenting with OS via projects for rewriting and implementing parts of OS code.
Textbook:
Operating System Concepts
9th Edition
by Abraham Silberschatz, Peter B. Galvin, Greg Gagne
Pre-requisites:
Basic Computer Concepts,
C/C++ or Java programming,
Data-Structures,
Algorithms
Evaluation:
Mid-term report (30%), deadline on Dec. 2, 2015.
must submit the topic to TA for confirmation by Nov. 11, 2015.
TA and the teacher may suggest changes to the topics.
must confirm the topics by Nov. 18, 2015.
must turn in the report in WORD format, at least 3 pages, to the TA via email.
The topic must be technologically related to one of the chapter in the textbook.
must be related to the OS technology in sotware giants, like Amazon, Facebook, Google, Microsoft, IBM, ..., etc; OR
a regular paper published in ACM SOSP 2015, ACM ISCA 2015, IEEE ICPP 2014, ACM POPL 2015, or ACM PODC 2015.
The report must be in English and is evaluated as follows.
20% on background before the work.
20% on the motivation.
20% Techniques of the work.
20% Experiment interpretation.
20% Writing.
1. Thread management: announcement on Oct. 14. Submission on Nov. 18.
2. CPU scheduling: announcement on Nov. 18. Submission Dec. 16.
3. Memory management: announcement Dec. 16. Submission Jan. 20, 2016.
Each student must choose one of three projects to present.
Each presentation is in 10mins.
The number of presentations for each project is roughly 11.
Students must go to http://goo.gl/forms/6xQSr5MqBn to register for the presentation time slots by Oct. 28, 2015. Students missing the deadline will be assigned to the time slots by the TA.
Assignment to the presentation time slots is by the TA in appropriate consideration of the students' first wishes to their last.
Homework (10%)
Always turn in the exercise by 5pm, Wednesday, one week after the chapter lecture is finished.
Chapter 1? 1.1, 1.4, 1.5, 1.9, 1.14, 1.15, 1.16, 1.17, 1.19
Chapter 2? 2.1, 2.5, 2.6, 2.7, 2.10, 2.11, 2.12, 2.13
Chapter 3? 3.1, 3.2, 3.4, 3.5, 3.6, 3.7, 3.10, 3.11
Chapter 4? 4.2, 4.3, 4.4, , 4.6, 4.7, 4.10, 4.13
Chapter 5? 5.1, 5.2, 5.5, 5.6, 5.7, 5.8, 5.10, 5.12, 5.15, 5.22
Chapter 6 ? 6.2, 6.4, 6.5, 6.6, 6.10, 6.11, 6.12, 6.13, 6.22, 6.29
Chapter 7 ? 7.1, 7.5, 7.6, 7.8, 7.12, 7.14
Chapter 8 ? 8.1, 8.3, 8.5, 8.6, 8.12, 8.16, 8.17, 8.20, 8.21
Chapter 9 ? 9.1, 9.3, 9.4, 9.5, 9.6, 9.8, 9.9, 9.14, 9.17, 9.18
Chapter 10 ? 10.1, 10.2, 10.4, 10.5, 10.9
Chapter 11 ? 11.1, 11.2, 11.3, 11.6, 11.8, 11.9
Chapter 12 ? 12.2, 12.3, 12.6, 12.7, 12.9, 12.11, 12.15
Course materials: Sylabus Slides
Previous classes:
Teaching Assistant Information:
Course Schedule:Name: 黃建文(Jason)
Mail: r04942044@ntu.edu.tw
Room: BL 603
Office Hour: 13:20-14:20 Wednesday
1. |
9/16 |
課程簡介 |
2. | 9/23 | 第一單元(含一、二章) |
3. | 9/30 | 第一單元 |
4. | 10/7 | 第二單元(含三、四、五章) |
5. | 10/14 |
第二單元 (請假二小時) 學期計畫介紹:Nachos簡介, 第一階段學期計畫介紹: thread management |
6. | 10/21 | 第二單元 (補課一小時) |
7. | 10/28 | 第二單元 (補課一小時) |
8. | 11/4 | 第三單元(含六、七章) |
9. | 11/11 | 期中考 |
10. | 11/18 |
第三單元
繳交第一階段學期計畫報告、第二階段學期計畫介紹:CPU scheduling |
11. | 11/25 | 第三單元 |
12. | 12/2 | 第四單元 (含八、九章) |
13. | 12/9 |
第四單元 |
14. | 12/16 | 第四單元
繳交第二階段學期計畫報告、第三階段學期計畫介紹:Virtual Memory |
15. | 12/23 | 第四單元 |
16. | 12/30 | 第五單元(含10、11、12章) |
17. | 1/6 |
第五單元 |
18. | 1/13 |
期末考 |
19. | 1/20 | 繳交第三階段學期計畫報告 |