Chapter 8 * Main Memory 315 --> not so much this semester: Swapping 8.2 p 322 Backing Store p 322 Continguous Memory allocation 8.3 324 _ Table of Memory/ List of holes _ Dynamic Storage allocation Problem first fit p326 best fit p327 worst fit p327 _ External Fragmentation p327 _ Internal Fragmentation p327 _ 50*percent rule p327 _ Compaction p327 Paging 8.4 328 _ vocab: pages, frames, logical memory, physical memory _ understand issues involving: -size -shared pages p 336 -OS view vs user view // logical programming view vs OS view of pages/frames/page table -hardware support *p332 (page table, TLA) Chapter 9 * Virtual Memory 315 Demand Paging 9.2 322 _ pure demand paging p364 _ locality of reference p364 _ "fast" fork * copy*on*write 9.3 p367 - Page Replacement 9.4 p369 _ over*allocated memory better CPU utilization and throughput - Options on page*fault with no free frames _ terminate process * but which/why/how? _ swap out process and frames _ replace single page -- let's do this! ---> below this line, not covered this semester in detail- not on in any direct fashion - I/O memory requirements compete or fixed in OS? 395 – 9.7.3 memory mapped I/O - page*fault service without dirty bit 363 _ Find page on disk _ Find free frame use it if found if not select a victim write victim to disk update tables _ read page into free frame update tables _ restart wake*up user process - Use dirty bits to avoid some writes p371 - small gains in demand paging give great gains - Page replacement algorithms 369 - FIFO p373 , optimal p374 , LRU p376 , LFU/MFU p380 _ Belady’s anomaly p374 - Thrashing 9.6 p386