Hard drives - La Salle University

advertisement
Disk Drives
CSIT 301 (Blum)
1
Hard drive
• In our original view of a computer as being
comprised of ALU, Control, Memory, Input and
Output, the hard drive is a device connected either
as input or output.
• But the hard drive is also sometimes viewed as a
logical extension of memory.
• The hard drive is the primary storage device.
– Compared to RAM, storage is non-volatile
– Compared to ROM, storage is more easily written.
CSIT 301 (Blum)
2
Speed and Capacity
• The two main characteristics of a hard drive
are
– Its capacity: how much data can it hold
– Its speed: how quickly can it be read from or
written to
• Data intensive applications such as databases,
graphics and so on will require pages to swapped in
and out of memory. The speed of the hard drive will
be an important factor for determining how
efficiently such programs run.
CSIT 301 (Blum)
3
Analog of Moore
• Recall that Moore’s Law concerns the
exponential growth of the number of
transistors on an integrated chip.
• There has been similar exponential growth
in the capacity of hard drives.
CSIT 301 (Blum)
4
Exponential Improvement in Hard Drive Capacity
CSIT 301 (Blum)
5
Paper Tape and Cards
• Prior to hard drives, programs and data
could be stored on cards or paper tape.
• In both cases a hole could correspond
to a 1 and the absence of a hole to a 0.
CSIT 301 (Blum)
6
Magnetic Tape
• Magnetic tape was an improvement upon
punch cards and paper tape, both in terms of
speed and capacity.
• In magnetic tape, a long thin piece of plastic
is covered with a ferromagnetic material,
such as Ferric oxide (Fe2O3).
CSIT 301 (Blum)
7
Magnetic Tapes versus Hard drives
• The writing or reading of a individual bit is
similar whether we are talking about a hard
drive or a magnetic tape.
• The difference is one of addressing:
– Magnetic tapes have sequential access
– Hard drives have random access
CSIT 301 (Blum)
8
Magnets
• Little magnets align themselves in a
particular way when in the presence of a
magnetic field
– E.g. a compass points North because it is a
magnet aligning itself with the Earth’s magnetic
field
CSIT 301 (Blum)
9
Ferromagnetic
• Many atoms are like tiny little magnets, but the
little magnets point in random directions and tend
to cancel out any magnetic effect on a large scale.
• An external magnetic field can make these little
magnets line up and produce a large-scale
(macroscopic) effect.
• If the little magnets remain aligned even when the
external magnetic field is removed, then the
material is said to be ferromagnetic.
• The lining up of the magnets is called magnetization.
• A ferromagnetic material “holds” or “remembers” its
magnetization state.
CSIT 301 (Blum)
10
Writing/Recording
• The signal (data changing over time) is fed
to a magnet which magnetizes the material
on the region of the tape that corresponds to
that time.
– The tape may record analog or digital
information.
CSIT 301 (Blum)
11
Reading/Playing
• The magnetized region produces a magnetic field
of its own.
• Any device that can sense this magnetic field can
read the information encoded on the tape.
• It is important to note that the reading device
(head) does not have to be in physical contact
with the tape in order to sense the tape region’s
magnetic field – just in its vicinity.
CSIT 301 (Blum)
12
Floating height/Flying height
• As opposed to floppies, VCR and cassette
tapes, hard disk heads do not come in
contact with the medium they are reading
from or writing to.
• The distance the head is from the material is
one of the important design parameters and
is known as the floating height or flying
height.
CSIT 301 (Blum)
13
Reading, Sensitivity and Density
• As the heads are made sensitive to smaller
magnetic fields, the region corresponding to a unit
of information can be made smaller.
• Also as the heads are made to approach the
material more closely (where the field is stronger)
without touching it, the region corresponding to a
unit of information can be made smaller.
• If the regions grow smaller, the number of such
regions per area (the density) increases.
– There are other ways to measure density, so this version
is sometimes called the areal density.
CSIT 301 (Blum)
14
Exponential Improvement in Hard Drive Density
The units for
areal density
are bits per
square inch
(BPSI) or in
this case
MBPSI
(mega)
CSIT 301 (Blum)
15
Shrinking Bit Size
CSIT 301 (Blum)
16
IBM RAMAC
• To get a sense of this improvement, consider an
early disk drive.
• One of the first commercially available hard disks
was IBM's RAMAC (Random Access Method of
Accounting and Control) introduced in 1956.
–
–
–
–
Capacity: about 5 MB
Used 50 24" disks!!!!!!!!
Areal density: 2,000 bits per square inch
Data throughput: 8,800 bits/s.
CSIT 301 (Blum)
17
Form Factor
• The areal density improvement has allowed the
capacity to increase while the size has decreased.
• Drive’s form factors (basically their width and
height) have continued to grow smaller and
smaller.
• The 5.25-inch width was a standard. It came in
three standard heights
– Full-height: 3.25 inch
– Half-height: 1.625 inch
– Third height: 1 inch
CSIT 301 (Blum)
18
3.5 inch Form Factor
• But now the 3.5-inch width has replaced it as the
standard in PCs.
• This width comes in two standard heights
– Third height: 1-inch which is standard (slim-line)
– Half-height: 1.625-inch which is used for higher capacity
drives
• Besides the overall benefits of miniaturization,
smaller widths allow the platters to spin faster and
thus help improve the speed.
CSIT 301 (Blum)
19
Platters and Spindle Speed
• Instead of the long plastic strip of magnetic tape,
hard disks have a collection of circular shaped
aluminum or glass platters (which serve as the
substrate) that are covered with magnetic material
(the media layer).
• Data is accessed by having the head float over the
platter as its spins.
– Access speed is thus related to rotational or spindle
speed which is measured in RPM (revolutions per
minute).
– Spindle speeds in the thousands to tens of thousands are
typical these days.
CSIT 301 (Blum)
20
Hard versus floppy disk
• The disks in a hard drive are fairly rigid and
hence the name “hard” disk.
• The disk in a floppy disk is made of a more
flexible material.
CSIT 301 (Blum)
21
CSIT 301 (Blum)
22
Anatomy of a Hard Drive
• The data is stored on platters: hard, flat circularshaped piece of aluminum coated with magnetic
material on one or both sides.
• The spindle serves as a rotational axis for the
platters.
• The rotational motion is driven by the spindle
motor.
• The information is accessed by a read/write head.
– Typically there are two heads per platter, one on the
top, one on the bottom.
CSIT 301 (Blum)
23
Anatomy of a Hard Drive (Cont.)
• The head is attached to a part called the slider,
which is in turn attached to the actuator arm,
which is used to position the head in the desired
region.
• The position of the actuator arm is controlled by
the actuator.
• There is actually a parallel array of heads which
are moved in unison by the actuator.
• The actuator in controlled by the logic board
which communicates the rest of the PC.
CSIT 301 (Blum)
24
CSIT 301 (Blum)
25
Don’t try this at home
• Reading requires the head to come very,
very close to the platter without touching it.
• Hard drives should not be opened because a
typical speck of dust is larger than the headto-platter reading distance.
• Opening a drive will almost assuredly ruin
it.
– Head crash: when the head touches the platter
CSIT 301 (Blum)
26
Dust particle versus Flying
Height
CSIT 301 (Blum)
27
Tracks
• In both hard and
floppy disks, the data
is written in concentric
circular paths known
as tracks
• A typical floppy disk
has 80 (doubledensity) or 160 (highdensity) tracks.
CSIT 301 (Blum)
track
28
Tracks (cont.)
• The density of tracks is measured in units of
tracks per inch (TPI).
• Each track is further divided into sectors.
• The location of information is remembered
by noting its track and sector numbers.
CSIT 301 (Blum)
29
Sectors
• Radial lines break the tracks up into sectors,
each of which holds 512 bytes of
information.
Sector
Usually 17
sectors per track
for a floppy
CSIT 301 (Blum)
30
Not all sectors are created equal
• A sector on the outer portion of the platter
has a greater area than a sector on the inner
portion.
– More and more of the storage area is wasted as
one moves out in the radial direction.
– More modern drive technologies divide the
outer tracks into more sectors to make use of
this storage area.
CSIT 301 (Blum)
31
Zoned Bit Recording
• Zoned bit recording (ZBR), a.k.a. multiple
zone recording or zone recording.
• Tracks are broken into groups called zones
based on their radial position. Tracks with
greater radii are broken into more sectors so
that storage area is not wasted.
– Requires more sophisticated controller.
CSIT 301 (Blum)
32
Larger Radius, Faster Access
• In ZBR, the outer tracks have more sectors
and thus hold more data, but the data is
accessed by the spinning of the disk. So
more data goes by per revolution when
reading the outer tracks.
• The outer tracks tend to be used first. So
disk access performance may go down as
one starts to use the inner/slower tracks.
CSIT 301 (Blum)
33
ZBR
CSIT 301 (Blum)
34
Cylinders
• Each platter has tracks with the various radii.
• All the tracks on different platters but with the
same radius make up a cylinder.
• For example, if a hard drive has
– Four platters
– And each platter has 600 tracks
• Then
– There will be 600 cylinders
– Each cylinder will have 8 tracks (assuming that each
platter has tracks on both sides).
CSIT 301 (Blum)
35
Why cylinders are important
• If the data being written does not fit in a
single track, it can be spread across the
cylinder.
• Activating different heads (at the same
radius/cylinder) is an electronic process and
thus is faster than moving the arm to a new
radius, which is a mechanical process and
thus slow.
CSIT 301 (Blum)
36
Accessing a disk
1. The combination of application, operating
system, BIOS and possibly disk interface
circuitry determine the location of the data on
the hard disk.
2. The location corresponds to a geometric location
on the disk. One needs to know
A. The cylinder which determines the radius or track.
B. The head which determines which platter and which
side of the platter.
C. The sector which determines where along the track.
CSIT 301 (Blum)
37
Accessing a disk (Cont.)
3. See if the information is cached before starting
the slower process of accessing it on the drive.
4. If the drive is not already spinning, it must be
“spun up” to its working rotational speed. It
might have been “spun down” to save energy.
5. The actuator moves the heads to the appropriate
cylinder (track, radial position).
6. The actuator then selects the appropriate head
and waits until the selected sector passes by the
head. It then reads.
CSIT 301 (Blum)
38
Accessing a disk (Cont.)
7. The information is read and placed
temporarily into a buffer.
8. The hard disk interface then sends the data
to some other part of the PC, in most cases
the memory.
CSIT 301 (Blum)
39
Cache on the Hard Disk
• The hard disk has a cache/buffer.
– After requesting data from the hard drive, one does not
sit by idly waiting for the result. One carries on with
whatever else possible. The result of the read is placed
in a buffer and picked up when the processor/memory
is ready to take it.
– When reading, one also grabs the data in the
neighboring sectors and places it in the buffer (prefetching). This is the standard idea of caching
something you expect to need soon based on locality of
reference.
CSIT 301 (Blum)
40
Size and Distinction
• The cache on the hard disk is typically
between 512 KB and 2 MB.
– Some SCSI drives may have as much as 16
MB.
• Be careful not to confuse the cache on the
hard drive with “disk cache” which refers to
a section of main memory used to hold data
recently read from the hard drive.
CSIT 301 (Blum)
41
Seek and ye shall find, but be quick about it
• Seek time is the time required to position
the head to the selected cylinder.
– Typical seek times are in milliseconds (ms)
– Recall that processor times are in nanoseconds
(ns, approx. a million times smaller) and
memory times are in microseconds (s, approx.
a thousand times smaller).
• Seek time is not access time, but is probably
the major part thereof.
CSIT 301 (Blum)
42
Versions of Seek Time
• Average: from a random track to another
random track
– This is what is typically reported
– 8 – 10 ms
• Track-to-track: from one track to the
adjacent track
• Full stroke: the full range from the
innermost to outermost track
CSIT 301 (Blum)
43
Settle Time
• After the head has reached the appropriate
cylinder (track, radius), it must take a short
amount of time to stabilize before reading can
occur.
• This time is called the settle time or settling time.
• It is short compared to seek time and does not vary
much from manufacturer to manufacturer.
CSIT 301 (Blum)
44
Command overhead time
• Command overhead time is the time it takes
from when the hard drive is given the read
instruction to when the actuator starts
positioning the head
– Since this is an electronic time as opposed to
the mechanical seek time, it is much smaller
and does not contribute much to the access
time.
CSIT 301 (Blum)
45
Latency
• After the instructions have been interpreted
and the actuator begins to move (command
overhead) and the head has reached the
selected cylinder (seek) and has stabilized
(settle), it is still not ready to read.
• It must wait until the selected sector rotates
past the head. This time is called the
latency.
CSIT 301 (Blum)
46
Latency and Spindle Speed
• The time it must wait for the correct sector to
swing by clearly depends on how fast the disks are
rotating – the spindle speed.
– If the spindles rotates at 10,000 RPM (revolutions per
minute), then it rotates at speed of 10,000/60 = 166.7
revolutions per second.
– If there are 166.7 revolutions per second, then a
revolution takes 1/166.7 seconds = 0.006 s or 6 ms.
– The average latency is half of the rotation time or in
this case 3 ms.
CSIT 301 (Blum)
47
PCGuide table
CSIT 301 (Blum)
48
Ordering the to-do list
• Because the hard drive is slower than the
processor and memory, there may be a back up of
tasks for it to perform. The order in which it
performs these tasks can greatly affect its
efficiency.
• One ordering is a simple FIFO (first-in, first-out)
ordering. The tasks (reads and writes) are queued
up and the first task requested is the first task
performed.
CSIT 301 (Blum)
49
More Sophisticated Orderings
• Seek-Time Optimization (a.k.a. Elevator
seeking):
– Seek time involves the radial positioning of the
head. The tasks are ordered based on their
radial positioning to minimize seek time.
• Access-Time Optimization (a.k.a.
multiple command reordering):
– Takes into account both radial and angular
positioning to minimize access time which
includes seek time and latency.
CSIT 301 (Blum)
50
Ordering Comparison
CSIT 301 (Blum)
51
References
• PC Hardware in a Nutshell, Thompson and
Thompson
• http://www.pcguide.com
• All-in-One A+ Certification, Meyers and
Jernigan
CSIT 301 (Blum)
52
Download