Lecture 17:Lecture 17:Final ReviewFinal ReviewCSE 120: Principles of Operating SystemsAlex C. SnoerenProject 3 due 12/4CSE 120 – Lecture 172Course PlugsCourse Plugs If you liked CSE 120 topics, you might find some othercourses interesting CSE 121: OS Architecture and Implementation◆ Wi06 (Your’s truly)◆ OS Implementation using Unix as a case study◆ System projects with experimentation CSE 123A/B: Computer Networking◆ 123A, Fa06 (Varghese) – link layer up to internetworking (IP)◆ 123B, Sp06 (Vahdat) – internetworking up to applicationCSE 120 – Lecture 173Course Plugs (2)Course Plugs (2) CSE 125: Software System Design and Implementation◆ Sp06 (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, oriented towards graduating seniors◆ See CSE 125 class page on Voelker’s home page for details CSE 127: Intro to Computer Security◆ Wi06 (Savage)◆ Focus on security realities in a networked environment◆ Both “offense” and “defense”CSE 120 – Lecture 174OverviewOverview Final mechanics Memory management Paging Page replacement Disk I/O File systems Advanced file systems Networked file systems Security The EndCSE 120 – Lecture 175Final MechanicsFinal Mechanics Bulk of the final covers material after midterm◆ Memory management, file systems, security Some material on concurrency, synchronization◆ Synch primitives, synch problems Based upon lecture material, homeworks, and project◆ Likely to be questions on Nachos Closed book, no notes◆ Expect similar style to midterm, just longer Again, please, do not cheat.◆ I want you all to graduateCSE 120 – Lecture 176Memory ManagementMemory 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?CSE 120 – Lecture 177Virtualizing Virtualizing MemoryMemory 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?CSE 120 – Lecture 178PagingPaging 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◆ I might ask you to figure out sizes of page tables, offsets, etc. How have you implemented paging in Nachos?CSE 120 – Lecture 179Page Table EntriesPage Table Entries What is a page table entry? In Nachos? What are all of the PTE bits used for?◆ Modify◆ Reference◆ Valid◆ ProtectionCSE 120 – Lecture 1710SegmentationSegmentation 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?CSE 120 – Lecture 1711Page TablesPage 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?CSE 120 – Lecture 1712TLBsTLBs 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?CSE 120 – Lecture 1713Page FaultsPage 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?CSE 120 – Lecture 1714Advanced Advanced Mem Mem ManagementManagement What is shared memory? What is copy on write?◆ How does it make use of the PTE bits? What are memory mapped files?CSE 120 – Lecture 1715Page ReplacementPage Replacement What is the purpose of the page replacementalgorithm? What application behavior does page replacement tryto exploit? When is the page replacement algorithm used? Different replacement algorithms◆ Belady’s (optimal), FIFO, LRU, Approximate LRU, LRU Clock,Working Set, Page Fault Frequency What is Belady’s anomaly? thrashing?CSE 120 – Lecture 1716DiskDisk 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?CSE 120 – Lecture 1717Disk SchedulingDisk Scheduling How can disk scheduling improve performance? What are the issues in disk scheduling?◆ Response time, throughput, fairness Review◆ FCFS, SSTF, SCAN, C-SCAN◆ Know why or why not these might still be importantCSE 120 – Lecture 1718File SystemsFile Systems Topics◆ Files◆ Directories◆ Sharing◆ Protection◆ Layouts◆ Buffer Cache What is a file system? Why are file systems useful (why do we have them)?CSE 120 – Lecture 1719Files and DirectoriesFiles 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?CSE 120 – Lecture 1720ProtectionProtection 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?CSE 120 – Lecture 1721File System LayoutsFile System Layouts What are file system layouts used for? What are the general strategies?◆ Contiguous, linked, indexed? What are the tradeoffs for those
View Full Document