1CSE 120Principles of Operating SystemsFall 2001Final ReviewGeoffrey M. VoelkerNovember 28, 2001 CSE 120 – Final Review 2Course Plugs! If you like CSE 120 topics, you might find some othercourses interesting! CSE 121: OS Arch and Implementation (Sp) (Yee)◆ OS Implementation using BSD 4.4 as a case study◆ Projects modify BSD 4.4 kernel! CSE 123A/B: Computer Networking (Sp/Sp)◆ 123A (Varghese) – link layer up to internetworking (IP)◆ 123B (Savage) – internetworking up to session/application! CSE 128: Concurrency (Sp) (Marzullo)◆ Whole quarter of concurrency!◆ Much more in-depth treatment, extends to distributed domain2November 28, 2001 CSE 120 – Final Review 3Course Plugs (2)! CSE 190: Software System Design andImplementation (Voelker)◆ One project the entire quarter» Distributed, real-time, multiplayer 3D game» It might not seem like it, but it is not really a games course◆ Groups of six◆ Three lectures, then weekly group meetings◆ Basically, you do all the work◆ No homeworks, exams◆ Oriented towards graduating seniors◆ By instructor permission onlyNovember 28, 2001 CSE 120 – Final Review 4Overview! Final mechanics! Memory management! Paging! Page replacement! Disk I/O! File systems! Advanced topics3November 28, 2001 CSE 120 – Final Review 5Final Mechanics! Bulk of the final covers material after midterm◆ Memory management, file systems, advanced topics! Some material on concurrency, synchronization◆ Synch primitives, synch problems! Based upon lecture material, homeworks, and project◆ I will use at least one question from this review on the exam! Closed book, one 8.5”x11” sheet of notes◆ Just one◆ Sample final on class web site! Again, please, do not cheat◆ Cheating has been a minimum, would like to keep it that wayNovember 28, 2001 CSE 120 – Final Review 6Memory 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 memorymanagement?4November 28, 2001 CSE 120 – Final Review 7Virtualizing Memory! What is the difference between a physical and virtualaddress?! What is the difference between fixed and variablepartitioning?◆ How do base and limit registers work?! What is internal fragmentation?! What is external fragmentation?! What is a protection fault?November 28, 2001 CSE 120 – Final Review 8Paging! 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 pagenumbers, offset! How have you implemented paging in Nachos?5November 28, 2001 CSE 120 – Final Review 9Page Table Entries! What is a page table entry? In Nachos?! What are all of the PTE bits used for?◆ Modify◆ Reference◆ Valid◆ ProtectionNovember 28, 2001 CSE 120 – Final Review 10Segmentation! What is segmentation?! How does it compare/contrast with paging?! What are its advantages/disadvantages with respect topartitioning, paging?! What is a segment table?! How can paging and segmentation be combined?6November 28, 2001 CSE 120 – Final Review 11Page Tables! Page tables introduce overhead◆ Space for storing them◆ Time to use them for translation! What techniques can be used to reduce theiroverhead?! How do two-level (multi-level) page tables work?November 28, 2001 CSE 120 – Final Review 12TLBs! 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 andsoftware managed TLB?7November 28, 2001 CSE 120 – Final Review 13Page Faults! What is a page fault?! How is it used to implement demand paged virtualmemory?! What is the complete sequence of steps, from a TLBmiss to paging in from disk, for translating a virtualaddress to a physical address?◆ What is done in hardware, what is done in software?November 28, 2001 CSE 120 – Final Review 14Advanced Mem Management! What is shared memory?! What is copy on write?! What are memory mapped files?8November 28, 2001 CSE 120 – Final Review 15Page Replacement! What is the purpose of the page replacementalgorithm?! What application behavior does page replacement tryto exploit?! When is the page replacement algorithm used?! Understand◆ Belady’s (optimal), FIFO, LRU, Approximate LRU, LRU Clock,Working Set, Page Fault Frequency! What is thrashing?November 28, 2001 CSE 120 – Final Review 16Disk! 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?9November 28, 2001 CSE 120 – Final Review 17Disk Scheduling! How can disk scheduling improve performance?! What are the issues in disk scheduling?◆ Response time, throughput, fairness! Understand◆ FCFS, SSTF, SCAN, C-SCANNovember 28, 2001 CSE 120 – Final Review 18File Systems! Topics◆ Files◆ Directories◆ Sharing◆ Protection◆ Layouts◆ Buffer Cache! What is a file system?! Why are file systems useful (why do we have them)?10November 28, 2001 CSE 120 – Final Review 19Files and Directories! What is a file?◆ What operations are supported?◆ What characteristics do they have?◆ What are file access methods?! What is a directory?◆ What are they used for?◆ How are the implemented?◆ What is a directory entry?! How are directories used to do path name translation?November 28, 2001 CSE 120 – Final Review 20Protection! What is file protection used for?! How is it implemented?! What are access control lists (ACLs)?! What are capabilities?! What are the advantages/disadvantages of each?11November 28, 2001 CSE 120 – Final Review 21File 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
View Full Document