A RAM drive (also called a RAM disk) is a block of random-access memory (primary storage or volatile memory) that a computer's software is treating as if the memory were a disk drive (secondary storage). RAM drives provide high-performance temporary storage for demanding tasks and protect non-volatile storage devices from wearing down, since RAM is not prone to wear from writing, unlike non-volatile flash memory. They are in a sense the reverse of virtual memory: RAM drive uses a volatile fast memory as if it's a nonvolatile slow memory. Virtual memory is the opposite.
It is sometimes referred to as a virtual RAM drive or software RAM drive to distinguish it from a hardware RAM drive that uses separate hardware containing RAM, which is a type of battery-backed solid-state drive.
Historically primary storage based mass storage devices were conceived to bridge the performance gap between internal memory and secondary storage devices. In the advent of solid-state devices this advantage lost most of its appeal. However, solid-state devices do suffer from wear from frequent writing. Primary memory writes do not so or in far lesser effect. So RAM devices do offer an advantage to store frequently changing data, like temporary or cached information.
The performance of a RAM drive is generally orders of magnitude faster than other forms of digital storage, such as SSD, tape, optical, hard disk, and floppy drives. [1] This performance gain is due to multiple factors, including access time, maximum throughput, and file system characteristics.
File access time is greatly reduced since a RAM drive is solid state (no moving parts). A physical hard drive, optical (e.g, CD-ROM, DVD, and Blu-ray) or other media (e.g. magnetic bubble, acoustic storage, magnetic tape) must move the information to a particular position before reading or writing can occur. RAM drives can access data with only the address, eliminating this latency.
Second, the maximum throughput of a RAM drive is limited by the speed of the RAM, the data bus, and the CPU of the computer. Other forms of storage media are further limited by the speed of the storage bus, such as IDE (PATA), SATA, USB or FireWire. Compounding this limitation is the speed of the actual mechanics of the drive motors, heads, or eyes.
Third, the file system in use, such as NTFS, HFS, UFS, ext2, etc., uses extra accesses, reads and writes to the drive, which although small, can add up quickly, especially in the event of many small files vs. few larger files (temporary internet folders, web caches, etc.).
Because the storage is in RAM, it is volatile memory, which means it will be lost in the event of power loss, whether intentional (computer reboot or shutdown) or accidental (power failure or system crash). This is, in general, a weakness (the data must periodically be backed up to a persistent-storage medium to avoid loss), but is sometimes desirable: for example, when working with a decrypted copy of an encrypted file, or using the RAM drive to store the system's temporary files.
In many cases, the data stored on the RAM drive is created from data permanently stored elsewhere, for faster access, and is re-created on the RAM drive when the system reboots.
Apart from the risk of data loss, the major limitation of RAM drives is capacity, which is constrained by the amount of installed RAM. Multi-terabyte SSD storage has become common, but RAM is still measured in gigabytes.
RAM drives use normal system memory as if it were a partition on a physical hard drive rather than accessing the data bus normally used for secondary storage. Though RAM drives can often be supported directly in the operating system via special mechanisms in the OS kernel, it is generally simpler to access a RAM drive through a virtual device driver. This makes the non-disk nature of RAM drives invisible to both the OS and applications.
Usually no battery backup is needed due to the temporary nature of the information stored in the RAM drive, but an uninterruptible power supply can keep the system running during a short power outage.
Some RAM drives use a compressed file system such as cramfs to allow compressed data to be accessed on the fly, without decompressing it first. This is convenient because RAM drives are often small due to the higher price per byte than conventional hard drive storage.
The first software RAM drive for microcomputers was invented and written by Jerry Karlin in the UK in 1979/80. The software, known as the Silicon Disk System, was further developed into a commercial product and marketed by JK Systems Research which became Microcosm Research Ltd when the company was joined by Peter Cheesewright of Microcosm Ltd. The idea was to enable the early microcomputers to use more RAM than the CPU could directly address. Making bank-switched RAM behave like a disk drive was much faster than the disk drives. especially before hard drives were readily available on such machines. The Silicon Disk was launched in 1980, initially for the CP/M operating system and later for MS-DOS.
The 128kB Atari 130XE (with DOS 2.5) and Commodore 128 natively support RAM drives, as does ProDOS for the Apple II. On systems with 128kB or more of RAM, ProDOS automatically creates a RAM drive named /RAM.
IBM added a RAM drive named VDISK.SYS to PC DOS (version 3.0) in August 1984, which was the first DOS component to use extended memory. VDISK.SYS was not available in Microsoft's MS-DOS as it, unlike most components of early versions of PC DOS, was written by IBM. Microsoft included the similar program RAMDRIVE.SYS in MS-DOS 3.2 (released in 1986), which could also use expanded memory. [2] It was discontinued in Windows 7. DR-DOS and the DR family of multi-user operating systems also came with a RAM disk named VDISK.SYS. In Multiuser DOS, the RAM disk defaults to the drive letter M: (for memory drive). AmigaOS has had a built in RAM drive since the release of version 1.1 in 1985 and still has it in AmigaOS 4.1 (2010). Apple Computer added the functionality to the Apple Macintosh with System 7's Memory control panel in 1991, and kept the feature through the life of Mac OS 9. Mac OS X users can use the hdid, newfs (or newfs hfs) and mount utilities to create, format and mount a RAM drive.
A RAM drive innovation introduced in 1986 but made generally available in 1987 [3] [4] by Perry Kivolowitz for AmigaOS was the ability of the RAM drive to survive most crashes and reboots. Called the ASDG Recoverable Ram Disk, the device survived reboots by allocating memory dynamically in the reverse order of default memory allocation (a feature supported by the underlying OS) so as to reduce memory fragmentation. A "super-block" was written with a unique signature which could be located in memory upon reboot. The super-block, and all other RRD disk "blocks" maintained check sums to enable the invalidation of the disk if corruption was detected. At first, the ASDG RRD was locked to ASDG memory boards and used as a selling feature. Later, the ASDG RRD was made available as shareware carrying a suggested donation of 10 dollars. The shareware version appeared on Fred Fish Disks 58 [5] and 241. [6] AmigaOS itself would gain a Recoverable Ram Disk (called "RAD") in version 1.3. [7]
Many Unix and Unix-like systems provide some form of RAM drive functionality, such as /dev/ram on Linux, or md(4) [8] on FreeBSD. RAM drives are particularly useful in high-performance, low-resource applications for which Unix-like operating systems are sometimes configured. There are also a few specialized "ultra-lightweight" Linux distributions which are designed to boot from removable media and stored in a ramdisk for the entire session.
There have been RAM drives which use DRAM memory that is exclusively dedicated to function as an extremely low latency storage device. This memory is isolated from the processor and not directly accessible in the same manner as normal system memory. Some of the first dedicated RAM drives were released in 1983-1985. [9] [10]
An early example of a hardware RAM drive was introduced by Assimilation Process in 1986 for the Macintosh. Called the "Excalibur", it was an external 2MB RAM drive, and retailed for between $599 and $699 US. With the RAM capacity expandable in 1MB increments, its internal battery was said to be effective for between 6 and 8 hours, and, unusual for the time, it was connected via the Macintosh floppy disk port. [11] [12]
In 2002, Cenatek produced the Rocket Drive, max 4 GB, which had four DIMM slots for PC133 memory, with up to a maximum of four gigabytes of storage. At the time, common desktop computers used 64 to 128 megabytes of PC100 or PC133 memory. The one gigabyte PC133 modules (the largest available at the time) cost approximately $1,300 (equivalent to $2,202in 2023). A fully outfitted Rocket Drive with four GB of storage would have cost $5,600 (equivalent to $9,486in 2023). [13]
In 2005, Gigabyte Technology produced the i-RAM, max 4 GB, which functioned essentially identically to the Rocket Drive, except upgraded to use the newer DDR memory technology, though also limited to a maximum of 4 GB capacity. [14]
For both of these devices, the dynamic RAM requires continuous power to retain data; when power is lost, the data fades away. For the Rocket Drive, there was a connector for an external power supply separate from the computer, and the option for an external battery to retain data during a power failure. The i-RAM included a small battery directly on the expansion board, for 10-16 hours of protection.
Both devices used the SATA 1.0 interface to transfer data from the dedicated RAM drive to the system. The SATA interface was a slow bottleneck that limited the maximum performance of both RAM drives, but these drives still provided exceptionally low data access latency and high sustained transfer speeds, compared to mechanical hard drives.
In 2006, Gigabyte Technology produced the GC-RAMDISK, max 8GB, which was the second generation creation for the i-RAM. It has a maximum of 8 GB capacity, twice that of the i-RAM. It used the SATA-II port, again twice that of the i-RAM. One of its best selling points is that it can be used as a boot device. [15]
In 2007, ACard Technology produced the ANS-9010 Serial ATA RAM disk, max 64 GB. Quote from the tech report: The ANS-9010 "which has eight DDR2 DIMM slots and support for up to 8 GB of memory per slot. The ANS-9010 also features a pair of Serial ATA ports, allowing it to function as a single drive or masquerade as a pair of drives that can easily be split into an even faster RAID 0 array." [16]
In 2009, Acard Technology produced the ACARD ANS-9010BA 5.25 Dynamic SSD SATA-II RAM Disk, max 64GB. It uses a single SATA-II port.
Both variants are equipped with one or more CompactFlash card interface located in the front panel, allowing non-volatile data being stored on the RAM drive to be copied on the CompactFlash card in case of power failure and low backup battery. Two pushbuttons located on the front panel allows the user to manually backup / restore data on the RAM drive. The CompactFlash card itself is not accessible to the user by normal means as the CF card is solely intended for RAM backup and restoration. The CF card's capacity has to meet / exceed the RAM module's total capacity in order to effectively work as a reliable backup.
In 2009, DDRdrive, LLC produced the DDRDrive X1, which claims to be the fastest solid state drive in the world. The drive is a primary 4GB DDR dedicated RAM drive for regular use, which can back up to and recall from a 4GB SLC NAND drive. The intended market is for keeping and recording log files. If there is a power loss the data can be saved to an internal 4GB ssd in 60 seconds, via the use of a battery backup. Thereafter the data can be recovered back in to RAM once power is restored. A host power loss triggers the DDRdrive X1 to back up volatile data to on-board non-volatile storage. [17] [18]
The gigabyte is a multiple of the unit byte for digital information. The prefix giga means 109 in the International System of Units (SI). Therefore, one gigabyte is one billion bytes. The unit symbol for the gigabyte is GB.
A boot disk is a removable digital data storage medium from which a computer can load and run (boot) an operating system or utility program. The computer must have a built-in program which will load and execute a program from a boot disk meeting certain standards.
A live CD is a complete bootable computer installation including operating system which runs directly from a CD-ROM or similar storage device into a computer's memory, rather than loading from a hard disk drive. A live CD allows users to run an operating system for any purpose without installing it or making any changes to the computer's configuration. Live CDs can run on a computer without secondary storage, such as a hard disk drive, or with a corrupted hard disk drive or file system, allowing data recovery.
A flash drive is a data storage device that includes flash memory with an integrated USB interface. A typical USB drive is removable, rewritable, and smaller than an optical disc, and usually weighs less than 30 g (1 oz). Since first offered for sale in late 2000, the storage capacities of USB drives range from 8 megabytes to 256 gigabytes (GB), 512 GB and 1 terabyte (TB). As of 2023, 2 TB flash drives were the largest currently in production. Some allow up to 100,000 write/erase cycles, depending on the exact type of memory chip used, and are thought to physically last between 10 and 100 years under normal circumstances.
REV is a removable hard disk storage system from Iomega, initially released in 2004.
The Amiga Fast File System is a file system used on the Amiga personal computer. The previous Amiga filesystem was never given a specific name and known originally simply as "DOS" or AmigaDOS. Upon the release of FFS, the original filesystem became known as Amiga Old File System (OFS). OFS, which was primarily designed for use with floppy disks, had been proving slow to keep up with hard drives of the era. FFS was designed as a full replacement for the original Amiga filesystem. FFS differs from its predecessor mainly in the removal of redundant information. Data blocks contain nothing but data, allowing the filesystem to manage the transfer of large chunks of data directly from the host adapter to the final destination.
In computing, a temporary folder or temporary directory is a directory used to hold temporary files. Many operating systems and some software automatically delete the contents of this directory at bootup or at regular intervals, leaving the directory itself intact.
An in-memory database is a database management system that primarily relies on main memory for computer data storage. It is contrasted with database management systems that employ a disk storage mechanism. In-memory databases are faster than disk-optimized databases because disk access is slower than memory access and the internal optimization algorithms are simpler and execute fewer CPU instructions. Accessing data in memory eliminates seek time when querying the data, which provides faster and more predictable performance than disk.
An optical jukebox is a robotic data storage device that can automatically load and unload optical discs, such as Compact Disc, DVD, Ultra Density Optical or Blu-ray and can provide terabytes (TB) or petabytes (PB) of tertiary storage. The devices are often called optical disk libraries, "optical storage archives", robotic drives, or autochangers. Jukebox devices may have up to 2,000 slots for disks, and usually have a picking device that traverses the slots and drives. Zerras Inc. provides a removeable capsule that holds up to 200 discs per library which can be scaled-out to manage 1600 discs per 42U rack unit. The arrangement of the slots and picking devices affects performance and maintenance costs, depending on the robotics design, the space between a disk and the picking device. Seek times and transfer rates vary depending upon the optical technology used.
A hybrid drive is a logical or physical computer storage device that combines a faster storage medium such as solid-state drive (SSD) with a higher-capacity hard disk drive (HDD). The intent is adding some of the speed of SSDs to the cost-effective storage capacity of traditional HDDs. The purpose of the SSD in a hybrid drive is to act as a cache for the data stored on the HDD, improving the overall performance by keeping copies of the most frequently used data on the faster SSD drive.
Hibernation in computing is powering down a computer while retaining its state. When hibernation begins, the computer saves the contents of its random access memory (RAM) to a hard disk or other non-volatile storage. When the computer is turned on the RAM is restored and the computer is exactly as it was before entering hibernation. Hibernation was first implemented in 1992 and patented by Compaq Computer Corporation in Houston, Texas.
The i-RAM was a PCI card-mounted, battery-backed RAM disk that behaved and was marketed as a solid-state storage device. It was produced by Gigabyte and released in June 2005, at a time when genuine solid-state storage solutions were generally still less affordable than an i-RAM product with superficially similar capabilities. The i-RAM utilised DRAM, a type of volatile memory, and was equipped with a lithium-ion battery to provide backup power. This backup power was necessary only when the host computer was either unplugged or completely powered down. Under normal conditions, the i-RAM could draw sufficient power from the PCI bus for RAM refresh, as the PCI bus maintains standby power even when an ATX system is shut down. However, the preservation of the DRAM's contents was limited to a duration of 10 to 16 hours, depending on the configuration, after the power supply was completely interrupted.
HyperDrive (HD) is a series of RAM-based solid-state drives invented by Accelerated Logic B.V. employee Pascal Bancsi, who partnered with the British company HyperOs Systems, who manufactured the retail product. The HyperDrive interfaces with and is recognized by computer systems as a standard hard drive.
A solid-state drive (SSD) is a type of solid-state storage device that uses integrated circuits to store data persistently. It is sometimes called semiconductor storage device, solid-state device, and solid-state disk.
Amiga support and maintenance software performs service functions such as formatting media for a specific filesystem, diagnosing failures that occur on formatted media, data recovery after media failure, and installation of new software for the Amiga family of personal computers—as opposed to application software, which performs business, education, and recreation functions.
AmigaOS is a family of proprietary native operating systems of the Amiga and AmigaOne personal computers. It was developed first by Commodore International and introduced with the launch of the first Amiga, the Amiga 1000, in 1985. Early versions of AmigaOS required the Motorola 68000 series of 16-bit and 32-bit microprocessors. Later versions, after Commodore's demise, were developed by Haage & Partner and then Hyperion Entertainment. A PowerPC microprocessor is required for the most recent release, AmigaOS 4.
Universal memory refers to a computer data storage device combining the cost benefits of DRAM, the speed of SRAM, the non-volatility of flash memory along with infinite durability, and longevity. Such a device, if it ever becomes possible to develop, would have a far-reaching impact on the computer market. Some doubt that such a type of memory will ever be possible.
Solid-state storage (SSS) is non-volatile computer storage that has no moving parts; it uses only electronic circuits. This solid-state design dramatically differs from the commonly-used competing technology of electromechanical magnetic storage which uses moving media coated with magnetic material. Generally, SSS is much faster but more expensive for the same amount of storage.