6.097: Operating System Engineering - Fall 2002

Lecture notes

Use at your own risk:

Lecture 1: introduction

Lecture 2: introduction to x86

Lecture 3: address spaces

Lecture 4: OS structure

Lecture 5: x86 Memory Management

Lecture 6: Threads and context switching

Lecture 7: Entering and leaving the kernel

Lecture 8: x86 Interrupts/Exceptions

Lecture 9: Process abstraction and management

Lecture 10: Interprocess communication

Lecture 11: Input/Output

Lecture 12: File systems

Lecture 13: System call interface: exokernels

Lecture 14: System call interface: microkernels

Lecture 15: Coordination

Lecture 16: File systems

Lecture 17: Buffer cache

Lecture 18: Virtual memory

Lecture 19: Networking

Lecture 20: Virtualizing Processors

Lecture 21: Sensor OS

Lecture 22: OS Bugs