OSTEP(Operating Systems: Three Easy Pieces)is centered around three conceptual pieces that are fundamental to operating systems: virtualization, concurrency, and persistence.
- Unix Utilities
- Reverse
- Shell
- Web Server
- Parallel Zip
- MapReduce
- File System Checker
- Intro To xv6
- Scheduling (Lottery)
- Virtual Memory (Null Pointer and Read-Only Regions)
- Kernel Threads (Basic Implementation)
| Chapter | What To Do |
|---|---|
| Introduction | No homework (yet) |
| Chapter | What To Do |
|---|---|
| Abstraction: Processes | Run process-run.py |
| Process API | Run fork.py and write some code |
| Direct Execution | Write some code |
| Scheduling Basics | Run scheduler.py |
| MLFQ Scheduling | Run mlfq.py |
| Lottery Scheduling | Run lottery.py |
| Multiprocessor Scheduling | Run multi.py |
| Abstraction: Address Spaces | Write some code |
| VM API | Write some code |
| Relocation | Run relocation.py |
| Segmentation | Run segmentation.py |
| Free Space | Run malloc.py |
| Paging | Run paging-linear-translate.py |
| TLBs | Write some code |
| Multi-level Paging | Run paging-multilevel-translate.py |
| Paging Mechanism | Run mem.c |
| Paging Policy | Run paging-policy.py |
| Complete VM | No homework (yet) |
| Chapter | What To Do |
|---|---|
| Threads Intro | Run x86.py |
| Thread API | Run some C code |
| Locks | Run x86.py |
| Lock Usage | Write some code |
| Condition Variables | Run some C code |
| Semaphores | Read and write some code |
| Concurrency Bugs | Run some C code |
| Event-based Concurrency | Write some code |
| Chapter | What To Do |
|---|---|
| I/O Devices | No homework (yet) |
| Hard Disk Drives | Run disk.py |
| RAID | Run raid.py |
| FS Intro | Write some code |
| FS Implementation | Run vsfs.py |
| Fast File System | Run ffs.py |
| Crash Consistency and Journaling | Run fsck.py |
| Log-Structured File Systems | Run lfs.py |
| Solid-State Disk Drives | Run ssd.py |
| Data Integrity | Run checksum.py and Write some code |
| Distributed Intro | Write some code |
| NFS | Write some analysis code |
| AFS | Run afs.py |