← All courses
CS 320 · 3 credits
How Computers Work
How does a computer actually run your code? This course builds the mental models every software engineer needs: what the CPU, RAM, and disk each do, how data becomes bits, what a process really is (and how signals stop one), why programs crash, how virtual memory keeps processes apart, how threads race, deadlock, and how locks save them, what file permissions guard, and what happens between your print() and the screen. Hands-on in Python and the terminal, no kernel source code required.
Local progress0/28 lessons · 0%
What you'll learn
- ✓Explain what the CPU, RAM, disk, and operating system each do, and trace the fetch-decode-execute cycle
- ✓Read and write binary, hex, and bytes, explain why 0.1 + 0.2 ≠ 0.3, and debug text-encoding problems
- ✓Describe processes, PIDs, exit codes, and signals (SIGTERM vs SIGKILL), and build a graceful shutdown handler
- ✓Explain memory layout (stack vs heap), virtual memory and page faults, and diagnose crashes like stack overflow and out-of-memory
- ✓Demonstrate a race condition and a deadlock in Python threads, and fix them with locks and lock ordering
- ✓Explain scheduling, context switches, file buffering, permissions, and system calls, and trace the full story of running a program
Unit 1The Big Picture: CPU, RAM, Disk, and the OS
Unit 2Data Is Bits: Binary, Floats, and Text
Unit 3Programs and Processes
Unit 4Memory: Stack, Heap, and Why Programs Crash
Unit 5Threads, Race Conditions, and Locks
Unit 6Scheduling: Why Your Machine Feels Parallel
Unit 7Files and Filesystems
Unit 8System Calls: The Boundary
Unit 9Putting It Together: Running a Program, Start to Finish
Reviews
—
0 ratings
5
0
4
0
3
0
2
0
1
0
- No reviews yet.
Discussion
- No comments yet. Sign in to comment.