We think you have liked this presentation. If you wish to download it, please recommend it to your friends in any social system. Share buttons are a little bit lower. Thank you!
Presentation is loading. Please wait.
Published byTaniya Salkeld
Modified about 1 year ago
wtm - 1April 8, 2005© M. Satyanarayanan Experience with Recoverable Virtual Memory M. Satyanarayanan School of Computer Science Carnegie Mellon University
wtm - 2April 8, 2005© M. Satyanarayanan Background RVM = “Recoverable Virtual Memory” software library to provide transactional properties for VM in use since early 1990’s primarily in Coda File System (large servers to tiny handhelds) Also used by others outside our group (not by design!) persistent garbage collection [O’Toole et al 1993] transactional distributed shared memory [Feeley et al. 1994] persistent Java [Jordan 1996] Rio Vista transactional system [Lowell & Chen 1997] Some questions What lessons have we learned from RVM? What is the role of the OS? How can hardware support help RVM?
wtm - 3April 8, 2005© M. Satyanarayanan Functionality Focus on A & D of ACID (I provided by app) Segment persistent image of mapped data resides in file or raw disk partition Region all or part of a segment in active use area of an address space backed by RVM multiple regions per address space explicit mapping operations map (region_desc, options_desc) unmap (region_desc) begin_transaction (&tid, restore_mode) set_range (tid, base_addr, nbytes) end_transaction (tid, commit_mode) abort_transaction (tid) flush ( ) truncate ( ) Application code Operating System Permanence: media failure RVM Atomicity Permanence: process failure SerializabilityDistribution Nesting
wtm - 4April 8, 2005© M. Satyanarayanan RVM Lessons Ability to treat VM transactionally is a BIG win especially valuable in failure handling in distributed systems encapsulates many messy details Both meanings of “lightweight” important small resource footprint easy to use Most of the value comes from very basic features (KISS) additional fancy features, complexity not worth it factoring out of isolation works well Log optimizations valuable in reducing log traffic (20-60%) inter-transaction and intra-transaction no-flush transactions with explicit flush( ) calls useful
wtm - 5April 8, 2005© M. Satyanarayanan Role of OS RVM is a highly portable library absolutely no OS dependence (other than POSIX) runs on Linux, *BSD, MacOS X, and even WinXP (using Cygwin) Lack of integration has performance consequences storage for segment distinct from swap space longer startup latency (fixable with private mmap) poorer paging performance Predecessor of RVM was tightly integrated with OS Camelot used many Mach mechanisms (e.g. external pager) stressed little-used OS features, many subtle bugs very complex to use, even more complex to debug potential win of OS integration not realized in practice Can’t share regions across processes without OS support may be much more significant than performance issues prevents use of multiple address spaces for robustness
wtm - 6April 8, 2005© M. Satyanarayanan How Can Hardware Help? Persistent RAM-speed log! would dramatically improve latency of log forces battery-backed memory ok, but brittle abstraction perhaps flash memory log device? (not important to integrate into address space) Avoid need for manual set_range( ) calls forgetting this is major source of programming errors page granularity not good enough; has to be byte granularity perhaps get_ranges(tid) info from hardware? Isolation is completely orthogonal hardware concurrency control would fit easily into RVM separate portable Isolation library would be ideal
G Robert Grimm New York University Recoverable Virtual Memory.
Highly Available ACID Memory Vijayshankar Raman. Introduction §Why ACID memory? l non-database apps: want updates to critical data to be atomic and persistent.
Free Transactions with Rio Vista Landon Cox April 15, 2016.
Lecture 4 Page 1 CS 111 Online Modularity and Virtualization CS 111 On-Line MS Program Operating Systems Peter Reiher.
MACHINE-INDEPENDENT VIRTUAL MEMORY MANAGEMENT FOR PAGED UNIPROCESSOR AND MULTIPROCESSOR ARCHITECTURES R. Rashid, A. Tevanian, M. Young, D. Golub, R. Baron,
1 Chapter 2: Operating-System Structures Services Interface provided to users & programmers –System calls (programmer access) –User level access to system.
1 Transactions Dave Eckhardt
Virtualization Technology Prof D M Dhamdhere CSE Department IIT Bombay Moving towards Virtualization… Department of Computer Science and Engineering, IIT.
Chapter 6 Operating System Support. This chapter describes how middleware is supported by the operating system facilities at the nodes of a distributed.
Cofax Scalability Document Version Scaling Cofax in General The scalability of Cofax is directly related to the system software, hardware and network.
Operating Systems Who’s in charge in there?. Types of Software Application Software : Does things we want to do System Software : Does things we need.
Memory Protection: Kernel and User Address Spaces Background Address binding How memory protection is achieved.
Operating Systems: Wrap-Up Questions answered in this lecture: What is an Operating System? Why are operating systems so interesting? What techniques can.
1 CSIS 7102 Spring 2004 Lecture 8: Recovery (overview) Dr. King-Ip Lin.
Concurrency Control. Objectives Management of Databases Concurrency Control Database Recovery Database Security Database Administration.
Lecture 12 Page 1 CS 111 Online Devices and Device Drivers CS 111 On-Line MS Program Operating Systems Peter Reiher.
CIS250 OPERATING SYSTEMS Memory Management Since we share memory, we need to manage it Memory manager only sees the address A program counter value indicates.
Memory Management (continued) CS-3013 C-term Memory Management CS-3013 Operating Systems C-term 2008 (Slides include materials from Operating System.
Operating Systems A.Biswas Architecture. Computer Startup.
Introduction to Operating Systems CS-2301 B-term Introduction to Operating Systems CS-2301, System Programming for Non-majors (Slides include materials.
Memory Management: Overlays and Virtual Memory. Agenda Overview of Virtual Memory –Review material based on Computer Architecture and OS concepts Credits.
Paging (continued) & Caching CS-3013 A-term Paging (continued) & Caching CS-3013 Operating Systems A-term 2008 (Slides include materials from Modern.
CS533 - Concepts of Operating Systems 1 The Mach System Presented by Catherine Vilhauer.
Chapter 2 Introduction to OS Chien-Chung Shen CIS/UD
Memory Management 1 CS502 Spring 2006 Memory Management CS-502 Spring 2006.
OS Components and Structure Hank Levy. OS Structure l To understand an OS, let’s first look at its components and then how they’re composed or organized.
CSE598C Virtual Machines and Their Applications Operating System Support for Virtual Machines Coauthored by Samuel T. King, George W. Dunlap and Peter.
Introduction to Embedded Systems Memory Management: Overlays and Virtual Memory Lecture 14.
CS-3013 & CS-502, Summer 2006 Memory Management1 CS-3013 & CS-502 Summer 2006.
Synchronization. Physical Clocks Solar Physical Clocks Cesium Clocks International Atomic Time Universal Coordinate Time (UTC) Clock Synchronization Algorithms.
Machine-Independent Virtual Memory Management for Paged Uniprocessor and Multiprocessor Architectures Jordan Acedera Ishmael Davis Justin Augspurger Karl.
03/05/2008CSCI 315 Operating Systems Design1 Memory Management Notice: The slides for this lecture have been largely based on those accompanying the textbook.
Virtual Machine Monitors CSE451 Andrew Whitaker. Hardware Virtualization Running multiple operating systems on a single physical machine Examples: VMWare,
LiNK: An Operating System Architecture for Network Processors Steve Muir, Jonathan Smith Princeton University, University of Pennsylvania
G Robert Grimm New York University Virtual Memory.
Welcome to Intro to Operating Systems Course Website: https://sites.wustl.edu/shidalj/courses/cse422s/https://sites.wustl.edu/shidalj/courses/cse422s/
© Janice Regan, CMPT 300, May CMPT 300 Introduction to Operating Systems Memory: Relocation.
Overview of today’s lecture Major components of an operating system Structure and internal architecture of an operating system Monolithic Vs Micro-kernels.
Virtual Memory Virtual Memory Management in Mach Labels and Event Processes in Asbestos Ingar Arntzen.
MICRO-KERNELS New Generation Innovation. The contents Traditional OS view & its problems. Micro-kernel : introduction to concept. First generation micro-kernels.
1 Isolating Web Programs in Modern Browser Architectures CS6204: Cloud Environment Spring 2011.
COMP25212: Virtualization Learning Objectives: a)To describe aims of virtualization - in the context of similar aims in other software components b)To.
Memory-Mapped Files & Unified VM System Vivek Pai.
Operating System Structures. Common System Components Due to the complex nature of the modern operating systems, it is partitioned into smaller component.
B.Ramamurthy9/19/20151 Operating Systems u Bina Ramamurthy CS421.
ICOM Noack Operating Systems - Administrivia Prontuario - Please time-share and ask questions Info is in my homepage amadeus/~noack/ Make bookmark.
Microkernels, virtualization, exokernels Tutorial 1 – CSC469.
User-Mode Linux Ken C.K. Lee
CS 300 – Lecture 22 Intro to Computer Architecture / Assembly Language Virtual Memory.
© 2017 SlidePlayer.com Inc. All rights reserved.