CS490 Windows Internals

Course Summary

This course emphasizes on a discussion of operating systems concepts, which is closely linked to one particular implementation - the Windows OS family. Given the ease-of-use of today's commercial, off-the-shelf operating systems, students need to be actively motivated not to treat operating systems as black boxes, but to gain in-depth insight in the OS implementation. Using the Windows OS family as primary target of discussion, the course will also provide links and comparison to other operating systems (such as Linux, BSD, Unix System V) where appropriate. The topics covered in this course include Windows architecture, core system mechanisms, Windows APIs, Windows traps, Windows synchronization, Windows processes and threads, scheduling, memory management, I/O, Windows file systems, and (optionally) Windows security.

Latest News


Administrative Information

Lectures: TTh 8:00-9:40, Dongzhong Yuan Room 4-401

Instructor: Kenny Zhu - SEIEE 03-524 Phone: 3420-7231 Email: kzhu[at]cs[dot]sjtu[dot]edu[dot]cn
Office hours: by appointment via email or ask after class

Teaching Assistant: Zhiyuan Cai - SEIEE 03-513 Phone: 137-744-31889 Email: luckyvega[at]163[dot]com
Office hours: Wednesday 2-4 PM.

Textbooks: Windows Internals (5th ed.) By Mark E. Russinovich, David A. Solomon and Alex Ionescu. (Available at the University Textbook Center).

Lab Setup: Guide (pdf), Sysinternal tools suite, CRK tools suite.

Assessment:

  1. Labs, Assignments and Quizzes: 30% (Labs are for your own exercise and not for submission)
  2. Two Projects: 30%
  3. Final Exam (close book): 40%

Group Projects:

  1. Project 1: Tool to View Process Details. Released: Sept 28, 2012. Due: Oct 29, 2012.
  2. Project 2: A Simple File System. Released; Oct 26, 2012. Due: Dec 20, 2012.

Schedule

LectureDateTopic SlidesResourcesHomework
109/06/2012 Introduction, OS Evolution and Reviews[pdf] Textbook pp.1
209/08/2012 Windows Concepts and Tools[pdf] Textbook pp.2-32 [Lab] [Quiz Soln]
309/13/2012 Windows Structuring[pdf] Textbook pp.33-83 [Lab]
409/15/2012 Core System Mechanisms and Windows API[pdf] Textbook pp.133-169, 198-199, 202-206,211-215 [Assignment] [Solution] [Lab]
509/20/2012 Concurrency (I) - Windows Traps[pdf] Textbook pp. 85 - [Lab]
609/22/2012 Concurrency (II) - Windows Synchronization[pdf] Textbook pp. 170-198, 1021- [Assignment] [Quiz soln] [Lab]
709/27/2012 Windows Processes and Threads[pdf] Textbook pp. 335 - [Lab] [Quiz soln]
810/8/2012 Thread Scheduling[pdf] Textbook pp. 391 - [Lab]
910/12/2012 Memory Management (I) [pdf] Textbook pp.699-735, 818-835 [Lab] [Assignment]
1010/11/2012 Memory Management (II) [pdf] Textbook pp. 736-784, 803-818 [Lab]
1110/13/2012 I/O System (I) [pdf] Textbook pp. 537-, 541-, 562- [Assignment] [Solution] [Lab]
1210/18/2012 I/O System (II)[pdf] Textbook pp. 606- [Lab] [Quiz soln]
1310/20/2012 Windows File Systems (I)[pdf] Textbook pp.890-, 895-, 918-, 937- [Assignment] [Lab]
1412/29/2010 Windows File System (II)[pdf] Textbook pp. 890- [Quiz soln]
1510/27/2012 Windows Security[pdf] Textbook Ch. 6, Wikipedia Kerberos Page [Quiz soln] [Assignment]
Copyright (c) Kenny Q. Zhu, 2010-2012.