MIT OpenCourseWare


» 進階搜尋
 課程首頁
 教學大綱
 教學時程
 相關閱讀資料
 課堂講稿
 實作課程
 作業
 測驗
 下載課程

相關閱讀資料


本頁翻譯進度

燈號說明

審定:林偉棻(簡介並寄信)
翻譯:曾琬瑂(簡介並寄信)
翻譯:陳盈夙(Grace Chen)(簡介並寄信)

除非另作說明,下面引用的相關閱讀資料是從課程教科書:《Lions UNIX分析第六版(Lions Commentary on UNIX® 6th Edition)》,Lions, John著,La Jolla: Annabooks 於1996年出版(ISBN No. 1-57398-013-7)。書本的原始碼經由PDP Unix Preservation Society提供下載(下載並存放在usr/sys目錄下)。除了下面指定的相關閱讀資料外,也有本課程建議的其他一般相關閱讀資料

Unless otherwise specified, readings referenced below are from the course textbook: Lions, John. Lions Commentary on UNIX® 6th Edition. La Jolla: Annabooks, 1996
(ISBN No. 1-57398-013-7). The source code for the book is also available online (download and look in usr/sys) through the PDP Unix Preservation Society. In addition to the readings assigned below, there are other general readings recommended for the course.

課程單元 相關閱讀資料
第一週
1 作業系統概要
Operating System Overview
課程教科書第1, 3, 4和5章。
Chapters 1, 3, 4, and 5 of Lions.
第二週
2 PC硬體和x86程式設計
PC Hardware and x86 Programming
《PC組合語言(PC Assembly Language)》,Carter, Paul A.著,2002年1月15日出版。[除了第六章]

