18
CPSC 410 / 611 : Operating Systems Disk Management 1 Disk Management Disk Structure Disk Scheduling • RAID Disk Block Management Modern Secondary Storage Technologies Disk Management Disk Structure Disk Scheduling • RAID Disk Block Management Modern Secondary Storage Technologies

Disk Management - ecology labfaculty.cs.tamu.edu/bettati/Courses/410/2017A/Slides/disk_manage… · Disk Management • Disk Structure • Disk Scheduling • RAID • Disk Block

  • Upload
    others

  • View
    36

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Disk Management - ecology labfaculty.cs.tamu.edu/bettati/Courses/410/2017A/Slides/disk_manage… · Disk Management • Disk Structure • Disk Scheduling • RAID • Disk Block

CPSC 410 / 611 : Operating Systems Disk Management

1

Disk Management

•  Disk Structure

•  Disk Scheduling

•  RAID

•  Disk Block Management

•  Modern Secondary Storage Technologies

Disk Management

•  Disk Structure

•  Disk Scheduling

•  RAID

•  Disk Block Management

•  Modern Secondary Storage Technologies

Page 2: Disk Management - ecology labfaculty.cs.tamu.edu/bettati/Courses/410/2017A/Slides/disk_manage… · Disk Management • Disk Structure • Disk Scheduling • RAID • Disk Block

CPSC 410 / 611 : Operating Systems Disk Management

2

Disk Structure

cylinder

track

sector

Disk speed:•  seek time : head moves to correct track•  rotational delay : wait until sector is under head•  transfer time : transfer data between disk and memory

Disk Performance

Seek Time : Ts n = number of tracks traversed m = “track traversal time” s = startup time

Rotational Delay (Latency Time): TR r = # revolutions per time unit

Transfer Time: TT b = # bytes to be transferred N = number of bytes on track

Disk Access Time:

s n m T S + × =

r T R 2

1 =

rN b T T =

T R S T T T T + + =

Page 3: Disk Management - ecology labfaculty.cs.tamu.edu/bettati/Courses/410/2017A/Slides/disk_manage… · Disk Management • Disk Structure • Disk Scheduling • RAID • Disk Block

CPSC 410 / 611 : Operating Systems Disk Management

3

Disk Management

•  Disk Structure

•  Disk Scheduling

•  RAID

•  Disk Block Management

•  Modern Secondary Storage Technologies

Disk Scheduling

Q: Does it pay off to think about scheduling policy in disk queue?

application application

kernel

device driver

file system

disk queue

Evaluation: Compare time for service for given request sequence. Distinguish only by cylinder.

Page 4: Disk Management - ecology labfaculty.cs.tamu.edu/bettati/Courses/410/2017A/Slides/disk_manage… · Disk Management • Disk Structure • Disk Scheduling • RAID • Disk Block

CPSC 410 / 611 : Operating Systems Disk Management

4

24 49 74 99 124 149 174 199 0

FCFS Scheduling Request Sequence: 98, 183, 37, 122, 14, 124, 65, 67

total head movement: 640 tracks

FCFS Pros: –  simple –  fair

FCFS Cons: –  poor average service time

24 49 74 99 124 149 174 199 0

Shortest-Seek-Time-First (SSTF) Request Sequence: 98, 183, 37, 122, 14, 124, 65, 67

total head movement: 236 tracks

Always serve “closest” request. SSTF Pros:

–  short service times

SSTF Cons:

–  Starvation!

Page 5: Disk Management - ecology labfaculty.cs.tamu.edu/bettati/Courses/410/2017A/Slides/disk_manage… · Disk Management • Disk Structure • Disk Scheduling • RAID • Disk Block

CPSC 410 / 611 : Operating Systems Disk Management

5

24 49 74 99 124 149 174 199 0

Elevator Algorithm (SCAN) Request Sequence: 98, 183, 37, 122, 14, 124, 65, 67

total head movement: 236 tracks

Continuously scan disk from one end to the other. SCAN Pros:

–  short service times

SCAN Cons: – When scanning, few requests after us, since just past through.

– Problem: When we change direction at end, requests there are very new.

24 49 74 99 124 149 174 199 0

Circular SCAN (C-SCAN) Request Sequence: 98, 183, 37, 122, 14, 124, 65, 67

Reduce variance in service time by always starting at the beginning of the disk.

Page 6: Disk Management - ecology labfaculty.cs.tamu.edu/bettati/Courses/410/2017A/Slides/disk_manage… · Disk Management • Disk Structure • Disk Scheduling • RAID • Disk Block

CPSC 410 / 611 : Operating Systems Disk Management

