1&6(&6(3ULQFLSOHVRI2SHUDWLQJ3ULQFLSOHVRI2SHUDWLQJ6\VWHPV6\VWHPV)DOO)DOOFinal ReviewFinal ReviewGeoffrey M. VoelkerGeoffrey M. VoelkerDecember 5, 2000 CSE 120 – Final Review 22YHUYLHZ2YHUYLHZ● Final mechanics ● Memory management● Paging● Page replacement● Disk I/O● File systems● Advanced topics2December 5, 2000 CSE 120 – Final Review 3)LQDO0HFKDQLFV)LQDO0HFKDQLFV● Bulk of the final covers material after midterm◆ Memory management, file systems, advanced topics● Some material on threads, synchronization◆ Thread operations, semaphores● 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● Again, please, do not cheat◆ Cheating has been a minimum, would like to keep it that wayDecember 5, 2000 CSE 120 – Final Review 40HPRU\0DQDJHPHQW0HPRU\0DQDJHPHQW● 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?3December 5, 2000 CSE 120 – Final Review 59LUWXDOL]LQJ9LUWXDOL]LQJ0HPRU\0HPRU\● 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?December 5, 2000 CSE 120 – Final Review 63DJLQJ3DJLQJ● 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?4December 5, 2000 CSE 120 – Final Review 73DJH7DEOH(QWULHV3DJH7DEOH(QWULHV● What is a page table entry? In Nachos?● What are all of the PTE bits used for?◆ Modify◆ Reference◆ Valid◆ ProtectionDecember 5, 2000 CSE 120 – Final Review 86HJPHQWDWLRQ6HJPHQWDWLRQ● What is segmentation?● How does it compare/contrast with paging?● What are its advantages/disadvantages with respect to partitioning, paging?● What is a segment table?● How can paging and segmentation be combined?5December 5, 2000 CSE 120 – Final Review 93DJH7DEOHV3DJH7DEOHV● 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 page tables work?December 5, 2000 CSE 120 – Final Review 107/%V7/%V● What problem does the TLB solve?● How do TLBs work?● Why do TLBs work?● How are TLBs managed?◆ What happens on a TLB miss fault?● What is the difference between a hardware and software managed TLB?6December 5, 2000 CSE 120 – Final Review 113DJH)DXOWV3DJH)DXOWV● 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?December 5, 2000 CSE 120 – Final Review 12$GYDQFHG$GYDQFHG0HP0HP0DQDJHPHQW0DQDJHPHQW● What is shared memory?● What is copy on write?● What are memory mapped files?7December 5, 2000 CSE 120 – Final Review 133DJH5HSODFHPHQW3DJH5HSODFHPHQW● What is the purpose of the page replacement algorithm?● What application behavior does page replacement try to 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? December 5, 2000 CSE 120 – Final Review 14'LVN'LVN● 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?8December 5, 2000 CSE 120 – Final Review 15'LVN6FKHGXOLQJ'LVN6FKHGXOLQJ● How can disk scheduling improve performance?● What are the issues in disk scheduling?◆ Response time, throughput, fairness● Understand◆ FCFS, SSTF, SCAN, C-SCANDecember 5, 2000 CSE 120 – Final Review 16)LOH6\VWHPV)LOH6\VWHPV● Topics◆ Files◆ Directories◆ Sharing◆ Protection◆ Layouts◆ Buffer Cache● What is a file system?● Why are file systems useful (why do we have them)?9December 5, 2000 CSE 120 – Final Review 17)LOHVDQG'LUHFWRULHV)LOHVDQG'LUHFWRULHV● 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?December 5, 2000 CSE 120 – Final Review 183URWHFWLRQ3URWHFWLRQ● 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?10December 5, 2000 CSE 120 – Final Review 19)LOH6\VWHP/D\RXWV)LOH6\VWHP/D\RXWV● 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?December 5, 2000 CSE 120 – Final Review 20)LOH%XIIHU&DFKH)LOH%XIIHU&DFKH● 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?11December 5, 2000 CSE 120 – Final Review 21$GYDQFHG7RSLFV$GYDQFHG7RSLFV● What is FFS, and how is it an improvement over the original Unix file system?● What is LFS, and how is
View Full Document