1
|
C Programming Language
|
-
|
Essential C
|
1
|
2
|
C Programming Language
|
html
pdf
|
Pointers and Memory,
Linked List Basics,
Binary Trees
|
2
|
3
|
PC H/W, CPUs and Assembly Review
|
pdf
|
I/O Devices,
Journey to the Stack, Part I,
How Computers Boot Up,
|
-
|
4 - 5
|
OS Basics, Processes and Threads
|
pdf
pptx
†
|
Introduction,
The Abstraction: The Process,
Interlude: Process API,
Mechanism: Limited Direct Execution,
Concurrency: An Introduction,
Interlude: Thread API,
|
Project 1: Threads
|
6
|
Synchronization and Deadlock
|
pdf
pptx
†
|
Locks,
Lock-based Concurrent Data Structures,
Condition Variables,
Semaphores,
Common Concurrency Problems,
Monitors,
|
TBD
|
7
|
Scheduling
|
pdf
pptx
†
|
Scheduling: Introduction,
Scheduling: Multi-level Feedback Queue ,
Scheduling: Proportional Share,
Multiprocessor Scheduling,
|
TBD
|
8
|
Address Translation and Virtual Memory
|
pdf
pptx
pptx (with audio)
†
|
The Abstraction: Address Spaces,
Mechanism: Address Translation,
Segmentation,
Paging: Introduction,
Paging: Faster Translation (TLBs),
Paging: Smaller Tables,
Beyond Physical Memory: Mechanisms,
Beyond Physical Memory: Policies
|
TBD
|
9
|
Memory Management and Garbage Collection
|
pdf
pptx
†
|
Free Space Management
|
TBD
|
10
|
Storage Disks
|
pdf
pptx
†
|
Hard Disk Drives,
Redundant Arrays of Inexpensive Disks (RAIDs)
|
TBD
|
11
|
Files and Directories
|
pdf
pptx
†
|
Interlude: File and Directories,
File System Implementation,
Locality and The Fast File System,
Crash Consistency: FSCK and Journaling,
Log-structured File Systems
|
TBD
|
12
|
File System
|
-
|
TBD
|
TBD
|