How To Write To A Linux Memory Map On A Microsoft Zseries (Amd64) On A Linux (Amd32) (
|
|
|
- Jewel Hill
- 5 years ago
- Views:
Transcription
1 Understanding Linux Memory Management SHARE 102 Session 9241 Dr. Ulrich Weigand Linux on zseries Development, IBM Lab Böblingen
2 Linux Memory Management - A Mystery? What does this mean: $ free total used free shared buffers cached Mem: /+ buffers/cache: Swap: Or this: $ cat /proc/meminfo MemTotal: kb Dirty: 28 kb MemFree: kb Writeback: 0 kb Buffers: kb Mapped: 5492 kb Cached: kb Slab: kb SwapCached: 532 kb Committed_AS: 7656 kb Active: kb PageTables: 208 kb Inactive: kb VmallocTotal: kb HighTotal: 0 kb VmallocUsed: 724 kb HighFree: 0 kb VmallocChunk: kb LowTotal: kb LowFree: kb SwapTotal: kb SwapFree: kb
3 Agenda Physical Memory Dynamic Address Translation Process Address Spaces and Page Cache Kernel Memory Allocators Page Replacement and Swapping Virtualization Considerations
4 Physical Memory Basic allocation unit: Page (4096 bytes) Use of each page described by 'struct page' Allocation status, backing store, LRU lists, dirty flag,... Pages aggregated into memory zones Zones may be aggregated into nodes (NUMA systems) Boot process Kernel loaded at bottom of memory Determine size of memory, create 'struct page' array Kernel pages and boot memory marked as 'reserved' All other pages form the master pool for page allocation
5 Memory Zones GPF_HIGHMEM ("High memory zone") Memory not directly addressable from kernel space On Intel machines all > 4/2/1 GB On zseries empty GPF_NORMAL ("Normal zone") Memory generally usable by the kernel, except possibly for I/O On 31-bit zseries empty On 64-bit zseries all > 2 GB GPF_DMA ("DMA zone") Memory usable without restrictions On 31-bit zseries all memory On 64-bit zseries all < 2 GB (On Intel all < 16 MB)
6 Kernel Memory Allocators Low-level page allocator Buddy system for contiguous multi-page allocations Provides pages for in-kernel allocations (slab cache) vmalloc areas (kernel modules, multi-page data areas) page cache, anonymous user pages misc. other users Slab cache Manages allocations of objects of the same type Large-scale users: inodes, dentries, block I/O, network... kmalloc (generic allocator) implemented on top
7 Buddy Allocator Order-n free lists (per zone) MAX_ORDER 2^0 pages 2^3 pages 2^7 pages Allocate order-n block: If none is free, a order-(n+1) block is split Free order-n block: If 'buddy' is also free, merge them to order-(n+1) block
8 Dynamic Address Translation: 31-bit Segment Table Origin STO Virtual Address Segment Page Index (11 bit) Index (8 bit) Byte Index (12 bit) SX PX BX Segment Table Page Table + PTO + PFRA Real Address PFRA Page Frame Real Address BX
9 Dynamic Address Translation: 64-bit Region Table Origin RFTO Virtual Address Region-1st Region-2nd Region-3rd Segment Page Index (11 bit) Index (11 bit) Index (11 bit) Index (11 bit) Index (8 bit) RFX RSX RTX Byte Index (12 bit) SX PX BX Region-1st Table Region-2nd Table Region-3rd Table Segment Table Page Table + RSTO + RTTO + STO + PTO + PFRA Real Address PFRA BX
10 DAT: 64-bit Three Level Translation Region Table Origin RTTO Virtual Address Region-1st Region-2nd Region-3rd Segment Page Index (11 bit) Index (11 bit) Index (11 bit) Index (11 bit) Index (8 bit) 0 0 RTX Byte Index (12 bit) SX PX BX Region-1st Table Region-2nd Table Region-3rd Table Segment Table Page Table + STO + PTO + PFRA Real Address PFRA BX
11 zseries Address Translation Modes Directly accessible address spaces Primary space: STO/RTO in Control Register 1 Secondary space: STO/RTO in Control Register 7 Home space: STO/RTO in Control Register 13 Access-register specified spaces Access registers Base register used in memory access identifies AR AR specifies STO/RTO via Access List Entry Token Operating System manages ALETs and grants privilege ALET 0 is primary space, ALET 1 is secondary space
12 Address Translation Modes (cont.) Translation mode specified in PSW Primary space mode Instructions fetched from primary space, data in primary space Secondary space mode Instructions in primary, data in secondary Home space mode Instructions and data in home space Access register mode Instructions in primary, data in AR-specified address space
13 zseries Program Status Word I E Prog E 0 R T O X Key 0 M W P A S C C Mask A _ _ _ _ _ _ _ _ _ _ _ _ _ B A _ Instruction Address R: Program Event Recording Mask T: Dynamic Address Translation Mode IO: I/O Interruption Mask EX: External Interruption Mask Key: PSW Key (storage proctection) M: Machine Check Mask W: Wait State P: Problem State AS: Address Space Control CC: Condition Code PM: Program Mask EA: Extended Addressing Mode BA: Basic Addressing Mode Instruction Address (Continued)
14 Linux on zseries: Use of Address Spaces 0x7FFFFFFF Stack Shared Libs vmalloc area primary space mode primary space (= kernel space) home space mode home space (= secondary or user space) 0x x User Program and Heap Home Space physical memory mapping Kernel code Primary Space mvc 0(8,%r2),0(%r4) access register mode primary space %ar4=0 mvc 0(8,%r2),0(%r4) secondary space %ar4=1 mvc 0(8,%r2),0(%r4) la 4,<source> la 2,<destination> sacf 512 mvc 0(8,%r2),0(%r4) sacf 0
15 Memory Management Data Structures 'Address spaces' Represent some page-addressed data Examples: inodes (files), shared memory segments, swap Contents cached in 'page cache' 'Memory map' Describes a process' user address space List of 'virtual memory arenas' VMA maps part of an address space into a process Page tables Hardware-defined structure: region, segment, page tables Linux uses platform-independent abstraction Contents filled on-demand as defined by MM
16 Virtual Memory Arenas Page tables Memory map Address spaces page cache Shared VMA page cache page cache anon page swap entry swap cache Private VMA page cache
17 Page Table Entries 0 PFRA 0 I P PFRA: Page Frame Real Address _ _ _ _ _ I: Invalid P: Page Protection Empty PTE slot _ _ _ _ _ _ PFRA Read-write page _ _ _ _ _ _ PFRA Read-only page _ _ _ _ _ _ PFRA No-access page _ _ _ _ _ _ SO SA 0 Swapped-out page _ _ _ _ _ _ SA: Swap area (file/device) SO: Offset within area 0 FOH FOL 1 Paged-out remapped page _ _ _ _ _ _ FOL: Offset (low bits) FOH: Offset (high bits)
18 Reverse Mappings VM A VM B VM C Physical Page Reverse Mapping
19 Reverse Mappings (cont.) Advantages of reverse mappings Easy to unmap page from all address spaces Page replacement scans based on physical pages Less CPU spent inside memory manager Less fragile behaviour under extreme load Challenges with reverse mappings Overhead to set up rmap structures Out of memory while allocating rmap?
20 Page Fault Handling Hardware support Accessing invalid pages causes 'page translation' check Writing to protected pages causes 'protection exception' Translation-exception identification provides address 'Suppression on protection' facility essential! Linux kernel page fault handler Determine address/access validity according to VMA Invalid accesses cause SIGSEGV delivery Valid accesses trigger: page-in, swap-in, copy-on-write Extra support for stack VMA: grows automatically Out-of-memory if overcommitted causes SIGBUS
21 Page Replacement Page replacement strategy Applies to all page cache and anonymous pages Second-chance LRU using active/inactive page lists Scan phys. memory zones, find PTEs via reverse map Page replacement actions Allocate swap slot for anon. pages Unmap from all process page tables Async. write-back dirty pages to backing store Remove clean pages from page cache Shrinking in-kernel slab caches Call-back to release inode, dentry,... cache entries Balance against page cache replacement
22 Page Replacement Life Cycle PTE: valid PTE: valid / swap entry PTE: valid / empty Anonymous Page Swap Cache Page Page Cache Page Subject to page replacement (active/inactive lists) Swap File Backing Store
23 Page Replacement "LRU" Lists referenced Tail Active List Head unreferenced referenced Head Inactive List Start Writeback Tail clean dirty
24 The Mystery Solved What does this mean: $ free total used free shared buffers cached Mem: /+ buffers/cache: Swap: Or this: $ cat /proc/meminfo MemTotal: kb Dirty: 28 kb Fixed MemFree: kb Writeback: 0 kb Buffers: kb Page Cache Mapped: 5492 kb User Cached: kb Slab: kb SwapCached: 532 kb Committed_AS: 7656 kb Active: kb Total LRU PageTables: 208 kb Inactive: kb (PC + Anon) VmallocTotal: kb HighTotal: 0 kb VmallocUsed: 724 kb HighFree: 0 kb VmallocChunk: kb LowTotal: kb LowFree: kb SwapTotal: kb SwapFree: kb
25 Buffers - What's That? Original 'buffer cache' (up to Linux 2.0) Cache block device contents All file access used buffer cache; page cache separate Gradual elimination of buffer cache Linux 2.2: Page cache reads bypass buffer cache Linux 2.4: Buffer cache completely merged into page cache Linux 2.6: 'Buffer heads' removed from block I/O layer Meaning of the 'buffers' field Linux 2.4: Page cache pages with buffer heads attached Linux 2.6: Page cache pages for block devices Approximates size of cached file system metadata
26 Some Tunable Parameters sysctl or /proc interface /proc/sys/vm/overcommit_memory / overcommit_ratio Controls relation of committed AS to total memory + swap /proc/sys/vm/swappiness Influences page-out decision of mapped vs. unmapped pages /proc/sys/vm/page-cluster Controls swap-in read-ahead /proc/sys/vm/dirty_background_ratio / dirty_ratio Percentage of memory allowed to fill with dirty pages /proc/sys/vm/dirty_writeback_centisecs / expire_centisecs Average/maximum time a page is allowed to remain dirty
27 Virtualization Considerations Two-level dynamic address translation Linux DAT: Linux virtual address -> Linux 'real' address VM DAT: Guest 'real' address -> Host real address Two-level page replacement / swapping Linux LRU prefers to touch pages VM swapped out Linux / VM cooperative memory management Exploit VM shared memory features Kernel in Named Saved Systems Block device on Discontiguous Saved Segments
28 Two-level Page Fault Handling Two different scenarios possible Guest page fault Linux page fault handler invoked Initiates page-in operation from backing store Suspends user process until page-in completed Other user processes continue to run Host page fault VM page fault handler invoked Initiates page-in operation from backing store Suspends guest until page-in completed No other user processes can run
29 Two-level Page Fault Handling (cont.) Solution: Pseudo Page Faults VM page fault handler invoked Initiates page-in operation from backing store Triggers guest 'pseudo page fault' Linux pseudo page fault handler suspends user process VM does not suspend the guest On completion of page-in operation VM calls guest pseudo page fault handler again Linux handler wakes up blocked user process Caveats Access to kernel pages Access to user page from kernel code
30 Cooperative Memory Management Problem: Large guest size hurts performance Linux will use all memory; LRU tends to reuse cold pages Recommendation: Make guest size as small as possible But how to determine that size? Cooperative Memory Management New feature released on devworks 01/2004 Allows to reserve a certain number of pages Kernel module allocates pages, so Linux cannot use them anymore Pages are (if possible) reported as free to VM Changes effective available memory size without reboot! IUCV special message interface allows central instance to manage server farm total memory consumption
31 Cooperative Memory Management (cont.) sysctl or /proc user interface /proc/sys/vm/cmm_pages Read to query number of pages permanently reserved Write to set new target (will be achieved over time) /proc/sys/vm/cmm_timed_pages Read to query number of pages temporarily reserved Write increment to add to target /proc/sys/vm/cmm_timeout Holds pair of N pages / X seconds (read/write) Every time X seconds have passed, release N temporary pages IUCV special message interface CMMSHRINK/CMMRELEASE/CMMREUSE Same as cmm_pages/cmm_timed_pages/cmm_timeout write
32 Resources Mel Gorman's Linux VM Documentation Linux on zseries developerworks page developerworks/opensource/linux390/index.html Linux on zseries technical contact address
Where is the memory going? Memory usage in the 2.6 kernel
Where is the memory going? Memory usage in the 2.6 kernel Sep 2006 Andi Kleen, SUSE Labs [email protected] Why save memory Weaker reasons "I ve got 1GB of memory. Why should I care about memory?" Old machines
Virtual Memory Behavior in Red Hat Linux Advanced Server 2.1
Virtual Memory Behavior in Red Hat Linux Advanced Server 2.1 Bob Matthews Red Hat, Inc. Kernel Development Team Norm Murray Red Hat, Inc. Client Engineering Team This is an explanation of the virtual memory
Virtual Memory. How is it possible for each process to have contiguous addresses and so many of them? A System Using Virtual Addressing
How is it possible for each process to have contiguous addresses and so many of them? Computer Systems Organization (Spring ) CSCI-UA, Section Instructor: Joanna Klukowska Teaching Assistants: Paige Connelly
Memory Management under Linux: Issues in Linux VM development
Memory Management under Linux: Issues in Linux VM development Christoph Lameter, Ph.D. Technical Lead, Linux Kernel Software Silicon Graphics Inc. [email protected] 2008-03-12 2008 SGI Sunnyvale, California
KVM & Memory Management Updates
KVM & Memory Management Updates KVM Forum 2012 Rik van Riel Red Hat, Inc. KVM & Memory Management Updates EPT Accessed & Dirty Bits 1GB hugepages Balloon vs. Transparent Huge Pages Automatic NUMA Placement
Determining the Correct Usage of Swap in Linux * 2.6 Kernels
Technical White Paper LINUX OPERATING SYSTEMS www.novell.com Determining the Correct Usage of Swap in Linux * 2.6 Kernels Determining the Correct Usage of Swap in Linux 2.6 Kernels Table of Contents: 2.....
Linux VM Infrastructure for memory power management
Linux VM Infrastructure for memory power management Ankita Garg Vaidyanathan Srinivasan IBM Linux Technology Center Agenda - Saving Power Motivation - Why Save Power Benefits How can it be achieved Role
W4118 Operating Systems. Instructor: Junfeng Yang
W4118 Operating Systems Instructor: Junfeng Yang Outline x86 segmentation and paging hardware Linux address space translation Copy-on-write Linux page replacement algorithm Linux dynamic memory allocation
Lecture 17: Virtual Memory II. Goals of virtual memory
Lecture 17: Virtual Memory II Last Lecture: Introduction to virtual memory Today Review and continue virtual memory discussion Lecture 17 1 Goals of virtual memory Make it appear as if each process has:
Virtual vs Physical Addresses
Virtual vs Physical Addresses Physical addresses refer to hardware addresses of physical memory. Virtual addresses refer to the virtual store viewed by the process. virtual addresses might be the same
Local and Remote Memory: Memory in a Linux/NUMA System
SGI 2006 Remote and Local Memory 1 Local and Remote Memory: Memory in a Linux/NUMA System Jun 20 th, 2006 by Christoph Lameter, Ph.D. [email protected] 2006 Silicon Graphics, Inc. Memory seems to be
OPERATING SYSTEM - VIRTUAL MEMORY
OPERATING SYSTEM - VIRTUAL MEMORY http://www.tutorialspoint.com/operating_system/os_virtual_memory.htm Copyright tutorialspoint.com A computer can address more memory than the amount physically installed
Linux on z/vm Memory Management
Linux on z/vm Memory Management Rob van der Heij rvdheij @ velocitysoftware.com IBM System z Technical Conference Brussels, 2009 Session LX45 Velocity Software, Inc http://www.velocitysoftware.com/ Copyright
CS 377: Operating Systems. Outline. A review of what you ve learned, and how it applies to a real operating system. Lecture 25 - Linux Case Study
CS 377: Operating Systems Lecture 25 - Linux Case Study Guest Lecturer: Tim Wood Outline Linux History Design Principles System Overview Process Scheduling Memory Management File Systems A review of what
Understanding Virtual Memory In Red Hat Enterprise Linux 3
Understanding Virtual Memory In Red Hat Enterprise Linux 3 Norm Murray and Neil Horman Version 1.6 December 13, 2005 Contents 1 Introduction 2 2 Definitions 3 2.1 What Comprises a VM........................
COS 318: Operating Systems. Virtual Memory and Address Translation
COS 318: Operating Systems Virtual Memory and Address Translation Today s Topics Midterm Results Virtual Memory Virtualization Protection Address Translation Base and bound Segmentation Paging Translation
Using Linux as Hypervisor with KVM
Using Linux as Hypervisor with KVM Qumranet Inc. Andrea Arcangeli [email protected] (some slides from Avi Kivity) CERN - Geneve 15 Sep 2008 Agenda Overview/feature list KVM design vs other virtualization
Virtual Machines. COMP 3361: Operating Systems I Winter 2015 http://www.cs.du.edu/3361
s COMP 3361: Operating Systems I Winter 2015 http://www.cs.du.edu/3361 1 Virtualization! Create illusion of multiple machines on the same physical hardware! Single computer hosts multiple virtual machines
CS 61C: Great Ideas in Computer Architecture Virtual Memory Cont.
CS 61C: Great Ideas in Computer Architecture Virtual Memory Cont. Instructors: Vladimir Stojanovic & Nicholas Weaver http://inst.eecs.berkeley.edu/~cs61c/ 1 Bare 5-Stage Pipeline Physical Address PC Inst.
Intel P6 Systemprogrammering 2007 Föreläsning 5 P6/Linux Memory System
Intel P6 Systemprogrammering 07 Föreläsning 5 P6/Linux ory System Topics P6 address translation Linux memory management Linux page fault handling memory mapping Internal Designation for Successor to Pentium
Page replacement in Linux 2.4 memory management
Page replacement in Linux 2.4 memory management Rik van Riel Conectiva Inc. [email protected], http://www.surriel.com/ Abstract While the virtual memory management in Linux 2.2 has decent performance
Why Computers Are Getting Slower (and what we can do about it) Rik van Riel Sr. Software Engineer, Red Hat
Why Computers Are Getting Slower (and what we can do about it) Rik van Riel Sr. Software Engineer, Red Hat Why Computers Are Getting Slower The traditional approach better performance Why computers are
An Implementation Of Multiprocessor Linux
An Implementation Of Multiprocessor Linux This document describes the implementation of a simple SMP Linux kernel extension and how to use this to develop SMP Linux kernels for architectures other than
Virtual Memory. Chapter 4
Chapter 4 Virtual Memory Linux processes execute in a virtual environment that makes it appear as if each process had the entire address space of the CPU available to itself. This virtual address space
Storage and File Systems. Chester Rebeiro IIT Madras
Storage and File Systems Chester Rebeiro IIT Madras 1 Two views of a file system system calls protection rwx attributes Application View Look & Feel File system Hardware view 2 Magnetic Disks Chester Rebeiro
Virtualization. Types of Interfaces
Virtualization Virtualization: extend or replace an existing interface to mimic the behavior of another system. Introduced in 1970s: run legacy software on newer mainframe hardware Handle platform diversity
RCL: Software Prototype
Business Continuity as a Service ICT FP7-609828 RCL: Software Prototype D3.2.1 June 2014 Document Information Scheduled delivery 30.06.2014 Actual delivery 30.06.2014 Version 1.0 Responsible Partner IBM
These sub-systems are all highly dependent on each other. Any one of them with high utilization can easily cause problems in the other.
Abstract: The purpose of this document is to describe how to monitor Linux operating systems for performance. This paper examines how to interpret common Linux performance tool output. After collecting
Performance and scalability of a large OLTP workload
Performance and scalability of a large OLTP workload ii Performance and scalability of a large OLTP workload Contents Performance and scalability of a large OLTP workload with DB2 9 for System z on Linux..............
Understanding Memory Resource Management in VMware vsphere 5.0
Understanding Memory Resource Management in VMware vsphere 5.0 Performance Study TECHNICAL WHITE PAPER Table of Contents Overview... 3 Introduction... 3 ESXi Memory Management Overview... 4 Terminology...
Chapter 11 I/O Management and Disk Scheduling
Operating Systems: Internals and Design Principles, 6/E William Stallings Chapter 11 I/O Management and Disk Scheduling Dave Bremer Otago Polytechnic, NZ 2008, Prentice Hall I/O Devices Roadmap Organization
VM Architecture. Jun-Chiao Wang, 15 Apr. 2002 NCTU CIS Operating System lab. 2002 Linux kernel trace seminar
VM Architecture Jun-Chiao Wang, 15 Apr. 2002 NCTU CIS Operating System lab. 2002 Linux kernel trace seminar Outline Introduction What is VM? Segmentation & Paging in Linux Memory Management Page Frame
Lecture 25 Symbian OS
CS 423 Operating Systems Design Lecture 25 Symbian OS Klara Nahrstedt Fall 2011 Based on slides from Andrew S. Tanenbaum textbook and other web-material (see acknowledgements) cs423 Fall 2011 1 Overview
This Unit: Virtual Memory. CIS 501 Computer Architecture. Readings. A Computer System: Hardware
This Unit: Virtual CIS 501 Computer Architecture Unit 5: Virtual App App App System software Mem CPU I/O The operating system (OS) A super-application Hardware support for an OS Virtual memory Page tables
Linux on System z Performance Tips David Simpson - IT Specialist IBM Corporation [email protected]
Linux on System z Performance Tips David Simpson - IT Specialist IBM Corporation [email protected] Copyright and Trademark Information For IBM can be found at http://www.ibm.com/legal/us/en/copytrade.shtml
Linux kernen. Version 2.4.20, 2.5.59. 11 arch. DIKU Intel, SMP. . NEL, Kernel, 2003.2.5-1 -
Linux kernen Version 2.4.20, 2.5.59 11 arch. DIKU Intel, SMP.. NEL, Kernel, 2003.2.5-1 - Linux processer Processer User mode/kernel mode. Kernel threads Processer/tråde. fork(), clone(), shmem etc. Parent
Xen and XenServer Storage Performance
Xen and XenServer Storage Performance Low Latency Virtualisation Challenges Dr Felipe Franciosi XenServer Engineering Performance Team e-mail: [email protected] freenode: felipef #xen-api twitter:
Operating Systems. Virtual Memory
Operating Systems Virtual Memory Virtual Memory Topics. Memory Hierarchy. Why Virtual Memory. Virtual Memory Issues. Virtual Memory Solutions. Locality of Reference. Virtual Memory with Segmentation. Page
& Data Processing 2. Exercise 3: Memory Management. Dipl.-Ing. Bogdan Marin. Universität Duisburg-Essen
Folie a: Name & Data Processing 2 3: Memory Management Dipl.-Ing. Bogdan Marin Fakultät für Ingenieurwissenschaften Abteilung Elektro-und Informationstechnik -Technische Informatik- Objectives Memory Management
Virtualization in Linux KVM + QEMU
CS695 Topics in Virtualization and Cloud Computing KVM + QEMU Senthil, Puru, Prateek and Shashank 1 Topics covered KVM and QEMU Architecture VTx support CPU virtualization in KMV Memory virtualization
Microkernels, virtualization, exokernels. Tutorial 1 CSC469
Microkernels, virtualization, exokernels Tutorial 1 CSC469 Monolithic kernel vs Microkernel Monolithic OS kernel Application VFS System call User mode What was the main idea? What were the problems? IPC,
The Classical Architecture. Storage 1 / 36
1 / 36 The Problem Application Data? Filesystem Logical Drive Physical Drive 2 / 36 Requirements There are different classes of requirements: Data Independence application is shielded from physical storage
Operating Systems, 6 th ed. Test Bank Chapter 7
True / False Questions: Chapter 7 Memory Management 1. T / F In a multiprogramming system, main memory is divided into multiple sections: one for the operating system (resident monitor, kernel) and one
opensm2 Enterprise Performance Monitoring December 2010 Copyright 2010 Fujitsu Technology Solutions
opensm2 Enterprise Performance Monitoring December 2010 Agenda opensm2 Overview INSPECTOR ANALYZER 1 opensm2 Provides a consistent solution for the enterprise-wide performance management Supports the server
How To Make A Minecraft Iommus Work On A Linux Kernel (Virtual) With A Virtual Machine (Virtual Machine) And A Powerpoint (Virtual Powerpoint) (Virtual Memory) (Iommu) (Vm) (
Operating System and Hypervisor Support for IOMMUs Muli Ben-Yehuda IBM Haifa Research Lab [email protected] p. 1/3 Table of Contents The what and why of IOMMUs. How much does it cost? What can we do about
How To Write A Page Table
12 Paging: Introduction Remember our goal: to virtualize memory. Segmentation (a generalization of dynamic relocation) helped us do this, but has some problems; in particular, managing free space becomes
Storage in Database Systems. CMPSCI 445 Fall 2010
Storage in Database Systems CMPSCI 445 Fall 2010 1 Storage Topics Architecture and Overview Disks Buffer management Files of records 2 DBMS Architecture Query Parser Query Rewriter Query Optimizer Query
Chapter 1 Computer System Overview
Operating Systems: Internals and Design Principles Chapter 1 Computer System Overview Eighth Edition By William Stallings Operating System Exploits the hardware resources of one or more processors Provides
Intel s Virtualization Extensions (VT-x) So you want to build a hypervisor?
Intel s Virtualization Extensions (VT-x) So you want to build a hypervisor? Mr. Jacob Torrey February 26, 2014 Dartmouth College 153 Brooks Road, Rome, NY 315.336.3306 http://ainfosec.com @JacobTorrey
Carnegie Mellon Virtual Memory of a Linux Process Process-specific data structs (ptables, Different for
Outline CS 6V81-05: System Security and Malicious Code Analysis Understanding the Implementation of Virtual Memory 1 Zhiqiang Lin Department of Computer Science University of Texas at Dallas February 29
Optimizing Network Virtualization in Xen
Optimizing Network Virtualization in Xen Aravind Menon EPFL, Lausanne [email protected] Alan L. Cox Rice University, Houston [email protected] Willy Zwaenepoel EPFL, Lausanne [email protected]
SYSTEM ecos Embedded Configurable Operating System
BELONGS TO THE CYGNUS SOLUTIONS founded about 1989 initiative connected with an idea of free software ( commercial support for the free software ). Recently merged with RedHat. CYGNUS was also the original
Understanding Memory Resource Management in VMware ESX 4.1
Performance Study Understanding Memory Resource Management in VMware ESX 4.1 VMware ESX 4.1 VMware ESX is a hypervisor designed to efficiently manage hardware resources including CPU, memory, storage,
Memory Management Outline. Background Swapping Contiguous Memory Allocation Paging Segmentation Segmented Paging
Memory Management Outline Background Swapping Contiguous Memory Allocation Paging Segmentation Segmented Paging 1 Background Memory is a large array of bytes memory and registers are only storage CPU can
Bridging the Gap between Software and Hardware Techniques for I/O Virtualization
Bridging the Gap between Software and Hardware Techniques for I/O Virtualization Jose Renato Santos Yoshio Turner G.(John) Janakiraman Ian Pratt Hewlett Packard Laboratories, Palo Alto, CA University of
CS5460: Operating Systems
CS5460: Operating Systems Lecture 13: Memory Management (Chapter 8) Where are we? Basic OS structure, HW/SW interface, interrupts, scheduling Concurrency Memory management Storage management Other topics
W4118: segmentation and paging. Instructor: Junfeng Yang
W4118: segmentation and paging Instructor: Junfeng Yang Outline Memory management goals Segmentation Paging TLB 1 Uni- v.s. multi-programming Simple uniprogramming with a single segment per process Uniprogramming
MODULE 3 VIRTUALIZED DATA CENTER COMPUTE
MODULE 3 VIRTUALIZED DATA CENTER COMPUTE Module 3: Virtualized Data Center Compute Upon completion of this module, you should be able to: Describe compute virtualization Discuss the compute virtualization
Virtuoso and Database Scalability
Virtuoso and Database Scalability By Orri Erling Table of Contents Abstract Metrics Results Transaction Throughput Initializing 40 warehouses Serial Read Test Conditions Analysis Working Set Effect of
System Virtual Machines
System Virtual Machines Introduction Key concepts Resource virtualization processors memory I/O devices Performance issues Applications 1 Introduction System virtual machine capable of supporting multiple
Comparison of Memory Management Systems of BSD, Windows, and Linux
Comparison of Memory Management Systems of BSD, Windows, and Linux Gaurang Khetan Graduate Student, Department of Computer Science, University of Southern California, Los Angeles, CA. [email protected] December
Assessing the Performance of Virtualization Technologies for NFV: a Preliminary Benchmarking
Assessing the Performance of Virtualization Technologies for NFV: a Preliminary Benchmarking Roberto Bonafiglia, Ivano Cerrato, Francesco Ciaccia, Mario Nemirovsky, Fulvio Risso Politecnico di Torino,
OPERATING SYSTEMS MEMORY MANAGEMENT
OPERATING SYSTEMS MEMORY MANAGEMENT Jerry Breecher 8: Memory Management 1 OPERATING SYSTEM Memory Management What Is In This Chapter? Just as processes share the CPU, they also share physical memory. This
kvm: Kernel-based Virtual Machine for Linux
kvm: Kernel-based Virtual Machine for Linux 1 Company Overview Founded 2005 A Delaware corporation Locations US Office Santa Clara, CA R&D - Netanya/Poleg Funding Expertise in enterprise infrastructure
Using process address space on the GPU
Using process address space on the GPU Jérôme Glisse September 2013 Jérôme Glisse - Using process address space on the GPU 1/18 Outline Motivation Memory management Hardware solution Software solution
Virtualization. Explain how today s virtualization movement is actually a reinvention
Virtualization Learning Objectives Explain how today s virtualization movement is actually a reinvention of the past. Explain how virtualization works. Discuss the technical challenges to virtualization.
Operating System Overview. Otto J. Anshus
Operating System Overview Otto J. Anshus A Typical Computer CPU... CPU Memory Chipset I/O bus ROM Keyboard Network A Typical Computer System CPU. CPU Memory Application(s) Operating System ROM OS Apps
COS 318: Operating Systems. I/O Device and Drivers. Input and Output. Definitions and General Method. Revisit Hardware
COS 318: Operating Systems I/O and Drivers Input and Output A computer s job is to process data Computation (, cache, and memory) Move data into and out of a system (between I/O devices and memory) Challenges
Hybrid Virtualization The Next Generation of XenLinux
Hybrid Virtualization The Next Generation of XenLinux Jun Nakajima Principal Engineer Intel Open Source Technology Center Legal Disclaimer INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL
Optimizing Network Virtualization in Xen
Optimizing Network Virtualization in Xen Aravind Menon EPFL, Switzerland Alan L. Cox Rice university, Houston Willy Zwaenepoel EPFL, Switzerland Abstract In this paper, we propose and evaluate three techniques
Page 1 of 5. IS 335: Information Technology in Business Lecture Outline Operating Systems
Lecture Outline Operating Systems Objectives Describe the functions and layers of an operating system List the resources allocated by the operating system and describe the allocation process Explain how
The Linux Virtual Filesystem
Lecture Overview Linux filesystem Linux virtual filesystem (VFS) overview Common file model Superblock, inode, file, dentry Object-oriented Ext2 filesystem Disk data structures Superblock, block group,
Uses for Virtual Machines. Virtual Machines. There are several uses for virtual machines:
Virtual Machines Uses for Virtual Machines Virtual machine technology, often just called virtualization, makes one computer behave as several computers by sharing the resources of a single computer between
FRONT FLYLEAF PAGE. This page has been intentionally left blank
FRONT FLYLEAF PAGE This page has been intentionally left blank Abstract The research performed under this publication will combine virtualization technology with current kernel debugging techniques to
Memory Resource Management in VMware ESX Server
Memory Resource Management in VMware ESX Server Carl Waldspurger OSDI 02 Presentation December 10, 2002 Overview Context Memory virtualization Reclamation Sharing Allocation policies Conclusions 2 2 Motivation
COS 318: Operating Systems
COS 318: Operating Systems File Performance and Reliability Andy Bavier Computer Science Department Princeton University http://www.cs.princeton.edu/courses/archive/fall10/cos318/ Topics File buffer cache
Full and Para Virtualization
Full and Para Virtualization Dr. Sanjay P. Ahuja, Ph.D. 2010-14 FIS Distinguished Professor of Computer Science School of Computing, UNF x86 Hardware Virtualization The x86 architecture offers four levels
Storing Data: Disks and Files. Disks and Files. Why Not Store Everything in Main Memory? Chapter 7
Storing : Disks and Files Chapter 7 Yea, from the table of my memory I ll wipe away all trivial fond records. -- Shakespeare, Hamlet base Management Systems 3ed, R. Ramakrishnan and J. Gehrke 1 Disks and
Kernel Optimizations for KVM. Rik van Riel Senior Software Engineer, Red Hat June 25 2010
Kernel Optimizations for KVM Rik van Riel Senior Software Engineer, Red Hat June 25 2010 Kernel Optimizations for KVM What is virtualization performance? Benefits of developing both guest and host KVM
IOMMU: A Detailed view
12/1/14 Security Level: Security Level: IOMMU: A Detailed view Anurup M. Sanil Kumar D. Nov, 2014 HUAWEI TECHNOLOGIES CO., LTD. Contents n IOMMU Introduction n IOMMU for ARM n Use cases n Software Architecture
Chapter 16: Virtual Machines. Operating System Concepts 9 th Edition
Chapter 16: Virtual Machines Silberschatz, Galvin and Gagne 2013 Chapter 16: Virtual Machines Overview History Benefits and Features Building Blocks Types of Virtual Machines and Their Implementations
The Microsoft Windows Hypervisor High Level Architecture
The Microsoft Windows Hypervisor High Level Architecture September 21, 2007 Abstract The Microsoft Windows hypervisor brings new virtualization capabilities to the Windows Server operating system. Its
Architecture of the Kernel-based Virtual Machine (KVM)
Corporate Technology Architecture of the Kernel-based Virtual Machine (KVM) Jan Kiszka, Siemens AG, CT T DE IT 1 Corporate Competence Center Embedded Linux [email protected] Copyright Siemens AG 2010.
Supplementing Windows 95 and Windows 98 Performance Data for Remote Measurement and Capacity Planning
Supplementing 95 and 98 Performance Data for Remote Measurement and Capacity Planning BonAmi Software Corporation Abstract Microsoft NT provides a full featured Performance Monitor program that is widely
Secondary Storage. Any modern computer system will incorporate (at least) two levels of storage: magnetic disk/optical devices/tape systems
1 Any modern computer system will incorporate (at least) two levels of storage: primary storage: typical capacity cost per MB $3. typical access time burst transfer rate?? secondary storage: typical capacity
Chapter 6, The Operating System Machine Level
Chapter 6, The Operating System Machine Level 6.1 Virtual Memory 6.2 Virtual I/O Instructions 6.3 Virtual Instructions For Parallel Processing 6.4 Example Operating Systems 6.5 Summary Virtual Memory General
Machine check handling on Linux
Machine check handling on Linux Andi Kleen SUSE Labs [email protected] Aug 2004 Abstract The number of transistors in common CPUs and memory chips is growing each year. Hardware busses are getting faster. This
COS 318: Operating Systems. Virtual Machine Monitors
COS 318: Operating Systems Virtual Machine Monitors Kai Li and Andy Bavier Computer Science Department Princeton University http://www.cs.princeton.edu/courses/archive/fall13/cos318/ Introduction u Have
Container-based operating system virtualization: a scalable, high-performance alternative to hypervisors
Container-based operating system virtualization: a scalable, high-performance alternative to hypervisors Soltesz, et al (Princeton/Linux-VServer), Eurosys07 Context: Operating System Structure/Organization
Chapter 10: Virtual Memory. Lesson 03: Page tables and address translation process using page tables
Chapter 10: Virtual Memory Lesson 03: Page tables and address translation process using page tables Objective Understand page tables Learn the offset fields in the virtual and physical addresses Understand
Database Hardware Selection Guidelines
Database Hardware Selection Guidelines BRUCE MOMJIAN Database servers have hardware requirements different from other infrastructure software, specifically unique demands on I/O and memory. This presentation
1. Computer System Structure and Components
1 Computer System Structure and Components Computer System Layers Various Computer Programs OS System Calls (eg, fork, execv, write, etc) KERNEL/Behavior or CPU Device Drivers Device Controllers Devices
Chapter 5 Cloud Resource Virtualization
Chapter 5 Cloud Resource Virtualization Contents Virtualization. Layering and virtualization. Virtual machine monitor. Virtual machine. Performance and security isolation. Architectural support for virtualization.
Virtual machines and operating systems
V i r t u a l m a c h i n e s a n d o p e r a t i n g s y s t e m s Virtual machines and operating systems Krzysztof Lichota [email protected] A g e n d a Virtual machines and operating systems interactions
Revisiting Software Zero-Copy for Web-caching Applications with Twin Memory Allocation
Revisiting Software Zero-Copy for Web-caching Applications with Twin Memory Allocation Xiang Song, Jicheng Shi, Haibo Chen, Binyu Zang Institute of Parallel and Distributed Systems, Shanghai Jiao Tong
