A drum memory or drum storage unit contained a large metal cylinder, coated on the outside surface with a
ferromagnetic recording material. It could be considered the precursor to the
hard disk drive (HDD), but in the form of a drum (cylinder) rather than a flat disk. In most designs, one or more rows of fixed
read-write heads ran along the long axis of the drum, one for each track. The drum's controller simply selected the proper head and waited for the data to appear under it as the drum turned (
rotational latency). Not all drum units were designed with each track having its own head. Some, such as the
English Electric DEUCE drum and the UNIVAC
FASTRAND had multiple heads moving a short distance on the drum. In comparison, modern HDDs have one head per platter surface, which move together. In November 1953 Glenn E. Hagen of Logistics Research, Inc. published a paper disclosing "air floating" of
magnetic heads in an experimental sheet metal drum. A US patent filed in January 1954 by Heard Baumeister of IBM disclosed a "spring loaded and air supported shoe for poising a magnetic head above a rapidly rotating magnetic drum." Flying heads became standard in drums and
hard disk drives. Magnetic drum units used as primary memory were addressed by word. Drum units used as secondary storage were addressed by block. Several modes of block addressing were possible, depending on the device. • Blocks took up an entire track and were addressed by track. • Tracks were divided into fixed length sectors and addressing was by track and sectors. • Blocks were variable length, and blocks were addressed by track and record number. • Blocks were variable length with a key, and could be searched by key content. Some devices were divided into logical cylinders, and addressing by track was actually logical cylinder and track. The performance of a drum with one head per track is comparable to that of a disk with one head per track and is determined almost entirely by the rotational latency, whereas in an HDD with moving heads its performance includes a rotational latency delay plus the time to position the head over the desired track (
seek time). In the era when drums were used as main working memory, programmers often did
optimum programming—the programmer—or the assembler, for example IBM's
Symbolic Optimal Assembly Program (SOAP)—positioned instructions on the drum in such a way as to reduce the amount of time needed for the next instruction to rotate into place under the head. They did this by timing how long it would take after loading an instruction for the computer to be ready to read the next one, then placing that instruction on the drum so that it would arrive under a head just in time. This method of timing-compensation, called the "skip factor" or "
interleaving", was used for many years in storage memory controllers. == History ==