Anatomy of a Disk Drive



It is not really necessary to understand the physical or logical structure of a disk drive or how it works  in order to use Linux or any other operating system. Such knowledge can be quite helpful, however, when you are attempting to perform problem determination on a system which is responding sluggishly. One of the first places to look when you are troubleshooting a performance issue is at disk performance.

Only by understanding the function and structure of disk drives can you hope to improve performance.

Inside a Disk Drive

Figure 1: Inside a Disk Drive

A hard drive, aka disk drive, consists of one or more metal or glass platters coated with a magnetic recording medium. Each platter has two surfaces, top and bottom, on which data can be recorded. Read/write heads write data onto the recording surface and read it back when requested by the operating system. The data is recorded on circular tracks on each platter.

In the illustration above, the drive has three platters and six read/write heads. The heads are aligned vertically so that they are each lined up over the same data track on their respective platters. There are hundreds of tracks on each surface and the six vertically aligned tracks under the read/write heads are known as a cylinder.

The  actuator moves the heads across the disk surface to align the heads with different cylinders to read and write data.

Disk Space Allocation

The cylinder is the minimum increment of space that can be allocated to a partition when installing Linux or creating partitions from free disk space. This is the reason that a requested allocation of 1000MB for a partition might actually become 1985MB. The output from fdisk below, shows that a cylinder is about 8MB,

<span style="font-family: courier new,courier;">Disk /dev/sda: 80.0 GB, 80026361856 bytes
255 heads, 63 sectors/track, 9729 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes</span>