Memory hardware issues


Mainstorage

    
Mainstorage is also called memory or internal memory (to distinguish fromexternal memory, such as hard drives). An older term is working storage.
    
Mainstorage is fast (at least a thousand times faster than external storage, suchas hard drives). Main storage (with a few rare exceptions) is volatile, thestored information being lost when power is turned off.
    
Alldata and instructions (programs) must be loaded into main storage for thecomputer processor.
    
RAM is Random Access Memory, and is thebasic kind of internal memory. RAM is called “random access” because theprocessor or computer can access anylocation in memory (as contrasted with sequential access devices, which must beaccessed in order). RAM has been made from reed relays, transistors, integratedcircuits, magnetic core, or anything that can hold and store binary values(one/zero, plus/minus, open/close, positive/negative, high/low, etc.). Mostmodern RAM is made from integrated circuits. At one time the most common kindof memory in mainframes was magnetic core, so many older programmers will referto main memory as core memory even when the RAM is made from more moderntechnology. Static RAM is called static because it will continue to holdand store information even when power is removed. Magnetic core and reed relaysare examples of static memory. Dynamic RAM is called dynamic because itloses all data when power is removed. Transistors and integrated circuits areexamples of dynamic memory. It is possible to have battery back up for devicesthat are normally dynamic to turn them into static memory.
    
ROM is Read Only Memory (it is alsorandom access, but only for reads). ROM is typically used to store thigns thatwill never change for the life of the computer, such as low level portions ofan operating system. Some processors (or variations within processor families)might have RAM and/or ROM built into the same chip as the processor (normallyused for processors used in standalone devices, such as arcade video games,ATMs, microwave ovens, car ignition systems, etc.). EPROM is ErasableProgrammable Read Only Memory, a special kind of ROM that can be erased andreprogrammed with specialized equipment (but not by the processor it isconnected to). EPROMs allow makers of industrial devices (and other similarequipment) to have the benefits of ROM, yet also allow for updating orupgrading the software without having to buy new ROM and throw out the old (theEPROMs are collected, erased and rewritten centrally, then placed back into themachines).
    
Registers and flags are a special kindof memory that exists inside a processor. Typically a processor will haveseveral internal registers that are much faster than main memory. Theseregisters usually have specialized capabilities for arithmetic, logic, andother operations. Registers are usually fairly small (8, 16, 32, or 64 bits forinteger data, address, and control registers; 32, 64, 96, or 128 bits forfloating point registers). Some processors separate integer data and addressregisters, while other processors have general purpose registers that can beused for both data and address purposes. A processor will typically have one to32 data or general purpose registers (processors with separate data and addressregisters typically split the register set in half). Many processors havespecial floating point registers (and some processors have general purposeregisters that can be used for either integer or floating point arithmetic).Flags are single bit memory used for testing, comparison, and conditionaloperations (especially conditional branching).

 

Externalstorage

    
Externalstorage is anystorage other than main memory. In modern times this is mostly hard drives andremoveable media (such as floppy disks, Zip disks, optical media, etc.). Withthe advent of USB and FireWire hard drives, the line between permanent harddrives and removeable media is blurred. Other kinds of external storage includetape drives, drum drives, paper tape, and punched cards. Random access or indexedaccess devices (such as hard drives, removeable media, and drum drives) providean extension of memory (although usually accessed through logical filesystems). Sequential access devices (such as tape drives, paper tapepunch/readers, or dumb terminals) provide for off-line storage of large amountsof information (or back ups of data) and are often called I/O devices (forinput/output).

 

Buffers

    
Buffers are areas in main memory that areused to store data (or instructions) being transferred to or from externalmemory.