- What's an Operating System?
- Single-User/Multi-User/Multi-Processing/Multi-Programming: What are they?
- Some examples of different operating environments
- Functions and Characteristics of a General Purpose OS
- The Virtual Machine
- Typical services offered by the kernel
- Process Representation
- Interrupts and Interrupt Handling
- Interprocess Communication
- I/O Devices
- Issues
- Device Independence
- Buffering & Spooling
- Issues
- Mechanisms and Policies
- Deadlock
- Why is scheduling important?
- Different levels of scheduling
- Objectives and Criteria
- Common Scheduling Algorithms
- Virtual Memory
- Paged Systems
- Segmentation Systems
- Combined Paging/Segmentation Systems
- Memory Allocation Policies
- The Working Set Model
- Functions of a Filing System
- Storage Space Organisation
- Sharing & Security Issues
- File System Integrity
- Motiviation
- Mechanisms
- Faults and Errors
- General Issues
- Hardware for Distributed Systems
- Software for Distributed Systems
- Design Issues
- Issues
- Platforms for Interprocess Communication
- Issues
- Clock Synchorisation
- Mutual Exclusion
- Choosing a Leader
- Transaction Processing
- Handling Deadlock
- Processor Organisation
- Processor Allocation
- Scheduling
- Design
- Implementation
- Sun's Network File System
Case Study: WindowsNT