Carter, Paul A. PC Assembly Language. January 15, 2002. [Except Chapter 6.]
3 定址空間
Address Spaces
課程教科書第2和6章和其原始碼。
Chapters 2 and 6 Lions plus source code.
第三週
4 定址空間管理
Managing Address Spaces
第6章和第7-1頁到7-4頁的第一行。
Chapter 6 and Pages 7-1 through 7-4, first column.
5 X86的定址空間
Address Spaces on the x86
「保護模式記憶體(Protected-Mode Memory)」,《IA-32 Intel®架構軟體開發手冊,第三冊:系統程式設計導引》第三章(The IA-32 Intel® Architecture Software Developer's Manual, Volume 3: System Programming Guide)於2002年出版。[包含有:基本架構、指令集參考手冊和系統程式設計導引]

"Protected-Mode Memory." Chapter 3 in The IA-32 Intel® Architecture Software Developer's Manual (System Programming Guide) Vol. 3 (2002). [Includes: Basic Architecture, Instruction Set Reference Manual, and the System Programming Guide.]
第四週
6 執行緒和環境切換
Threads and Context Switching
課程教科書第7章其餘部分和第8章,及其原始碼。
Remainder of Chapters 7 and 8 of Lions plus source code.
第五週
7 核心進入與離開
Entering and Leaving Kernel
課程教科書第9, 10, 11和12章(到sys1.c為止),及其原始碼。
Chapters 9, 10, 11, and 12 (until sys1.c) of Lions plus source code.
8 X86的中斷和例外處理控制
Interrupt and Exception Handling on x86
「中斷和例外處理控制(Interrupt and Exception Handling)」,《IA-32 Intel®架構軟體開發手冊,第三冊:系統程式設計導引》第三章(The IA-32 Intel® Architecture Software Developer's Manual, Volume 3: System Programming Guide)於2002年出版。[包含有:基本架構、指令集參考手冊和系統程式設計導引]

"Interrupt and Exception Handling." Chapter 5 in The IA-32 Intel® Architecture Software Developer's Manual (System Programming Guide) Vol. 3 (2002). [Includes: Basic Architecture, Instruction Set Reference Manual, and the System Programming Guide.]
第六週
9 行程抽象化和管理
Process Abstraction and Management
課程教科書第七章和第12章其餘部分,及其原始碼。
Chapter 7 and remainder of Chapter 12 of Lions plus source code.
10 行程間通訊
Interprocess Communication
課程教科書第13和32章,及其原始碼。
Chapters 13 and 21 of Lions plus source code.
第七週
期中考
Mid-term Quiz
不授課
No Lecture

實作課程4
Work on Lab 4
不授課
No Lecture

實作課程4
Work on Lab 4
11 核心API
Kernel API
「外核心:應用階層資料管理的作業系統架構 (Exokernel:An Operating System Architecture for Application-Level Resource Management)」,Engler, Dawson R.、M. Frans Kaashoek和James O 'Toole, Jr.合著,Cambridge, MA: M.I.T.電腦科學實驗室,1995年作業系統原理論文集。

Engler, Dawson R., M. Frans Kaashoek, and James O 'Toole, Jr. "Exokernel: An Operating System Architecture for Application-Level Resource Management." Symposium on Operating Systems Principles. Cambridge, MA: M.I.T. Laboratory for Computer Science. 1995.
12 行程間通訊
IPC
「由核心設計改善IPC(Improving IPC by Kernel Design)」,Liedtke, Jochen著,第14屆ACM作業系統原理研討會(SOSP),北卡羅來納州艾西維爾市:1993年12月5日∼8日。

Liedtke, Jochen. "Improving IPC by Kernel Design." 14th ACM Symposium on Operating System Principles (SOSP). Asheville, North Carolina: 5-8 Dec. 1993.
第八週
13 協調
Coordination
「單一處理器的快速互斥(Fast Mutual Exclusion for Uniprocessors)」,Bershad, Brian N.、David D. Redell和John R. Ellis合著。[本論文其中一種版本在1992年10月第五屆程式語言和作業系統的架構支援研討會(ASPLOS V)中]

Bershad, Brian N., David D. Redell, and John R. Ellis. "Fast Mutual Exclusion for Uniprocessors." [A version of this paper will appear on the Fifth Symposium on Architectural Supports for Programming Languages and Operating Systems (ASPLOS V), Oct 1992.]
14 輸入和輸出系統
I/O
課程教科書第15, 16和17章,及其原始碼。
Chapters 15, 16, and 17 of Lions plus source code.
第九週
15 檔案和目錄系統
Files and Directories
課程教科書第18和19章,及其原始碼。
Chapters 18 and 19 of Lions plus source code.
第十週
16 可靠的檔案和目錄系統
Reliable Files and Directories
「軟體更新:檔案系統中詮釋資料格式更新問題的解決方法(Soft Updates: A Solution to Metadata Update Problem in File Systems)」,Ganger, Gregory R.、M. Kirk McKusick、Craig A. N. Soules和Yale N. Patt合著,ACM電腦系統會刊 Vol.18, No.2, 127-153頁,2002年5月出版。

Ganger, Gregory R., M. Kirk McKusick, Craig A. N. Soules, and Yale N. Patt. "Soft Updates: A Solution to the Metadata Update Problem in File Systems." ACM Transactions on Computer Systems 18, 2 (May 2000): 127-153.
17 緩衝區快取和直接記憶體存取
Buffer Cache and DMA
「IO-Lite:統一I/O緩衝和快取系統(IO-Lite: A Unified I/O Buffering and Caching System)」,Pai, Vivek S.、Peter Druschel和Willy Zwaenepoel合著,1997年ACM電腦系統會刊,萊斯大學,電子與電腦工程學系、電腦科學學系。

Pai, Vivek S., Peter Druschel, and Willy Zwaenepoel. "IO-Lite: A Unified I/O Buffering and Caching System." ACM Transactions on Computer Systems. Department of Electrical and Computer Engineering, Department of Computer Science, Rice University. 1997.
第十一週
18 排程
Scheduling
「減低中斷驅動核心中的活結接收 (Eliminating Receive Livelock in an Interrupt-driven Kernel)」,Mogul, Jeffrey和K. K. Ramakrishnan合著。[本論文原出版於加州聖地牙哥1996年1月舉辦的年度USENIX科技研討會的議項]

Mogul, Jeffrey, and K. K. Ramakrishnan. "Eliminating Receive Livelock in an Interrupt-driven Kernel." [This paper was originally published in the Proceedings of the USENIX 1996 Annual Technical Conference, San Diego, California. January 1996.]
第十二週
19 虛擬機器
Virtual Machines
「Disco:可擴充式多重處理器上運行商品化作業系統(Disco: Running Commodity Operating Systems on Scalable Multiprocessors)」,Bugnion, Edouard、Scott Devine和Mendel Rosenblum合著,法國聖馬儂:1997年10月舉辦的第16屆ACM作業系統原理研討會議項。

Bugnion, Edouard, Scott Devine, and Mendel Rosenblum. "Disco: Running Commodity Operating Systems on Scalable Multiprocessors." In Proceedings of the Sixteenth ACM Symposium on Operating Systems Principles. Saint-Malo, France: Oct. 1997.
20 擴充性
Extensibility
「改善商品化作業系統的可靠性(Improving the Reliability of Commodity Operating Systems)」,Swift, Michael M、Brian N. Bershad和Henry M. Levy合著,Seattle, WA:華聖頓大學,電腦科學與工程學系,作業系統原理論文集。

Swift, Michael M, Brian N. Bershad, and Henry M. Levy. "Improving the Reliability of Commodity Operating Systems." Symposium on Operating Systems Principles. Seattle, WA: Department of Computer cience and Engineering, University of Washington.
第十三週
21 作業系統錯誤
Operating System Bugs

作業系統展示切磋
OS Bakeoff

最後一天課程
Last Day of Classes
Approach to Inferring Errors in Systems Code)」,Engler, Dawson、David Yu Chen、Seth Hallem、Andy Chou和Benjamin Chelf合著,Stanford, CA:史丹福大學電腦系統實驗室,2001年作業系統原理論文集, 57-72頁。

Engler, Dawson, David Yu Chen, Seth Hallem, Andy Chou, and Benjamin Chelf. "Bugs as Deviant Behavior: A General Approach to Inferring Errors in Systems Code." Symposium on Operating Systems Principles. Stanford, CA: Computer Systems Laboratory, Stanford University, 2001, pp. 57-72.
第十四週
隨堂考 2
Quiz 2


一般相關閱讀資料
General Reading Materials

  • 《PDP11/40處理器手冊(PDP11/40 Processor Handbook)》, Digital Equipment Corporation於1972年出版。
    PDP11/40 Processor Handbook. Digital Equipment Corporation. 1972.

  • 「UNIX分時系統(The UNIX Time Sharing System)」,Ritchie, Dennis M. 和Ken L. Thompson合著,貝爾系統技術雜誌,Vol.57,No. 6,part 2 (1978): 1905-1930。(可在課程6.033閱讀此論文)
    Ritchie, Dennis M., and Ken L.Thompson. Bell System Technical Journal 57, 6, part 2 (1978): 1905-1930. (You read this paper in 6.033.)

實作課程背景知識教材
Lab Background Material

  • 《C程式語言(The C Programming Language)》,Kernighan和Ritchie合著,Prentice Hall, Inc.於1998年出版。(中譯本:C程式語言,譯者:蔡文能)
    Kernighan, and Ritchie. The C Programming Language. Prentice Hall, Inc., 1988.

  • 《PC組合語言(PC Assembly Language)》,Carter, Paul A.著,2002年1月出版。
    Carter, Paul A. PC Assembly Language. January 2002.

  • 《IA-32 Intel® 架構軟體開發手冊,第二冊:指令集參考手冊(IA-32 Intel® Architecture Software Developer's Manual, Volume 2: Instruction set reference)》,Intel Corporation於2002年出版。
    IA-32 Intel® Architecture Software Developer's Manual, Volume 2: Instruction set reference. Intel Corporation. 2002.

  • 《IA-32 Intel® 架構軟體開發手冊,第三冊:系統程式設計導引(IA-32 Intel® Architecture Software Developer's Manual, Volume 3: System programming guide)》,Intel Corporation於2002年出版。
    IA-32 Intel® Architecture Software Developer's Manual, Volume 3: System programming guide. Intel Corporation. 2002.

 
MIT Home
Massachusetts Institute of Technology Terms of Use Privacy