This commit is contained in:
Miloslav Ciz 2024-02-12 20:36:38 +01:00
parent c2bdda3290
commit b3106e1ec8
11 changed files with 1705 additions and 1679 deletions

2
ram.md
View file

@ -1,6 +1,6 @@
# RAM
RAM stands for *random access memory*, a type of [computer](computer.md) [memory](memory.md) characterized by allowing access to arbitrary addresses (as opposed to SAM -- sequential memories, such as tapes, which only allow sequential access); a bit confusingly (for historical reasons) the term RAM came to be used more as a synonym for so called **main memory**, i.e. the computer's **working memory** (memory used for performing computation, as opposed to e.g. persistent storage or [read only memory](rom.md)). It is true that working memory is very often a random access memory, but it doesn't always have to be so and there exist random access memories that don't serve as working memory. Nevertheless here we WILL conform to the established terminology and implicitly take RAM to mean a **[volatile](volatile.md) random access read/write memory serving as a working memory** (volatile meaning it's erased on power off). Compare RAM to [ROM](rom.md) (rad only memory, which may or may not allow random access) and [SAM](sam.md).
RAM stands for *random access memory*, a type of [computer](computer.md) [memory](memory.md) characterized by allowing access to arbitrary addresses (as opposed to [SAM](sam.md) -- sequential memories, such as tapes, which only allow sequential access); a bit confusingly (for historical reasons) the term RAM came to be used more as a synonym for so called **main memory**, i.e. the computer's **working memory** (memory used for performing the actual computation, as opposed to e.g. persistent storage or [read only memory](rom.md)). It is true that working memory is very often a random access memory, but it doesn't always have to be so and there exist random access memories that don't serve as the main working memory. Similarly confusing is the fact that RAM is often opposed to [ROM](rom.md) (read only memory) -- again, it is true that many computers use RAM as main working memory and ROM as the "other" kind of memory used for static data so in practice these two complement each other, but it is entirely possible for random access memory to be read-only (so RAM can also be ROM) and so on. Nevertheless, though it's imprecise, in this articles we WILL conform to the established terminology a lot -- implicitly we will see RAM as meaning a **[volatile](volatile.md) random access read/write memory serving as a working memory** (volatile meaning it's erased on power off).
RAM is one of the main components of a computer, it closely cooperates with the [CPU](cpu.md); in fact CPU without RAM would be basically useless; RAM serves the CPU as a "scratchpad" where it keeps intermediate results to perform more complex calculations. RAM, being a relatively fast memory, is also often used to temporarily load parts of bigger [data](data.md) for faster access, sometimes it may also store the instructions of the program being executed by the CPU. For this RAM is, along with the CPU, one of the two components which can never be missing in a computer. A computer can work without a [hard disk](hdd.md), without keyboard, mouse and monitor, but it can never meaningfully work without RAM.