CSE 451: Operating Systems Spring Module 12 Secondary Storage. Steve Gribble

Similar documents
CSE 451: Operating Systems Spring Module 12 Secondary Storage

CSE 451: Operating Systems Winter Secondary Storage. Steve Gribble. Secondary storage

CSE 451: Operating Systems Winter Lecture 12 Secondary Storage. Steve Gribble 323B Sieg Hall.

Ref: Chap 12. Secondary Storage and I/O Systems. Applied Operating System Concepts 12.1

Secondary storage. CS 537 Lecture 11 Secondary Storage. Disk trends. Another trip down memory lane

STORAGE SYSTEMS. Operating Systems 2015 Spring by Euiseong Seo

I/O & Storage. Jin-Soo Kim ( Computer Systems Laboratory Sungkyunkwan University

Operating Systems. Operating Systems Professor Sina Meraji U of T

CSE 153 Design of Operating Systems

CSE 153 Design of Operating Systems Fall 2018

Hard Disk Drives (HDDs) Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University

Hard Disk Drives (HDDs)

Mass-Storage. ICS332 - Fall 2017 Operating Systems. Henri Casanova

Introduction Disks RAID Tertiary storage. Mass Storage. CMSC 420, York College. November 21, 2006

Ricardo Rocha. Department of Computer Science Faculty of Sciences University of Porto

Disks and RAID. CS 4410 Operating Systems. [R. Agarwal, L. Alvisi, A. Bracy, E. Sirer, R. Van Renesse]

Mass-Storage. ICS332 Operating Systems

Mass-Storage Structure

I/O, Disks, and RAID Yi Shi Fall Xi an Jiaotong University

Storage. CS 3410 Computer System Organization & Programming

Chapter 10: Mass-Storage Systems

Ricardo Rocha. Department of Computer Science Faculty of Sciences University of Porto

Disks: Structure and Scheduling

OPERATING SYSTEMS CS3502 Spring Input/Output System Chapter 9

COS 318: Operating Systems. Storage Devices. Vivek Pai Computer Science Department Princeton University

EECS 482 Introduction to Operating Systems

Introduction to I/O and Disk Management

u Covered: l Management of CPU & concurrency l Management of main memory & virtual memory u Currently --- Management of I/O devices

Introduction to I/O and Disk Management

Disk Scheduling COMPSCI 386

CSCI-GA Database Systems Lecture 8: Physical Schema: Storage

COS 318: Operating Systems. Storage Devices. Jaswinder Pal Singh Computer Science Department Princeton University

CSE 120 Principles of Operating Systems

Today: Secondary Storage! Typical Disk Parameters!

COS 318: Operating Systems. Storage Devices. Kai Li Computer Science Department Princeton University

OPERATING SYSTEMS CS3502 Spring Input/Output System Chapter 9

Chapter 12: Mass-Storage

FFS: The Fast File System -and- The Magical World of SSDs

CSE 120. Operating Systems. March 27, 2014 Lecture 17. Mass Storage. Instructor: Neil Rhodes. Wednesday, March 26, 14

STORING DATA: DISK AND FILES

Mass-Storage Systems

Tape pictures. CSE 30341: Operating Systems Principles

CS420: Operating Systems. Mass Storage Structure

CHAPTER 12: MASS-STORAGE SYSTEMS (A) By I-Chen Lin Textbook: Operating System Concepts 9th Ed.

EECS 482 Introduction to Operating Systems

Disc Allocation and Disc Arm Scheduling?

Hard Disk Drives. Nima Honarmand (Based on slides by Prof. Andrea Arpaci-Dusseau)

Virtual Memory. Reading. Sections 5.4, 5.5, 5.6, 5.8, 5.10 (2) Lecture notes from MKP and S. Yalamanchili

Computer Science 61C Spring Friedland and Weaver. Input/Output

Lecture 16: Storage Devices

L7: Performance. Frans Kaashoek Spring 2013

CSE 333 Lecture 9 - storage

I/O 1. Devices and I/O. key concepts device registers, device drivers, program-controlled I/O, DMA, polling, disk drives, disk head scheduling

Mass-Storage Structure

Chapter 13: Mass-Storage Systems. Disk Scheduling. Disk Scheduling (Cont.) Disk Structure FCFS. Moving-Head Disk Mechanism

Chapter 13: Mass-Storage Systems. Disk Structure

Disks October 22 nd, 2010

I/O CANNOT BE IGNORED

Chapter 14: Mass-Storage Systems

UNIVERSITY OF MASSACHUSETTS Dept. of Electrical & Computer Engineering. Computer Architecture ECE 568

CS3600 SYSTEMS AND NETWORKS

CISC 7310X. C11: Mass Storage. Hui Chen Department of Computer & Information Science CUNY Brooklyn College. 4/19/2018 CUNY Brooklyn College

COMP283-Lecture 3 Applied Database Management

Storing Data: Disks and Files

CSE 120 Principles of Operating Systems

Where Have We Been? Ch. 6 Memory Technology

UNIVERSITY OF MASSACHUSETTS Dept. of Electrical & Computer Engineering. Computer Architecture ECE 568

CSE325 Principles of Operating Systems. Mass-Storage Systems. David P. Duggan. April 19, 2011

File System Management

CPS104 Computer Organization and Programming Lecture 18: Input-Output. Outline of Today s Lecture. The Big Picture: Where are We Now?

Overview of Mass Storage Structure

Chapter 12: Secondary-Storage Structure. Operating System Concepts 8 th Edition,

Chapter 12: Mass-Storage Systems. Operating System Concepts 8 th Edition,

CS370 Operating Systems

Chapter 12: Mass-Storage Systems. Operating System Concepts 8 th Edition,

CSCI-UA.0201 Computer Systems Organization Memory Hierarchy

Solving the I/O bottleneck with Flash

CSC369 Lecture 9. Larry Zhang, November 16, 2015

Module 13: Secondary-Storage

Chapter 10: Mass-Storage Systems. Operating System Concepts 9 th Edition

Silberschatz, et al. Topics based on Chapter 13

Lecture S3: File system data layout, naming

Chapter 14: Mass-Storage Systems. Disk Structure

V. Mass Storage Systems

Overview of Mass Storage Structure

High-Performance Storage Systems

Database Systems II. Secondary Storage

Main Points. File systems. Storage hardware characteristics. File system usage patterns. Useful abstractions on top of physical devices

File. File System Implementation. Operations. Permissions and Data Layout. Storing and Accessing File Data. Opening a File

CSE506: Operating Systems CSE 506: Operating Systems

Chapter 10: Mass-Storage Systems

Chapter 11. I/O Management and Disk Scheduling

CS429: Computer Organization and Architecture

Block Device Scheduling. Don Porter CSE 506

Block Device Scheduling

Professor: Pete Keleher! Closures, candidate keys, canonical covers etc! Armstrong axioms!

Disks and Files. Storage Structures Introduction Chapter 8 (3 rd edition) Why Not Store Everything in Main Memory?

CS429: Computer Organization and Architecture

CS 201 The Memory Hierarchy. Gerson Robboy Portland State University

Monday, May 4, Discs RAID: Introduction Error detection and correction Error detection: Simple parity Error correction: Hamming Codes

Transcription:

CSE 451: Operating Systems Spring 2009 Module 12 Secondary Storage Steve Gribble

Secondary storage Secondary storage typically: is anything that is outside of primary memory does not permit direct execution of instructions or data retrieval via machine load/store instructions Characteristics: it s large: 50-1000GB (or more!) it s cheap: $0.10/GB for hard drives, $10/GB for SSD it s persistent: data survives power loss it s slow: milliseconds to access for hard drives, microseconds for SSD why is this considered slow? it does fail, if rarely Big failures (drive dies) Little failures (read/write errors, one byte in 10^13) 5/6/09 2

Another trip down memory lane IBM 2314 About the size of 6 refrigerators 8 x 29MB (M!) Required similar sized air conditioning 5/6/09 3

Disk capacity, 1975-1989 doubled every 3+ years 25% improvement each year factor of 10 every decade Still exponential, but far less rapid than processor performance Disk capacity 1990-2003 (Hard) Disk trends doubling every 12 months 100% improvement each year factor of 1000 every decade Capacity growth 10x as fast as processor performance! Disk capacity 2003-2009 Slowed somewhat, doubling every 1.5 years 5/6/09 4

(Hard) Disk trends Only a decade ago, we purchased disks by the megabyte (and it hurt!) Today, 1 GB (a billion bytes) costs $1 $0.50 $0.1- from Dell (except you have to buy in increments of 40 80 250 500 GB or 1TB) => 1 TB costs $1K $500 $250 $100, 1 PB costs $1M $500K $250K, $100K Technology is amazing Flying 747 six inches above the ground at 600mph Reading/writing a strip of postage stamps But Jet bumps down Bits are so close that cosmic rays/quantum effects change them 5/6/09 5

Memory hierarchy 100 bytes 256KB 32KB CPU registers L1 cache L2 cache ~.1 ns 1 ns 4 ns 1GB Primary Memory 60 ns 1TB Secondary Storage 10 us 10ms 1PB Tertiary Storage 1s-1hr Each level acts as a cache of lower levels 5/6/09 6

Memory hierarchy: distance analogy 12 seconds 1 minutes 1 second CPU registers L1 cache L2 cache My head My desk This room 15 minutes Primary Memory This building 4.75 years Secondary Storage This city Tertiary Storage 500 years This planet 5/6/09 7

Big Picture OS provides abstractions to allow physical HW resources to be shared / protected CPU sharing with threads (virtual CPU) Memory sharing with virtual memory Disk sharing with files 5/6/09 8

Disks and the OS Disks are messy, messy devices errors, bad blocks, etc. Job of OS is to hide this mess from higher-level software low-level device drivers (initiate a disk read, etc.) higher-level abstractions (files, databases, etc.) OS may provide different levels of disk access to different clients physical disk block (head, cylinder, sector) disk logical block (disk block #) file logical (filename, block or record or byte #) 5/6/09 9

Physical hard disk structure Disk components platters surfaces tracks sectors cylinders arm heads cylinder track sector surface platter arm head 5/6/09 10

Disk performance Performance depends on a number of steps seek: moving the disk arm to the correct cylinder depends on how fast disk arm can move seek times aren t diminishing very quickly (why?) rotation (latency): waiting for the sector to rotate under head depends on rotation rate of disk rates are increasing, but slowly (why?) transfer: transferring data from surface into disk controller, and from there sending it back to host depends on density of bytes on disk increasing, relatively quickly When the OS uses the disk, it tries to minimize the cost of all of these steps particularly seeks and rotation 5/6/09 11

Performance via disk layout OS may increase file block size in order to reduce seeking OS may seek to co-locate related items in order to reduce seeking blocks of the same file data and metadata for a file 5/6/09 12

Performance via caching, pre-fetching Keep data or metadata in memory to reduce physical disk access problem? If file access is sequential, fetch blocks into memory before requested 5/6/09 13

Performance via disk scheduling Seeks are very expensive, so the OS attempts to schedule disk requests that are queued waiting for the disk FCFS (do nothing) reasonable when load is low long waiting time for long request queues SSTF (shortest seek time first) minimize arm movement (seek time), maximize request rate unfairly favors middle blocks SCAN (elevator algorithm) service requests in one direction until done, then reverse skews wait times non-uniformly (why?) C-SCAN like scan, but only go in one direction (typewriter) uniform wait times 5/6/09 14

In the old days Interacting with disks OS would have to specify cylinder #, sector #, surface #, transfer size i.e., OS needs to know all of the disk parameters Modern disks are even more complicated not all sectors are the same size, sectors are remapped, disk provides a higher-level interface, e.g., SCSI exports data as a logical array of blocks [0 N] maps logical blocks to cylinder/surface/sector OS only needs to name logical block #, disk maps this to cylinder/surface/sector on-board cache as a result, physical parameters are hidden from OS both good and bad 5/6/09 15

Seagate Barracuda 3.5 disk drive 1Terabyte of storage (1000 GB) $100 4 platters, 8 disk heads 63 sectors (512 bytes) per track 16,383 cylinders (tracks) 164 Gbits / inch-squared (!) 7200 RPM 300 MB/second transfer 9 ms avg. seek, 4.5 ms avg. rotational latency 1 ms track-to-track seek 32 MB cache 5/6/09 16

Solid state drives: imminent disruption Hard drives are based on spinning magnetic platters mechanics of drives drive performance characteristics sector addressable, not byte addressable capacity, sequential bandwidth improving exponentially random access latency improving very slowly cost dictated by massive economies of scale, and many decades of commercial development and optimization Solid state drives are based on NAND flash memory no moving parts; performance characteristics driven by electronics and physics more like RAM than spinning disk relative technological newcomer, so costs are still quite high in comparison to hard drives, but dropping fast 5/6/09 17

Reads SSD performance: reads unit of read is a page, typically 4KB large today s SSD can typically handle 10,000 100,000 reads/s 0.01 0.1 ms read latency (50-1000x better than disk seeks) 40-400 MB/s read throughput (1-3x better than disk seq. thpt) 5/6/09 18

Writes SSD performance: writes flash media must be erased before it can be written to unit of erase is a block, typically 64-256 pages long usually takes 1-2ms to erase a block blocks can only be erased a certain number of times before they become unusable typically 100,000 1,000,000 times unit of write is a page writing a page can be 2-10x slower than reading a page Writing to an SSD is complicated random write to existing block: read block, erase block, write back modified block leads to hard-drive like performance (300 random writes / s) sequential writes to erased blocks: fast! SSD-read like performance (100-200 MB/s) 5/6/09 19

SSDs: dealing with erases, writes Lots of higher-level strategies to hiding the warts of an SSD many of these work by virtualizing pages and blocks on the drive (i.e., exposing logical pages, not physical pages, to the rest of the computer) wear-leveling: when writing, try to spread erases out evenly across physical blocks of of the SSD. Intel promises 100GB/day x 5 years for its SSD drives log-structured filesystems: convert random writes within a filesystem to log appends on the SSD (more later) build drives out of arrays of SSDs, add lots of cache 5/6/09 20

Capacity SSD cost today, flash SSD costs $5-10 / GB 64GB drive costs around $300-600 Data on cost trends is a little sketchy and preliminary SSD vendors claim 2x drop in price per year Energy In 2014, $100 buys you a 200GB SSD or a 7TB hard drive SSD is typically more energy efficient than a hard drive 1-2 watts to power a SSDs ~10 watts to power a high performance hard drive (can also buy a 1 watt low performance drive) 5/6/09 21

Intel X-25-E SSD 64GB for $800 (~$10/GB) Sustained sequential performance Reads: 250 MB/s Writes: 170 MB/s Sustained, random 4096byte operations Reads: 35K operations per second Writes: 3.3K operations per second Latency Read: 75 microseconds Write: 85 microseconds ( write cache!) Lifetime 2 petabytes of random writes 5/6/09 22