All too often, COMPUTER MEMORY is solely associated with the process of storing something of value—usually to be retrieved at a later date. While not wholly incorrect, this composition of code and integrated circuits involves much more. Computer Science, for example, is said to be sister science to Biology. So if the human mind is measured by its ability to store information, along with its knack for quickly retrieving and processing it (all while maintaining its integrity), computer memory should follow this same premise.
In other words, computer memory is as much about performance as it is storage, requiring both hardware and software components to work together in unison. Memory architecture—which is also comprised of software and hardware—is complete with volatile and non-volatile components. Operating system software is the governing power in any computer system, but a specific resource known as the “Memory Manager” is allocated to manage random-access memory (RAM), as well as overflows, leaks, viruses and other vulnerabilities.
Volatile computer memory
RAM directly impacts a computing device’s performance (or speed) and is hence a selling-point for new computers and mobile devices. It optimizes computer memory by storing frequently used programs so that data can be read and written efficiently. There are several types of RAM available on the market, but the most commonly used types are static (SRAM) and dynamic (DRAM).
Static RAM is the more expensive of the two. It caches data for processing in a computer’s central processing unit (CPU), resulting in faster performance and less consumption of power. Dynamic RAM, on the other hand, isn’t as fast or conservative. It’s principally used throughout system architecture with its largest application being the main memory, itself.
Modern operating systems also simulate a technique known as “virtual memory” which designates a portion of a computer’s hard disk for paging. Paging is the process of dividing jobs into equal parts (or pages) before loading them into memory locations known as page frames. This “paged memory allocation,” as it is called, can be implemented in four different ways:
- Demand paging
- Segmented/demand paging
These schemes are advantageous due their abilities to store programs in noncontiguous locations. This represents a break from earlier methods which required programs to be loaded in their entirety in bordering locations of main memory. Now when a page is done processing, its resource (or frame) is freed so that the next job in sequence can begin processing without regard to any physical location.
As you can see, virtual memory not only increases the total amount of RAM in a given session, but optimizes it as jobs are being processed. A session, in this context, is determined by the state of a computer’s power supply. When the power supply is reset or removed, both RAM and virtual memory loses its state. Neither, therefore, is ideal for long-term memory.
Non-volatile computer memory
When programs and data need to be stored perpetually, non-volatile solutions are needed. Read-only memory (ROM), also known as firmware, generally provides this support. ROM at the circuit-level is any component that is programmed with specific data. Hard disks, USB flash drives and other types of removable media, on the other hand, are examples of ROM that users interact with. ROM components do not require a power source, and allow data to be stored until needed. But it should also be noted that removable media is one of the most basic methods for spreading viruses and malicious code.
The bottom line is that growing demands for speed and space has catapulted memory to the forefront of modern computing. This has resulted in new types of RAM as well as methods for optimizing and processing jobs. Solid state drives, for example, are becoming an increasingly popular choice for performance, while developments for non-volatile RAM are well under way. Such experimentation is shaping a new generation of products which will defy the limitations of traditional RAM and computer memory as we know it.