CS208 Introduction to Computer Systems Friday, 6 March 2026 + Questions + Paged virtual memory (textbook section 13.3) - Why would we want every process to believe it has 2^64 bytes (16 exabytes) of memory? - How does the computer deal with that? - Components of VM - pages (typically 2^12 = 4096 bytes) address = page number || page offset - mapping via some kind of table - whoa, how big are those tables? - where do we put the tables? in memory? but wait... - MMU = memory management unit + Memory hierarchies - pull a register into CPU for addition or subtraction or something 1 clock cycle my Mac ~ 4.5GHz time = 1 / 4.5 x 10^9 ~ 2.2 x 10^-10 seconds - read a byte from RAM typically 100 clock cycles ~ 2 x 10^-8 seconds - read a byte from SSD typically .1 - 1 ms ~ 10^-4 - 10^-3 seconds - roughly 1 (reg) : 100 (ram) : 1,000,000 (ssd) - yikes--let's never read from a file again To avoid that SSD penalty - caches (scratch space where we keep copies of data we have used before) -