Introduction to I/O and Disk Management

Similar documents
Introduction to I/O and Disk Management

CS420: Operating Systems. Mass Storage Structure

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

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

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

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

Chapter 10: Mass-Storage Systems

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

CS3600 SYSTEMS AND NETWORKS

Mass-Storage Structure

Chapter 10: Mass-Storage Systems

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

Today: Secondary Storage! Typical Disk Parameters!

Disks. Storage Technology. Vera Goebel Thomas Plagemann. Department of Informatics University of Oslo

V. Mass Storage Systems

Storage. CS 3410 Computer System Organization & Programming

BBM371- Data Management. Lecture 2: Storage Devices

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

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

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

CSE 153 Design of Operating Systems

Lecture 29. Friday, March 23 CS 470 Operating Systems - Lecture 29 1

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

Che-Wei Chang Department of Computer Science and Information Engineering, Chang Gung University

Chapter 12: Mass-Storage

I/O CANNOT BE IGNORED

CSE 451: Operating Systems Spring Module 12 Secondary Storage

CSE 153 Design of Operating Systems Fall 2018

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

Chapter 10: Mass-Storage Systems

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

Chapter 13: Mass-Storage Systems. Disk Structure

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

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

Tape pictures. CSE 30341: Operating Systems Principles

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

Mass-Storage. ICS332 Operating Systems

Mass-Storage Systems. Mass-Storage Systems. Disk Attachment. Disk Attachment

CS 537 Fall 2017 Review Session

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

I/O CANNOT BE IGNORED

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

Storage and File Structure. Classification of Physical Storage Media. Physical Storage Media. Physical Storage Media

Module 13: Secondary-Storage Structure

Chapter 6. Storage and Other I/O Topics

Part IV I/O System. Chapter 12: Mass Storage Structure

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

COMP283-Lecture 3 Applied Database Management

Operating Systems. Operating Systems Professor Sina Meraji U of T

Magnetic Disks. Tore Brox-Larsen Including material developed by Pål Halvorsen, University of Oslo (primarily) Kai Li, Princeton University

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

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

Ch 11: Storage and File Structure

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

Hard Disk Drives (HDDs)

Storage Systems. Storage Systems

Lecture 16: Storage Devices

Deadlock Revisited. CS439: Principles of Computer Systems April 23, 2018

Chapter 14: Mass-Storage Systems. Disk Structure

Mass-Storage Structure

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

Disk Scheduling COMPSCI 386

Chapter 14: Mass-Storage Systems

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

Chapter 12: Mass-Storage

Chapter 12: Mass-Storage

Storing and Retrieving Data. Storing Data: Disks and Files. Solution 1: Techniques for making disks faster. Disks. Why Not Store Everything in Tapes?

CMSC 424 Database design Lecture 12 Storage. Mihai Pop

Principles of Data Management. Lecture #2 (Storing Data: Disks and Files)

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

Storing Data: Disks and Files. Storing and Retrieving Data. Why Not Store Everything in Main Memory? Database Management Systems need to:

STORAGE SYSTEMS. Operating Systems 2015 Spring by Euiseong Seo

Part IV I/O System Chapter 1 2: 12: Mass S torage Storage Structur Structur Fall 2010

Input/Output. Today. Next. Principles of I/O hardware & software I/O software layers Disks. Protection & Security

Session: Hardware Topic: Disks. Daniel Chang. COP 3502 Introduction to Computer Science. Lecture. Copyright August 2004, Daniel Chang

Disk Scheduling. Based on the slides supporting the text

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

High-Performance Storage Systems

Storing and Retrieving Data. Storing Data: Disks and Files. Solution 1: Techniques for making disks faster. Disks. Why Not Store Everything in Tapes?

Database Systems II. Secondary Storage

Storing Data: Disks and Files. Storing and Retrieving Data. Why Not Store Everything in Main Memory? Chapter 7

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

EI 338: Computer Systems Engineering (Operating Systems & Computer Architecture)

Data Storage and Query Answering. Data Storage and Disk Structure (2)

Module 13: Secondary-Storage

Overview of Mass Storage Structure

EECS 482 Introduction to Operating Systems

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

CS370 Operating Systems

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

Storage: HDD, SSD and RAID

Storing Data: Disks and Files

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

Storage System COSC UCB

Computer Organization and Structure. Bing-Yu Chen National Taiwan University

UNIT 2 Data Center Environment

Free Space Management

CS143: Disks and Files

CS370 Operating Systems

Database Systems. November 2, 2011 Lecture #7. topobo (mit)

Transcription:

Introduction to I/O and Disk Management 1

