1.) Overview of Computer Systems and Linux Crash Course
2.) The C Programming Language: Building Blocks and Data Structures
3.) Memory, Virtual Memory, and C-Strings (5009-Debugging)
4.) A peek into Assembly and CPU Architecture (And more debugging)
5.) Writing Bigger Software - Compilers, Linkers, and Code Generation
6.) Processes and the Memory Hierarchy
7.) Concurrency
8.) Algorithms Foundations: Sorting - Selection, Insertion, Bubble
9.) Spring Break
10.) Primer on Proofs
11.) nLogn Sorts and How We Prove It
12.) Trees, Heaps, and Heapsort
13.) Introduction to Graphs
14.) Greedy Algorithms and Dynamic Programming
15.) Final Review and Course Wrap up
☰ Select another Module

Module 6 - Processes and the Memory Hierarchy

Audio/Video Recording

Module Content

Module Overview

In this module we learn about how multiple processes can run on a single CPU. We also learn about the memory hierarchy. We then learn about the fork system command to duplicate processes..

Module Outline

  • Lecture outline
    • CPU - Fetch Decode Execute
    • Pipelining
    • Memory Hierachy
    • Locality
    • Caching
    • Processes
    • Heaps


(Graded) In-Class Activity link

  • In-Class Activity Link
    • This is graded, and only your first response is graded
    • This is an evaluation of what was learned in lecture.
    • Due one week from when the lecture takes place

Please do not redistribute or host any materials without e-mailing me first. I generally am happy to share the latest .pdf or slide presentation with those who ask. Thank you for your time!