CSE 451: Operating Systems Section 10 Project 3 wrap-up, final exam review.

Slides:



Advertisements
Similar presentations
Operating System.
Advertisements

Operating Systems ECE344 Ding Yuan Final Review Lecture 13: Final Review.
Caching and Virtual Memory. Main Points Cache concept – Hardware vs. software caches When caches work and when they don’t – Spatial/temporal locality.
CMPT 300: Final Review Chapters 8 – Memory Management: Ch. 8, 9 Address spaces Logical (virtual): generated by the CPU Physical: seen by the memory.
CMPT 300: Operating Systems Review THIS REIVEW SHOULD NOT BE USED AS PREDICTORS OF THE ACTUAL QUESTIONS APPEARING ON THE FINAL EXAM.
Home: Phones OFF Please Unix Kernel Parminder Singh Kang Home:
CMPT 300: Final Review Chapters 8 – Memory Management: Ch. 8, 9 Address spaces Logical (virtual): generated by the CPU Physical: seen by the memory.
CS-3013 & CS-502, Summer 2006 Review Topics1 CS-3013 & CS-502 Operating Systems.
Translation Buffers (TLB’s)
Operating Systems Final Exam Review. Topics Paging Virtual Memory File Systems I/O Devices Project 3: Macro Shell.
Virtual Memory Management B.Ramamurthy. Paging (2) The relation between virtual addresses and physical memory addres- ses given by page table.
Caching and Demand-Paged Virtual Memory
PRASHANTHI NARAYAN NETTEM.
1 CSE451 - Section Last section! Project 4 due tomorrow Today: Some practice for the exam “Big picture” review tomorrow Evaluations Project 3 +
Basics of Operating Systems March 4, 2001 Adapted from Operating Systems Lecture Notes, Copyright 1997 Martin C. Rinard.
Memory Management in Windows and Linux &. Windows Memory Management Virtual memory manager (VMM) –Executive component responsible for managing memory.
Caching and Virtual Memory. Main Points Cache concept – Hardware vs. software caches When caches work and when they don’t – Spatial/temporal locality.
Disk Access. DISK STRUCTURE Sector: Smallest unit of data transfer from/to disk; 512B 2/4/8 adjacent sectors transferred together: Blocks Read/write heads.
CS 153 Design of Operating Systems Spring 2015 Final Review.
Problems discussed in the review session for the final COSC 4330/6310 Summer 2012.
CSE431 L22 TLBs.1Irwin, PSU, 2005 CSE 431 Computer Architecture Fall 2005 Lecture 22. Virtual Memory Hardware Support Mary Jane Irwin (
Lecture 19: Virtual Memory
CS414 Review Session.
Log-structured File System Sriram Govindan
CSE 451: Operating Systems Autumn 2013 Module 28 Course Review Ed Lazowska Allen Center 570 © 2013 Gribble, Lazowska, Levy,
Computers Operating System Essentials. Operating Systems PROGRAM HARDWARE OPERATING SYSTEM.
CS 153 Design of Operating Systems Spring 2015 Lecture 22: File system optimizations.
Paging (continued) & Caching CS-3013 A-term Paging (continued) & Caching CS-3013 Operating Systems A-term 2008 (Slides include materials from Modern.
Operating Systems ECE344 Ding Yuan Final Review Lecture 13: Final Review.
1 Rutgers UniversityCS 416: Operating Systems Final exam details December 22, pm-3pm. Venue: SEC 118. Tips: Spend time reading the questions before.
Operating Systems CSE 411 Revision and final thoughts Revision and final thoughts Dec Lecture 33 Instructor: Bhuvan Urgaonkar.
CSE 451: Operating Systems Section 9: Storage; networks.
IT 344: Operating Systems Winter 2010 Module 23 Course Review Chia-Chi Teng CTB 265.
Week 10 March 10, 2004 Adrienne Noble. Important Dates Project 4 due tomorrow (Friday) Final Exam on Tuesday, March 16, 2:30- 4:20pm.
Operating Systems: Summary INF1060: Introduction to Operating Systems and Data Communication.
Memory COMPUTER ARCHITECTURE
CSE 451: Operating Systems
CS 704 Advanced Computer Architecture
Section 10: Last section! Final review.
Page Replacement.
CSE 451: Operating Systems Winter 2007 Module 24 Course Review
Andy Wang Operating Systems COP 4610 / CGS 5675
CSE 451: Operating Systems Winter Module 22 Distributed File Systems
Sarah Diesburg Operating Systems CS 3430
CSE 451: Operating Systems Spring 2005 Module 23 Course Review
CSE 451: Operating Systems Spring 2005 Module 23 Course Review
Morgan Kaufmann Publishers Memory Hierarchy: Virtual Memory
CSE451 - Section 10.
CSE 451: Operating Systems Autumn 2005 Memory Management
Translation Buffers (TLB’s)
Operating Systems Lecture 1.
Andy Wang Operating Systems COP 4610 / CGS 5675
CSE 451: Operating Systems Autumn 2003 Lecture 10 Paging & TLBs
CSE 451: Operating Systems Autumn 2009 Module 26 Course Review
CSE451 Virtual Memory Paging Autumn 2002
CSE 451: Operating Systems Autumn 2003 Lecture 9 Memory Management
CSE 451: Operating Systems Autumn Module 24 Virtual Machine Monitors
CSE 451: Operating Systems Winter 2006 Module 24 Course Review
Operating Systems: A Modern Perspective, Chapter 3
Translation Buffers (TLB’s)
CSC3050 – Computer Architecture
CSE 451: Operating Systems Autumn 2003 Lecture 10 Paging & TLBs
CSE 451: Operating Systems Autumn 2003 Lecture 9 Memory Management
CSE451 - Section 10.
Lecture 9: Caching and Demand-Paged Virtual Memory
Translation Buffers (TLBs)
Sarah Diesburg Operating Systems COP 4610
Review What are the advantages/disadvantages of pages versus segments?
Andy Wang Operating Systems COP 4610 / CGS 5675
4.3 Virtual Memory.
Presentation transcript:

CSE 451: Operating Systems Section 10 Project 3 wrap-up, final exam review

Final exam review  Goal of this section: key concepts you should understand  Not just a summary of lectures  Slides coverage and final exam topics are not bijective  Goal of CSE 451: tools for life  Goal of your life: ??? 12/5/20132

Thread management  Queues  Why do thread libraries make use of queues?  Synchronization  What are the mechanisms for protecting critical sections, how do they work, and when should one be used over another?  Preemption  What is preemption and how does the process of one thread preempting another work? 312/5/2013

Memory management  Purposes:  Resource partitioning / sharing  Isolation  Usability  Paging  Segmentation 412/5/2013

Virtual memory  What happens on a virtual memory access? 512/5/2013

Virtual memory  What happens on a virtual memory access?  Address translation: who performs it?  Page table lookup  Translation Lookaside Buffer (TLB)  Page fault?  Page replacement  Process/queue management  How does all of this overhead pay off?  Locality! Both temporal (in time) and spatial (nearby). 612/5/2013

© 2010 Gribble, Lazowska, Levy, Zahorjan 7 Virtual memory page frame 0 page frame 1 page frame 2 page frame Y … page frame 3 physical memory offset physical address page frame # page table offset virtual address virtual page # Note: Each process has its own page table! 12/5/2013

Page replacement  Algorithms:  Belady, FIFO, LRU, LRU clock / NRU, random, working set…  Local vs. global  How/why are any of these better or worse than the others?  What happens when paging goes wrong?  Thrashing, 10-year old computers running XP? 812/5/2013

Advanced virtual memory  What problem does a TLB address?  What problem do two-level page tables address?  What’s the key concept? 912/5/2013

Advanced virtual memory  What problem does a TLB address?  Increases speed of virtual address translation  What problem do two-level page tables address?  What’s the key concept?  Indirection 1012/5/2013

Secondary storage  Memory forms a hierarchy  Different levels of disk abstraction:  Sectors  Blocks  Files  What factor most influences the ways that we interact with disks? 1112/5/2013

Secondary storage  Memory forms a hierarchy  Different levels of disk abstraction:  Sectors  Blocks  Files  What factor most influences the ways that we interact with disks?  Latency 1212/5/2013

13 Memory hierarchy  Each level acts as a cache of lower levels  (Stats more or less for Core i7 3770) CPU registers L1 cache L2 cache Primary Memory Secondary Storage Tertiary Storage 128 bytes 32 KiB 4 x 256 KiB 8 GiB 1 TiB 1 PiB 30 million cycles ??? cycles 1 cycle 4 cycles 11 cycles 100 cycles © 2010 Gribble, Lazowska, Levy, Zahorjan 12/5/2013 L3 cache 8 MiB 39 cycles

File systems  What does a file system give you?  Useful abstraction for secondary storage  Organization of data  Hierarchy of directories and files  Sharing of data 1412/5/2013

File system internals  Directories  Directory entries  Inodes  Files:  One inode per file  Multiple directory entries (links) per file 1512/5/2013

Inode-based file system  Sequence of steps when I run echo “some text” > /home/jay/file.txt ?  Open file:  Get inode for / -> get data block for /  Read directory entry for / -> get inode for /homes  Repeat… -> get data block for file.txt, check permissions  Write to file:  Modify data block(s) for file.txt in buffer cache  Close file:  Mark buffer as dirty, release to buffer cache  Kernel flushes dirty blocks back to disk at a later time 1612/5/2013

Other file systems  What problem does each of these address?  BSD Unix fast file system (FFS):  Performance: smarter physical disk layout  Journaling file systems (JFS):  Reliability: transactions prevent inconsistencies after crash  Berkeley log-structured file system (LFS):  Performance: even smarter physical disk layout? 1712/5/2013

RAID  Striping: read/write from multiple disks simultaneously  Improves performance  Hurts reliability  Parity: store redundant information to allow data recovery after disk failures  Improves reliability  Hurts performance 1812/5/2013

Devices and Drivers  How should the OS provide access to physical hardware to user processes?  Multiplexing  Mutual exclusion  UNIX / Linux device driver model  Virtual devices, and what they can do for you  FUSE 1912/5/2013

Networking  Layering  Encapsulation 2012/5/2013

RPC  Benefits:  Low-level details taken care of for you  Natural interface  Implementation issues:  Network failures / retries  Architecture differences  Performance 2112/5/2013

Distributed file systems  Why do we want them?  Location independence  Large-scale data sharing  Why are they hard?  Consistency  Replication  Performance  Understand the target workloads 2212/5/2013

Distributed systems  Scalability  Limited by sharing  How does this relate to multi-core CPUs?  Do more nodes equal more performance?  How do companies like Amazon, Facebook, Google, Microsoft, etc. parallelize workloads? 2312/5/2013

Virtual machine monitors  VMM is an additional layer between OS and hardware  Can interpose on instruction execution, memory accesses, I/O requests, and network communication 2412/5/2013