Secondary Storage Management Disks just like memory, only different Why have disks? Ø Memory is small. Disks are large. Short term storage for memory contents (e.g., swap space). Reduce what must be kept in memory (e.g., code pages). Ø Memory is volatile. Disks are forever (?!) File storage. GB/dollar dollar/gb RAM 0.013(0.015,0.01) $77($68,$95) Disks 3.3(1.4,1.1) 30 (71,90 ) Capacity : 2GB vs. 1TB 2GB vs. 400GB 1GB vs 320GB 2

How to approach persistent storage Disks first, then file systems. Ø Bottom up. Ø Focus on device characteristics which dominate performance or reliability (they become focus of SW). Disk capacity (along with processor performance) are the crown jewels of computer engineering. File systems have won, but at what cost victory? Ø Ipod, iphone, TivO, PDAs, laptops, desktops all have file systems. Ø Google is made possible by a file system. Ø File systems rock because they are: Persistent. Heirarchical (non-cyclical (mostly)). Rich in metadata (remember cassette tapes?) Indeible (hmmm, a weak point?) The price is compleity of implementation. 3

Different types of disks Advanced Technology Attachment (ATA) Ø Standard interface for connecting storage devices (e.g., hard drives and CD-ROM drives) Ø Referred to as IDE (Integrated Drive Electronics), ATAPI, and UDMA. Ø ATA standards only allow cable lengths in the range of 18 to 36 inches. CHEAP. Small Computer System Interface (SCSI) Ø Requires controller on computer and on disk. Ø Controller commands are sophisticated, allow reordering. USB or Firewire connections to ATA disc Ø These are new bus technologies, not new control. Microdrive impressively small motors 4

Different types of disks Bandwidth ratings. Ø These are unachievable. Ø 50 MB/s is ma off platters. Ø Peak rate refers to transfer from disc device s memory cache. SATA II (serial ATA) Ø 3 Gb/s (still only 50 MB/s off platter, so why do we care?) Ø Cables are smaller and can be longer than pata. SCSI 320 MB/s Ø Enables multiple drives on same bus Mode UDMA0 UDMA1 UDMA2 UDMA3 UDMA4 UDMA5 UDMA6 Speed 16.7 MB/s 25.0 MB/s 33.3 MB/s 44.4 MB/s 66.7 MB/s 100.0 MB/s 133 MB/s 5

Flash: An upcoming technology Flash memory gaining popularity Ø One laptop per child has 1GB flash (no disk) Ø Vista supports Flash as accelerator Ø Future is hybrid flash/disk or just flash? Ø Erased a block at a time (100,000 write-erase-cycles) Ø Pages are 512 bytes or 2,048 bytes Ø Read 18MB/s, write 15MB/s Ø Lower power than (spinning) disk GB/dollar dollar/gb RAM 0.013(0.015,0.01) $77($68,$95) Disks 3.3 (1.4,1.1) 30 (71,90 ) Flash 0.1 $10 6

Anatomy of a Disk Basic components Track Block/Sector s 1 0 1 2 Head... Cylinder Surface Platter Spindle 7

Disk structure: the big picture Physical structure of disks 8

Anatomy of a Disk Seagate 73.4 GB Fibre Channel Ultra 160 SCSI disk Specs: Ø 12 Platters Ø 24 Heads Ø Variable # of sectors/track Ø 10,000 RPM Average latency: 2.99 ms Ø Seek times Track-to-track: 0.6/0.9 ms Average: 5.6/6.2 ms Ø 12 Arms Ø 14,100 Tracks Ø 512 bytes/sector Includes acceleration and settle time. Ø 160-200 MB/s peak transfer rate 1-8K cache 9

Anatomy of a Disk Eample: Seagate Cheetah ST373405LC (March 2002) Specs: Ø Capacity: 73GB Ø 8 surfaces per pack Ø # cylinders: 29,549 Ø Total number of tracks per system: 236,394 Ø Variable # of sectors/track (776 sectors/track (avg)) Ø 10,000 RPM average latency: 2.9 ms. Ø Seek times track-to-track: 0.4 ms Average/ma: 5.1 ms/9.4ms Ø 50-85 MB/s peak transfer rate 4MB cache Ø MTBF: 1,200,000 hours 10

Disk Operations Read/Write operations Present disk with a sector address Ø Old: DA = (drive, surface, track, sector) Ø New: Logical block address (LBA) Heads moved to appropriate track Ø seek time Ø settle time The appropriate head is enabled Wait for the sector to appear under the head Ø rotational latency Read/write the sector Ø transfer time Read time: seek time + latency + transfer time (5.6 ms + 2.99 ms + 0.014 ms) 11