6

24 49 74 99 124 149 174 199 0

LOOK, C-LOOK

Disk Management

•  Disk Structure

•  Disk Scheduling

•  RAID

•  Disk Block Management

•  Modern Secondary Storage Technologies

Page 7: Disk Management - ecology labfaculty.cs.tamu.edu/bettati/Courses/410/2017A/Slides/disk_manage… · Disk Management • Disk Structure • Disk Scheduling • RAID • Disk Block

CPSC 410 / 611 : Operating Systems Disk Management

7

RAID Observation: Traditional secondary storage devices are slow!

Improve their performance by using multiple devices in parallel:

RAID –  Redundant Arrays of Independent Disks –  Redundant Arrays of Inexpensive Disks (Berkeley)

Common characteristics: –  Array of physical disks that are visible as single device to OS. –  Data is distributed across physical drives of array. –  Redundant disk capacity is used for error detection/correction.

RAID (cont)

Approach: Replace single large-capacity disk with array of smaller-capacity disks.

Benefits: –  Improved I/O performance –  Enables incremental upgrade

Problems: –  Reliability: more devices increase the probability of failure.

Solution: redundancy

∫ ∞

-

= =

= > =

0 ) ( ] [

) ( . . ] [ ) (

dt t R t E MTTF

e t R g e t t P t R

F

t F

λ

Page 8: Disk Management - ecology labfaculty.cs.tamu.edu/bettati/Courses/410/2017A/Slides/disk_manage… · Disk Management • Disk Structure • Disk Scheduling • RAID • Disk Block

CPSC 410 / 611 : Operating Systems Disk Management

8

Raid (cont 2)

Raid Striping Redundancy+ =

bit-levelblock-level

block

bit-level striping

blocks

block-level striping

RAID Level 0

“Block-level Striped Set without Parity”

blocks

block-level striping

Page 9: Disk Management - ecology labfaculty.cs.tamu.edu/bettati/Courses/410/2017A/Slides/disk_manage… · Disk Management • Disk Structure • Disk Scheduling • RAID • Disk Block

CPSC 410 / 611 : Operating Systems Disk Management

9

•  Problem: –  cost (100% redundancy)

•  Performance –  READs : good (with multithreading and “split reads”)

–  WRITEs: small performance penalty.

RAID Level 1

“Mirrored Set without Parity”

mir

rors

RAID Level 2

•  Head and spindles synchronized •  Small strips •  Error correction code calculated over

bits of data disks. (Hamming Code) •  Appropriate for systems with many

failures. •  Typically not implemented.

block “Memory-Style

Error-Correcting Parity”

Page 10: Disk Management - ecology labfaculty.cs.tamu.edu/bettati/Courses/410/2017A/Slides/disk_manage… · Disk Management • Disk Structure • Disk Scheduling • RAID • Disk Block

CPSC 410 / 611 : Operating Systems Disk Management

10

RAID Level 3

•  Heads and spindles synchronized.

•  Small strips.

•  Simple parity bits instead of ECC.

S0

block

S1

S2

S3

S4

parityDisk 1 fails:

0 1 2 3 4 ) ( . . S S S S S S P g e ⊕ ⊕ ⊕ = =

0 2 3 4 1 S S S S S ⊕ ⊕ ⊕ =

“Bit-Interleaved Parity”

RAID Level 4

•  Same as RAID 3, but with block-level striping.

•  No synchronization across disks. •  Large strips. •  Each strip on parity disk contains

parity information for all corresponding strips.

•  Parity computation upon READ:

block

) ( ' 1 ) ( 1 ) ( 4 ) ( 1 ) ( 1 ) ( 0 ) ( ' 1 ) ( 2 ) ( 3

) ( 0 ) ( ' 1 ) ( 2 ) ( 3 ) ( ' 4 ) ( 0 ) ( 1 ) ( 2 ) ( 3 ) ( 4

i X i X i X i X i X i X i X i X i X

i X i X i X i X i X i X i X i X i X i X

⊕ ⊕ = ⊕ ⊕ ⊕ ⊕ ⊕ =

⊕ ⊕ ⊕ = ⊕ ⊕ ⊕ =

“Block level Parity”

Page 11: Disk Management - ecology labfaculty.cs.tamu.edu/bettati/Courses/410/2017A/Slides/disk_manage… · Disk Management • Disk Structure • Disk Scheduling • RAID • Disk Block

CPSC 410 / 611 : Operating Systems Disk Management

11

RAID Level 5

•  Same as RAID 4, but parity spread across all disks.

•  No synchronization across disks. •  Large strips.

block

“Striped Set with Interleaved Parity”

RAID Level 6

•  Same as RAID 5, but uses 2 bits to store “parity”.

•  No synchronization across disks. •  Large strips. •  Uses ECC instead of parity. •  Tolerates two failures. •  In practice, a second drive can fail

during recovery from first drive failure.

block

“Striped Set with Dual Interleaved Parity”

Page 12: Disk Management - ecology labfaculty.cs.tamu.edu/bettati/Courses/410/2017A/Slides/disk_manage… · Disk Management • Disk Structure • Disk Scheduling • RAID • Disk Block

CPSC 410 / 611 : Operating Systems Disk Management

12

Nested Levels: RAID Level 1+0 = RAID 10

Raid 10 = “Mirrored Set in a Striped Set”

blocks

block-level striping

Raid 0Raid 1

Raid 10

Raid 1

Disk Management

•  Disk Structure

•  Disk Scheduling

•  RAID

•  Disk Block Management

•  Modern Secondary Storage Technologies

Page 13: Disk Management - ecology labfaculty.cs.tamu.edu/bettati/Courses/410/2017A/Slides/disk_manage… · Disk Management • Disk Structure • Disk Scheduling • RAID • Disk Block

CPSC 410 / 611 : Operating Systems Disk Management

13

Disk Formatting •  Bare disk:

•  Physical formatting: •  “cut” into sectors •  identify sectors •  add space for error detection/correction

•  Logical formatting: •  add blank directory, FAT, free space list, ...

ecc 1 ecc 2 ecc 3 ecc 4 ecc 5 ecc X

1 2 3 4 5 X FAT DIR DIR F/L ...

Framing •  Character count

•  Starting and ending flags, with bit stuffing

•  Physical layer coding violations

•  Starting and ending chars, with character stuffing

5 1 2 3 4 8 1 2 3 4 5 6 7 1 2

character count

DLE STX a b DLE DLE c DLE ETX

stuffed DLE

framing pattern: 01111110

011011111011111011111010010

stuffed bits

binary

Manchester

lack of transition

Page 14: Disk Management - ecology labfaculty.cs.tamu.edu/bettati/Courses/410/2017A/Slides/disk_manage… · Disk Management • Disk Structure • Disk Scheduling • RAID • Disk Block

CPSC 410 / 611 : Operating Systems Disk Management

14

Bad Block Management

•  One or more blocks become unreadable/unwriteable: bad blocks

•  Off-line management of bad blocks: –  Run bad-block detection program and put bad blocks on bad-

block list. (Either remove them from free list or mark entry in FAT.)

–  May have to run file recovery utility.

•  On-line management: –  Have the device driver map the bad block onto a good block –  Block X goes bad. Whenever OS requests block X, the disk

transparently accesses a replacement block Y. –  Problem: interferes with scheduling!

Disk Management

•  Disk Structure

•  Disk Scheduling

•  RAID

•  Disk Block Management

•  Modern Secondary Storage Technologies

Page 15: Disk Management - ecology labfaculty.cs.tamu.edu/bettati/Courses/410/2017A/Slides/disk_manage… · Disk Management • Disk Structure • Disk Scheduling • RAID • Disk Block

CPSC 410 / 611 : Operating Systems Disk Management

15

NAND Flash Memory

•  Flash chips are arranged in 8kB blocks.•  Each block is divided into 512B pages.

•  Flash memory does not support “overwrite” operations.

•  Only supports a limited number of “erase” operations.

•  This is handled in the Flash Translation Layer (FTL)

Flash Translation Layer (FTL)

Page 16: Disk Management - ecology labfaculty.cs.tamu.edu/bettati/Courses/410/2017A/Slides/disk_manage… · Disk Management • Disk Structure • Disk Scheduling • RAID • Disk Block

CPSC 410 / 611 : Operating Systems Disk Management

16

Performance Comparison: IOPS

Performance Comparison: Throughput

Page 17: Disk Management - ecology labfaculty.cs.tamu.edu/bettati/Courses/410/2017A/Slides/disk_manage… · Disk Management • Disk Structure • Disk Scheduling • RAID • Disk Block

CPSC 410 / 611 : Operating Systems Disk Management

17

Performance Comparison: Latency

Intel 3D XPoint (Optane)

Page 18: Disk Management - ecology labfaculty.cs.tamu.edu/bettati/Courses/410/2017A/Slides/disk_manage… · Disk Management • Disk Structure • Disk Scheduling • RAID • Disk Block

CPSC 410 / 611 : Operating Systems Disk Management

18

Optane (cont)