Direct vs. Random Access

Would someone please clarify for me the difference between direct and random access?

Specifically, why does this Wikipedia article on Direct Access Storage Devices distinguish between the two:

The direct access capability, occasionally and incorrectly called random access (although that term survives when referring to memory or RAM),

In computer science, random access (sometimes called direct access) is the ability to access an element at an arbitrary position in a sequence in equal time, independent of sequence size.

• It seems like you're asking about the "Direct access method" but your title says otherwise :p – keyser Nov 7 '12 at 19:35

When you speak about direct access in small amount of time that could also be logarithmic, you speak about secondary devices, so hard disks, floppys, USB flash drives, etc.

When you speak about random access you mean that access time to any part of memory is constant. This is very hard to achieve with secondary devices, but easier with primary ones.

Both seems same. We use Random Access when for primary memory (RAM) and Direct Access for secondary storage.

For Direct Access Storage Device, this is written

The access methods for DASD are Sequential, Indexed and Direct.


So, here Direct means Random only

Random access memory basically store information temporarily while direct access memory store information permanently.

The Wikipedia article about direct access storage devices contrasts two access methods to information stored on physical devices: sequential access and direct access. Sequential access is exemplified by tape drives used for backups. Direct access, which is synonymous with random access, is much more common.

The difference between sequential access and direct or random access is quantitative rather than qualitative. Magnetic hard drives are considered random access although data access involves moving the read-and-write heads, which could be quite slow compared to other types of memory. In contrast, modern RAM often provides truly direct access, in the sense that accessing two locations in memory has the same cost whatever the difference in address (disregarding difference between the logical model in which RAM is byte- or word-addressable, and the physical model in which data is transferred in larger cache lines).