Disk access latency Which component of disk access time is the longest? Ø A. Rotational latency Ø B. Transfer latency Ø C. Seek latency 12

Disk Addressing Software wants a simple disc virtual address space consisting of a linear array of sectors. Ø Sectors numbered 1..N, each 512 bytes (typical size). Ø Writing 8 surfaces at a time writes a 4KB page. Hardware has structure: Ø Which platter? Ø Which track within the platter? Ø Which sector within the track? The hardware structure affects latency. Ø Reading from sectors in the same track is fast. Ø Reading from the same cylinder group is faster than seeking. 13

Disk Addressing Mapping a 3-D structure to a 1-D structure 2p 1... 2 0 t 1... 1 0 s 1 0 1... Sector Surface Track? Mapping criteria Ø block n+1 should be as close as possible to block n 0 n File blocks 14

The Impact of File Mappings File access times: Contiguous allocation Array elements map to contiguous sectors on disk Ø Case1: Elements map to the middle of the disk 5.6 + 3.0 + 6.0 2,048 424 = 8.6 + 29.0 = 37.6 ms Seek Time Latency Transfer Time = time per revolution number of revolutions required to transfer data Constant Terms Variable Term 15

The Impact of File Mappings File access times: Contiguous allocation Array elements map to contiguous sectors on disk Ø Case1: Elements map to the middle tracks of the platter 5.6 + 3.0 + 6.0 2,048 = 8.6 + 29.0 = 37.6 ms 424 Case2: Elements map to the inner tracks of the platter 5.6 + 3.0 + 6.0 2,048 212 Case3: Elements map to the outer tracks of the platter 5.6 + 3.0 + 6.0 2,048 636 = 8.6 + 58.0 = 66.6 ms = 8.6 + 19.3 = 27.9 ms 16

Disk Addressing The impact of file mappings: Non-contiguous allocation Array elements map to random sectors on disk Ø Each sector access results in a disk seek 2,048 (5.6 + 3.0) = 17.6 seconds 0 n File blocks 2p 1... 2 0 t 1... 1 0 s 1 0 1... 17

Practical Knowledge If the video you are playing off your hard drive skips, defragment your file system. OS block allocation policy is complicated. Defragmentation allows the OS to revisit layout with global information. Uni file systems need defragmentation less than Windows file systems, because they have better allocation policies. 18

Defragmentation Decisions Files written when the disk is nearly full are more likely to be fragmented. Ø A. True Ø B. False 19

Disk Head Scheduling Maimizing disk throughput In a multiprogramming/timesharing environment, a queue of disk I/O requests can form (surface, track, sector) CPU Disk Other I/O The OS maimizes disk I/O throughput by minimizing head movement through disk head scheduling 20

Disk Head Scheduling Eamples Assume a queue of requests eists to read/write tracks: Ø and the head is on track 65 83 72 14 147 16 150 0 25 50 65 75 100 125 150 21

Disk Head Scheduling Eamples Assume a queue of requests eists to read/write tracks: 83 72 14 147 16 150 Ø and the head is on track 65 0 25 50 65 75 100 125 150 FCFS scheduling results in the head moving 550 tracks Can we do better? 22

Disk Head Scheduling Minimizing head movement Greedy scheduling: shortest seek time first Ø Rearrange queue from: To: 83 72 14 147 16 14 16 150 147 82 150 72 0 25 50 75 100 125 150 23

Disk Head Scheduling Minimizing head movement Greedy scheduling: shortest seek time first Ø Rearrange queue from: To: 83 72 14 147 16 14 16 150 147 82 150 72 0 25 50 75 100 125 150 SSTF scheduling results in the head moving 221 tracks Can we do better? 24

Disk Head Scheduling SCAN scheduling Rearrange queue from: 83 72 14 147 16 150 To: 150 147 83 72 14 16 0 25 50 75 100 125 150 SCAN scheduling: Move the head in one direction until all requests have been serviced and then reverse. Also called elevator scheduling. Moves the head 187 tracks 25

Disk Head Scheduling Other variations C-SCAN scheduling ( Circular -SCAN) Ø Move the head in one direction until an edge of the disk is reached and then reset to the opposite edge 0 25 50 75 100 125 150 LOOK scheduling Same as C-SCAN ecept the head is reset when no more requests eist between the current head position and the approaching edge of the disk 26

Disk Performance Disk partitioning Disks are typically partitioned to minimize the largest possible seek time Ø A partition is a collection of cylinders Ø Each partition is a logically separate disk Partition A Partition B 27

