Download CSE 120 Final Review: Principles of Operating Systems - Prof. Geoffrey M. Voelker and more Exams Computer Science in PDF only on Docsity! CSE 120 Principles of Operating Systems Spring 2009 Final Review Geoffrey M. Voelker June 3, 2009 CSE 120 – Final Review 2 Course Plugs If you like CSE 120 topics, you might find some other courses interesting next year CSE 121: Operating Systems: Architecture and Implementation CSE 123a & 123b: Networking CSE 125: Software System Design and Implementation CSE 127: Introduction to Computer Security CSE 128: Concurrency (not sure if it’s taught next year) June 3, 2009 CSE 120 – Final Review 5 Memory Management Why is memory management useful? Why do we have virtual memory if it is so complex? What are the mechanisms for implementing MM? Physical and virtual addressing Partitioning, paging, and segmentation Page tables, TLB What are the policies related to MM? Page replacement What are the overheads related to providing memory management? June 3, 2009 CSE 120 – Final Review 6 Virtualizing Memory What is the difference between a physical and virtual address? What is the difference between fixed and variable partitioning? How do base and limit registers work? What is internal fragmentation? What is external fragmentation? What is a protection fault? June 3, 2009 CSE 120 – Final Review 7 Paging How is paging different from partitioning? What are the advantages/disadvantages of paging? What are page tables? What are page table entries (PTE)? Know these terms Virtual page number (VPN), page frame number (PFN), offset Know how to break down virtual addresses into page numbers, offset How have you implemented paging in Nachos? June 3, 2009 CSE 120 – Final Review 10 Page Tables Page tables introduce overhead Space for storing them Time to use them for translation What techniques can be used to reduce their overhead? How do two-level (multi-level) page tables work? June 3, 2009 CSE 120 – Final Review 11 TLBs What problem does the TLB solve? How do TLBs work? Why are TLBs effective? How are TLBs managed? What happens on a TLB miss fault? What is the difference between a hardware and software managed TLB? June 3, 2009 CSE 120 – Final Review 12 Page Faults What is a page fault? How is it used to implement demand paged virtual memory? What is the complete sequence of steps, from a TLB miss to paging in from disk, for translating a virtual address to a physical address? What is done in hardware, what is done in software? June 3, 2009 CSE 120 – Final Review 15 Disk Understand the memory hierarchy concept, locality Physical disk structure Platters, surfaces, tracks, sectors, cylinders, arms, heads Disk interface How does the OS make requests to the disk? Disk performance What steps determine disk request performance? What are seek, rotation, transfer? June 3, 2009 CSE 120 – Final Review 16 Disk Scheduling How can disk scheduling improve performance? What are the issues in disk scheduling? Response time, throughput, fairness Review FCFS, SSTF, SCAN, C-SCAN June 3, 2009 CSE 120 – Final Review 17 File Systems Topics Files Directories Sharing Protection Layouts Buffer Cache What is a file system? Why are file systems useful (why do we have them)? June 3, 2009 CSE 120 – Final Review 20 File System Layouts What are file system layouts used for? What are the general strategies? Contiguous, linked, indexed? What are the tradeoffs for those strategies? How do those strategies reflect file access methods? What is an inode? How are inodes different from directories? How are inodes and directories used to do path resolution, find files? June 3, 2009 CSE 120 – Final Review 21 File Buffer Cache What is the file buffer cache, and why do operating systems use one? What is the difference between caching reads and caching writes? What are the tradeoffs of using memory for a file buffer cache vs. VM? June 3, 2009 CSE 120 – Final Review 22 Summary Any remaining questions?