Disks Technology Trends Disks are getting smaller in size Ø Smaller à spin faster; smaller distance for head to travel; and lighter weight Disks are getting denser Ø More bits/square inch à small disks with large capacities Disks are getting cheaper Ø 2/year since 1991 Disks are getting faster Ø Seek time, rotation latency: 5-10%/year (2-3 per decade) Ø Bandwidth: 20-30%/year (~10 per decade) Overall: Ø Disk capacities are improving much faster than performance 28

Management of Multiple Disks Using multiple disks to increase disk throughput Disk striping (RAID-0) Ø Blocks broken into sub-blocks that are stored on separate disks similar to memory interleaving Ø Provides for higher disk bandwidth through a larger effective block size 1 2 3 OS disk block 8 9 10 11 12 13 14 15 0 1 2 3 8 9 10 11 12 13 14 15 0 1 2 3 Physical disk blocks 29

Management of Multiple Disks Using multiple disks to improve reliability & availability To increase the reliability of the disk, redundancy must be introduced Ø Simple scheme: disk mirroring (RAID-1) Ø Write to both disks, read from either. 0 1 1 0 0 1 1 1 0 1 0 1 0 1 1 Primary disk 0 1 1 0 0 1 1 1 0 1 0 1 0 1 1 Mirror disk 30

Who controls the RAID? Hardware Ø +Tend to be reliable (hardware implementers test) Ø +Offload parity computation from CPU Hardware is a bit faster for rewrite intensive workloads Ø -Dependent on card for recovery (replacements?) Ø -Must buy card (for the PCI bus) Ø -Serial reconstruction of lost disk Software Ø -Software has bugs Ø -Ties up CPU to compute parity Ø +Other OS instances might be able to recover Ø +No additional cost Ø +Parallel reconstruction of lost disk 31

Management of Multiple Disks Using multiple disks to increase disk throughput RAID (redundant array of inepensive disks) disks Ø Byte-wise striping of the disks (RAID-3) or block-wise striping of the disks (RAID-0/4/5) Ø Provides better performance and reliability Eample: storing the byte-string 101 in a RAID-3 system 1 2 3 1 0 1 32

Improving Reliability and Availability RAID-4 Block interleaved parity striping Ø Allows one to recover from the crash of any one disk Ø Eample: storing 8, 9, 10, 11, 12, 13, 14, 15, 0, 1, 2, 3 Disk 1 Disk 2 Disk 3 Parity Disk RAID-4 layout: 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 1 1 0 0 1 1 0 0 1 1 1 1 0 0 0 0 1 1 0 0 1 1 33

Improving Reliability and Availability RAID-5 Block interleaved parity striping Disk 1 Disk 2 Disk 3 Disk 4 Disk 5 Block 1 18 1 1 1 19 1 1 0 0100 0 0 0110 0 1 121 1 0 0130 0 0 0141 1 0 10 1 1 Block 0 0 1 0 0151 1 0 1 23 0 1 0 1 1 0 0 0 1 1 0 1 0 1 0 Parity 1 1 0 34

Improving Reliability and Availability RAID-5 Block interleaved parity striping Disk 1 Disk 2 Disk 3 Disk 4 Disk 5 Block 1 18 1 1 1 19 1 1 0 0100 0 0 0110 0 1 121 1 0 0130 0 0 0141 1 0 10 1 1 Block 0 0 1 0 0151 1 0 1 23 0 1 0 1 1 0 0 0 1 1 0 1 0 1 0 Parity 1 1 0 Block +1 1 Block 1 1 1 1 +1 1 1 1 0 Parity 0 0 0 0 0 a0 0 1 1 b1 1 0 0 c0 0 0 0 d1 1 0 1 g0 1 1 0 j0 1 0 0 e1 1 0 1 hi 0 1 0 1 kl 1 0 0 0 f 1 1 0 1 0 1 0 1 1 0 Block +2 1 1 m1 1 1 1 no 1 1 0 0 0 0 0 Block 0 0 0 1 +2 1 1 1 0 Parity 0 0 0 0 0 p1 1 0 1 s0 1 1 0 v0 1 0 0 q1 1 0 1 tu 0 1 0 1 w 1 0 0 0 r 1 1 0 1 0 1 0 1 1 0 Block +3 1 1 y1 1 1 1 z 1 1 0 0 aa0 0 0 0 bb0 0 1 1 cc 1 1 0 0 dd0 0 0 Block 0 1 1 0 +3 0 1 1 0 Parity 0 1 1 0 1 ee0 1 0 1 ff 0 1 0 1 gg0 1 1 0 hh0 1 0 1 ii 1 0 0 1 jj 1 0 35