Browse Course Material

Course info, instructors.

  • Kyle Murray

Departments

  • Electrical Engineering and Computer Science

As Taught In

  • Programming Languages
  • Software Design and Engineering

Learning Resource Types

Introduction to c and c++, c memory management.

Topics: Computer memory layout (heap, stack, call stack), pointers and addresses, arrays, strings, and manual memory allocation/deallocation.

Lecture Notes

Lecture 3: C Memory Management (PDF)

Lab Exercises

The primary goal of this lab period is to introduce pointers, addresses, arrays, and manual memory management.

Take a look at the above code. In lecture, I pointed out that function variables are passed by value, not reference. So this program will currently print out 4 . Compile the code to confirm this.

Use pointers and addresses to modify the code so x is passed by reference instead and is squared. This will involve changes to the square function that does not involve changing void to int and giving square a return statement. Make sure your code compiles with -Wall flag without warnings.

While coding up this exercise, listening to Hakuna Matata, I was so worry-free I forgot how to use C!

Fix the following code so that it creates a string str and copies “ hakuna matata! ” into it.

After confirming your fix works, change the code to use heap memory instead of the stack. Remember, everything you malloc you must also free !

Assignment 3

In sort.c, I’ve implemented a basic implementation of insertion sort (not too efficient, but a very simple sorting algorithm). Look at and understand the code (read comments), and put the proper argument data type for the sort function’s first argument. Compile and run the code to make sure it works (it sorts the numbers).

Now, replace all array index access (places where I access the array with [] , such as in A[i] ) in the entire program by using pointer addition instead. Also, where I create the array (line 34, int array[n] ;), replace that with an array creation using malloc (of same size).

Hint: Since we’re using malloc, we must also make another change!

Make sure your program compiles and runs correctly (numbers are sorted).

The purpose of resize.c is to create an initial array of a user-specified size, then dynamically resize the array to a new user-specified size. I’ve given a shell of the code, including code to get user-specified sizes as int s.

However, the code is missing a few things. You must manage the memory for the array! Look at the comments in the code that describe what should be done and fill in blanks. Make sure the program compiles and runs as expected.

Assignment 3 solution (PDF)

facebook

You are leaving MIT OpenCourseWare

Computer Fundamentals Tutorial

  • Computer Fundamentals
  • Computer - Home
  • Computer - Fundamentals
  • Computer - Overview
  • Computer - Basic Introduction
  • Computer - Advantages & Disadvantages
  • Computer - Classification
  • Computer - Applications
  • Computer - History and Evolution of Computers
  • Computer - History
  • Computer - System Characteristics
  • Computer - Origins
  • Computer - Generations
  • Computer - Types
  • Computer - Components
  • Computer - CPU
  • Computer - Input Devices
  • Computer - Output Devices
  • Computer - Memory Units
  • Computer - Arithmetic Logic Unit (ALU)
  • Computer - Hardware
  • Computer - Motherboard
  • Computer - RAM
  • Computer - Read Only Memory
  • Computer - GPU
  • Computer - PSU
  • Computer - Graphics Processing Unit (GPU)
  • Computer - Power Supply Unit (PSU)
  • Computer - Peripherals
  • Computer - Software
  • Computer - Software Types
  • Computer - NAND Flash Memory
  • Computer - NVMe Memory
  • Computer - CompactFlash Card
  • Computer - Application Software
  • Computer - System Software
  • Computer - Utility Software
  • Computer - Open Source Software
  • Computer - Data Storage and Memory
  • Computer - Storage Devices
  • Computer - Types of Data Storage
  • Computer - Hard Disk Drives (HDD)
  • Computer - Solid State Drives (SSD)
  • Computer - Optical Storage
  • Computer - USB Flash Drives
  • Computer - Memory Cards
  • Computer - Cloud Storage

Computer - Memory

  • Computer - Memory Classification
  • Computer - Register Memory
  • Computer - Cache Memory
  • Computer - Primary Memory
  • Computer - Secondary Memory
  • Computer - Video Random-Access Memory (VRAM)
  • Computer - Internet and Intranet
  • Computer - Internet
  • Computer - Interanet
  • Computer - Internet Access Techniques
  • Computer - Internet Etiquettes
  • Computer - Extranet
  • Computer - Websites
  • Computer - Search Engines
  • Computer - Web Browsing Software
  • Computer - Word Processors
  • Computer - Spread Sheet
  • Computer - Database Systems
  • Computer - Power Presentations
  • Computer - E-mail Tools
  • Computer - Ports
  • Computer - Number System
  • Computer - Number Conversion
  • Computer - Data and Information
  • Computer - Networking
  • Computer - Operating System
  • Computer - Programming Languages
  • Computer - Keyboard Shortcut Keys
  • Computer - Antivirus
  • Computer - Virus
  • Computer - Applications of IECT
  • Computer - Data Processing Stages
  • Computer - Data Representation
  • Computer - Communication and Collaboration
  • Computer - Digital Financial Services
  • Computer - Domain Specific Tools
  • Computer - Microprocessor Concepts
  • Computer - How to Buy?
  • Computer - Available Courses
  • Computer Useful Resources
  • Computer - Quick Guide
  • Computer - Useful Resources
  • Computer - Discussion
  • Selected Reading
  • UPSC IAS Exams Notes
  • Developer's Best Practices
  • Questions and Answers
  • Effective Resume Writing
  • HR Interview Questions
  • Computer Glossary

What is computer memory?

A physical device that stores data or information temporarily or permanently in it is called memory. It’s a device where data is stored and processed. In common, a computer has primary and secondary memories. Auxiliary (secondary) memory stores data and programs for long-term storage or until the time a user wants to keep them in memory, while main memory stores instructions and data during programme execution; hence, any programme or file that is currently running or executing on a computer is stored in primary memory.

Memory Classification

Computer memory comes in various types and serves different purposes −

Primary Memory (RAM - Random Access Memory) − Volatile memory loses its contents when the machine is turned off. RAM stores the data that is actively being used. During the booting process of a system, the operating system actively uses RAM and applications that are necessary to execute a file or a program. It speeds up CPU processing by providing fast data and instruction access.

Secondary Memory (Storage) − Secondary Memory is also known as permanent memory or non-volatile memory of a computer. Secondary memory retains data when the machine shuts down. Files, programmes, and the OS are stored there permanently. HDDs, SSDs, USB flash drives, and optical discs are non-volatile memory devices.

Cache Memory − Memory that is smaller and faster than RAM is called cache memory. It is placed closer to the CPU than the RAM.

Cache

It saves data and instructions that are used a lot so that processing goes faster.

Different types of cache memory, like L1, L2, and L3 cache, have different speeds and amounts of space.

The Levels of Cache Memory: L1, L2, and L3

CPU Cache memory is divided into three "levels": L1, L2, and L3. The memory hierarchy is again according to the speed and, thus, the cache size.

Level 1 cache is a computer's fastest memory. The CPU's most frequently accessed data resides in the L1 cache. CPU determines L1 cache size. Some high-end consumer CPUs, such as the Intel i9-9980XE, have a 1MB L1 cache, but they are expensive and rare. Server chipsets like Intel's Xeon have 1-2MB L1 memory cache. Before buying, examine the CPU specs to ascertain the L1 cache size. There is no "standard" amount.

Source

Source: [1]

The L1 cache normally has two sections: the instruction cache, which stores CPU operation information, and the data cache, which stores operation data.

Level 2 cache is larger but slower than L1. Modern L2 memory caches are gigabytes, not kilobytes. AMD's top-rated Ryzen 5 5600X has 384KB L1 and 3MB L2 caches and 32MB L3 cache. The L2 cache size depends on the CPU but is usually 256KB to 32MB. Nowadays, most CPUs have more than 256KB L2 cache, which is small. Some of the most powerful current CPUs have L2 memory caches exceeding 8MB. In terms of speed, the L2 cache is slower than the L1 cache but still faster than the system RAM. L2 caches are 25 times faster than RAM, while L1 caches are 100 times faster.

Level 3 cache. The L3 memory cache was originally on the motherboard. This was long ago when most CPUs were single-core. The L3 cache on top-end consumer CPUs can reach 32MB, while AMD's groundbreaking Ryzen 7 5800X3D CPUs have 96MB. CPU L3 caches in some servers can reach 128MB.

The largest and slowest cache memory unit is L3. Modern CPUs have an on-chip L3 cache. The chip's L1 and L2 caches serve each core, while the L3 cache is more like a memory pool for the whole chip. The following images illustrate the CPU memory cache levels for a 2012 Intel Core i5-3570K CPU and a 2020 AMD Ryzen 5800X CPU. The second image's bottom right corner contains CPU cache data.

Cache L3

Note how both CPUs have a split L1 cache and larger L2 and L3 caches. On the AMD Ryzen 5800X, the L3 cache is over five times greater than the Intel i5-3570K.

How cache memory works:

Hierarchy − Computers normally have L1, L2, and L3 caches are the several layers of cache memory. The L1 cache is the smallest and fastest cache, located closest to the CPU; L2 and L3 caches are larger and slower.

Cache Organization − Each block or line of cache memory contains a small bit of data copied from the main memory. The CPU accesses cache memory in fixed-size blocks, not bytes.

Cache Coherency − Cache coherency ensures cached data matches the main memory data. Cache coherence techniques update other cores' caches when one core writes to a memory location in a multi-core processor.

Cache Replacement Policies − A cache replacement policy decides which block to evict when the cache is full and a new block is needed. LRU, FIFO, and Random Replacement are common policies.

Cache Access − The CPU checks the cache before reading or writing data. When data is cached, the CPU can quickly retrieve it. If data is not in the cache (cache miss), the CPU must fetch it from the main memory, which may delay it.

Cache Hierarchy − Modern processors contain L1, L2, and L3 caches that grow in capacity and latency farther from the CPU cores. Parallel access is achieved by splitting the L1 cache into instruction and data caches.

Cache Management − Optimization of cache utilization maximizes hit rates and minimizes miss penalties. Prefetching, where the processor predicts memory accesses and loads data into the cache, improves cache performance.

Cache memory buffers frequently access data between the CPU and main memory to speed up processing and increase system performance. Modern computer systems require effective management and structure for optimal performance.

Register Memory

Register memory, which is also called processor registers or "registers," is the smallest and fastest type of computer memory that is directly integrated into the CPU. Registers are small, fast storage units inside the CPU that are used to quickly store data that is being processed or instructions that are being run.

Registers serve several important functions in a computer system

Instruction Execution − Registers hold the instructions that the CPU is currently running. This includes the operation code (opcode) and associated operands with it.

Data Storage − Registers store CPU-processed data. This can provide memory addresses, intermediate values during arithmetic or logical operations, and other data needed by the instructions being executed.

Addressing − Memory addresses are used to store or retrieve data from memory locations in RAM or other parts of the computer's memory hierarchy.

Types of registers

Program Counter (PC) − Stores the memory address of the next instruction to be fetched and executed.

Instruction Register (IR) − Holds the current instruction being executed by the CPU.

Memory Address Register (MAR) − Stores the memory address of data being read from or written to memory.

Memory Data Register (MDR) − Contains the actual data being read from or written to memory.

General-Purpose Registers (GPRs) − Used for general data storage and manipulation during program execution.

Video Random-Access Memory (VRAM)

Video Random-Access Memory (VRAM) is a type of memory that is intended to work with video cards and graphics processing units (GPUs). It's a special place in memory where graphics data like images, frame buffers, and other graphics-related data can be stored.

VRAM is designed to handle the fast, parallel processing demands of rendering graphics and images on computer displays. It enables GPUs to quickly access large amounts of graphic data, which lets them render complex scenes, textures, and animations.

How does VRAM work?

Key features of VRAM include −

High Bandwidth − VRAM typically offers high-speed data transfer rates, enabling fast access to graphical data by the GPU.

Parallel Access − VRAM is designed to support parallel access, allowing multiple rendering tasks to access different portions of the memory simultaneously.

Specialized Architecture − VRAM often has a specialized architecture optimized for graphics processing tasks, including features such as multi-port access and wide memory buses.

Dedicated Graphics Memory − Unlike system RAM, which is shared among various system components, VRAM is dedicated solely to graphics processing, ensuring that the GPU has sufficient memory bandwidth and capacity for rendering graphics-intensive applications.

Types of VRAM

GDDR (Graphics Double Data Rate) VRAM − This is the most commonly used type of VRAM, it is majorly found in modern GPUs. GDDR5, GDDR5X, and GDDR6 are some of the variants that provide improvements in power efficiency and bandwidth over earlier generations.

HBM (High Bandwidth Memory) − HBM VRAM is a more recent technology that provides even greater bandwidth at lower power consumption than conventional GDDR VRAM. It accomplishes this by minimising the distance data must travel between memory cells by stacking memory chips vertically on a silicon interposer.

Encyclopedia Britannica

  • History & Society
  • Science & Tech
  • Biographies
  • Animals & Nature
  • Geography & Travel
  • Arts & Culture
  • Games & Quizzes
  • On This Day
  • One Good Fact
  • New Articles
  • Lifestyles & Social Issues
  • Philosophy & Religion
  • Politics, Law & Government
  • World History
  • Health & Medicine
  • Browse Biographies
  • Birds, Reptiles & Other Vertebrates
  • Bugs, Mollusks & Other Invertebrates
  • Environment
  • Fossils & Geologic Time
  • Entertainment & Pop Culture
  • Sports & Recreation
  • Visual Arts
  • Demystified
  • Image Galleries
  • Infographics
  • Top Questions
  • Britannica Kids
  • Saving Earth
  • Space Next 50
  • Student Center
  • Introduction

Magnetic drum memory

Magnetic core memory, semiconductor memory.

  • Magnetic disk drives
  • Magnetic tape
  • Optical discs
  • Magneto-optical discs
  • Memory hierarchy

Figure 6: The increasing capacity of dynamic random-access memory (DRAM) chips.

computer memory

Our editors will review what you’ve submitted and determine whether to revise the article.

  • University of Diyala - College of Science - Computer memory
  • Computer History Museum - Memory & Storage
  • Computer Hope - Memory
  • Engineering LibreTexts - Memory
  • Institute for Statistics and Mathematics Resources Web Page - Computer Memory
  • University of Babylon - Computer Memory
  • Table Of Contents

computer memory , device that is used to store data or programs (sequences of instructions) on a temporary or permanent basis for use in an electronic digital computer . Computers represent information in binary code , written as sequences of 0s and 1s. Each binary digit (or “ bit ”) may be stored by any physical system that can be in either of two stable states, to represent 0 and 1. Such a system is called bistable. This could be an on-off switch, an electrical capacitor that can store or lose a charge, a magnet with its polarity up or down, or a surface that can have a pit or not. Today capacitors and transistors , functioning as tiny electrical switches, are used for temporary storage, and either disks or tape with a magnetic coating, or plastic discs with patterns of pits are used for long-term storage.

Computer memory is divided into main (or primary) memory and auxiliary (or secondary) memory. Main memory holds instructions and data when a program is executing, while auxiliary memory holds data and programs not currently in use and provides long-term storage.

Main memory

The earliest memory devices were electro-mechanical switches, or relays ( see computers: The first computer ), and electron tubes ( see computers: The first stored-program machines ). In the late 1940s the first stored-program computers used ultrasonic waves in tubes of mercury or charges in special electron tubes as main memory. The latter were the first random-access memory (RAM). RAM contains storage cells that can be accessed directly for read and write operations, as opposed to serial access memory, such as magnetic tape, in which each cell in sequence must be accessed till the required cell is located.

Magnetic drums, which had fixed read/write heads for each of many tracks on the outside surface of a rotating cylinder coated with a ferromagnetic material, were used for both main and auxiliary memory in the 1950s, although their data access was serial.

computer chip. computer. Hand holding computer chip. Central processing unit (CPU). history and society, science and technology, microchip, microprocessor motherboard computer Circuit Board

About 1952 the first relatively cheap RAM was developed: magnetic core memory, an arrangement of tiny ferrite cores on a wire grid through which current could be directed to change individual core alignments. Because of the inherent advantage of RAM, core memory was the principal form of main memory until superseded by semiconductor memory in the late 1960s.

There are two basic kinds of semiconductor memory. Static RAM (SRAM) consists of flip-flops, a bistable circuit composed of four to six transistors. Once a flip-flop stores a bit, it keeps that value until the opposite value is stored in it. SRAM gives fast access to data, but it is physically relatively large. It is used primarily for small amounts of memory called registers in a computer’s central processing unit (CPU) and for fast “cache” memory. Dynamic RAM (DRAM) stores each bit in an electrical capacitor rather than in a flip-flop, using a transistor as a switch to charge or discharge the capacitor. Because it has fewer electrical components, a DRAM storage cell is smaller than SRAM. However, access to its value is slower and, because capacitors gradually leak charges, stored values must be recharged approximately 50 times per second. Nonetheless, DRAM is generally used for main memory because the same size chip can hold several times as much DRAM as SRAM.

Storage cells in RAM have addresses. It is common to organize RAM into “words” of 8 to 64 bits, or 1 to 8 bytes (8 bits = 1 byte). The size of a word is generally the number of bits that can be transferred at a time between main memory and the CPU. Every word, and usually every byte, has an address. A memory chip must have additional decoding circuits that select the set of storage cells that are at a particular address and either store a value at that address or fetch what is stored there. The main memory of a modern computer consists of a number of memory chips, each of which might hold many megabytes (millions of bytes), and still further addressing circuitry selects the appropriate chip for each address. In addition, DRAM requires circuits to detect its stored values and refresh them periodically.

Main memories take longer to access data than CPUs take to operate on them. For instance, DRAM memory access typically takes 20 to 80 nanoseconds (billionths of a second), but CPU arithmetic operations may take only a nanosecond or less. There are several ways in which this disparity is handled. CPUs have a small number of registers, very fast SRAM that hold current instructions and the data on which they operate. Cache memory is a larger amount (up to several megabytes) of fast SRAM on the CPU chip. Data and instructions from main memory are transferred to the cache , and since programs frequently exhibit “locality of reference”—that is, they execute the same instruction sequence for a while in a repetitive loop and operate on sets of related data—memory references can be made to the fast cache once values are copied into it from main memory.

Much of the DRAM access time goes into decoding the address to select the appropriate storage cells. The locality of reference property means that a sequence of memory addresses will frequently be used, and fast DRAM is designed to speed access to subsequent addresses after the first one. Synchronous DRAM (SDRAM) and EDO (extended data output) are two such types of fast memory.

Nonvolatile semiconductor memories, unlike SRAM and DRAM, do not lose their contents when power is turned off. Some nonvolatile memories, such as read-only memory (ROM), are not rewritable once manufactured or written. Each memory cell of a ROM chip has either a transistor for a 1 bit or none for a 0 bit. ROMs are used for programs that are essential parts of a computer’s operation, such as the bootstrap program that starts a computer and loads its operating system or the BIOS (basic input/output system) that addresses external devices in a personal computer (PC).

EPROM (erasable programmable ROM), EAROM (electrically alterable ROM), and flash memory are types of nonvolatile memories that are rewritable, though the rewriting is far more time-consuming than reading. They are thus used as special-purpose memories where writing is seldom necessary—if used for the BIOS, for example, they may be changed to correct errors or update features.

How-To Geek

What is ram everything you need to know.

4

Your changes have been saved

Email is sent

Email has already been sent

Please verify your email address.

You’ve reached your account maximum for followed topics.

Quick Links

What is ram, what ram does, how ram works, what is ddr, speeds, voltages, and capacities.

People often draw parallels between computers and the human brain, and sometimes, it's an apt comparison. For example, both the brain and a computer have short- and long-term memory. RAM is where a computer stores its short-term memory.

RAM stands for Random Access Memory, and if you've ever opened a lap- or desktop computer, you've seen it. In the image above, you see modern RAM sticks for desktop PCs. They have a sleek casing that functions as a heat spreader. However, unless you're a high-powered overclocker, this is mostly about looks (and making them easier to install.)

Laptops, meanwhile, often have more basic RAM sticks, as space concerns are paramount. Plus, unlike modern PC cases with transparent sides, people rarely see the inside of a laptop. However, you can get laptop RAM (especially for gaming models) with heat spreaders.

A flow charge showing how data moves from SSD, to processor, to RAM.

So now, we know that those sticks in your PC's motherboard are system RAM, and they function as short-term memory, but what does that all mean in practice? Well, when you carry out actions on your computer, like opening a text document, it requires access to the data contained in that file. When you're not working on that document or you click save, the latest copy of that file is saved to the hard drive in long-term storage.

When you're working on the file, however, the most recent data is stored in RAM for quicker access. This is true for spreadsheets, text documents, web pages, and streaming video.

It's not just document data, either. RAM can also store program and OS files to keep apps and your computer humming along. RAM isn't the sole source of short-term memory, though. For example, a graphics card has its own graphics RAM and the processor has smaller data caches.

Nevertheless, RAM is the key location for data that are actively being used by the system.

A RAM stick with bare modules sitting in a motherboard's RAM slot.

RAM is made up of tiny capacitors and transistors capable of holding an electric charge that represents bits of data, similar to processors and other parts of your computer. This electrical charge needs to be constantly refreshed. If it's not, the capacitors lose their charge very quickly and the data disappears from RAM.

The fact that data can be lost so quickly when the charge is gone is why saving any changed data to the hard drive or SSD is so important. It's also why so many programs have autosave features or cache unsaved changes in the case of an unexpected shutdown.

Forensic specialists can retrieve data from RAM under special circumstances. However, most of the time, once you're done with a file or your computer shuts down, the information in RAM is gone.

A Corsair Vengeance DDR3 RAM stick.

The most common form of RAM currently used is DDR4. It's the fourth version of Double Data Rate Synchronous Dynamic Random-Access Memory (DDR SDRAM). "Double data rate" means data can be transferred twice per clock cycle, as opposed to just once. Effectively, it means you double the memory bandwidth, and also refers to how quickly data can be moved into and out of RAM.

Prior to DDR4, computers were using (surprise, surprise!) DDR3. It's not uncommon for computers to still be rocking DDR3 RAM. DDR4 came out in late 2014, and it didn't become the most common type of RAM until a few years later.

RAM sticks are "keyed" to prevent people from mixing and matching different generations of it that are incompatible. If you look at the RAM stick shown above, for example, you'll see a small divot in the bottom row. On DDR4, that divot is in a different place, so that (along with other differences) makes it impossible to put a DDR3 stick into a DDR4 slot.

RAM also comes in two types: DIMM and SODIMM. DIMM is used in desktop tower PCs and servers, while SODIMM is used in smaller devices, like laptops and compact desktops. Some premade computers (especially laptops) also have RAM modules directly soldered to the motherboard. When this is the case, there are no RAM sticks, which makes upgrading impractical.

Trident-Z RAM with built-in RGB LED on the top of the sticks.

While the basics of what RAM does are very simple, there are vastly different types, even among DDR4. For example, RAM functions at varying speeds, such as 2,400, 3,000, or 3,200 MHz. It also comes in different sizes, like 4, 8, or 16 GB.

Generally, modern computers need two RAM sticks (called a kit) of the same size to run in what's called "dual-channel mode." Basically, this just means a PC is running on two sticks of RAM.

Many people claim you can mix and match different RAM configurations, and that's mostly true. However, it's much easier to maintain a PC if its RAM is the same speed and capacity, and comes from the same manufacturer, in that order of importance.

Getting RAM of the same voltage is also a concern, but a lot of desktop DDR4 is sold at a stock 1.35 volts, making this less of an issue. Laptops and earlier generations of RAM, however, are a different story.

If you can't get the same make of RAM for a laptop, at least make sure you use the same voltage, speed, and capacity. How much RAM you can use also depends on what your motherboard can take. An aging laptop, for example, might only be able to handle up to an 8 GB DDR3.

A modern desktop PC, though, might be able to take something like a 128 GB DDR4, depending on its processor and motherboard. For most people, though, 8 to 16 GB is plenty.

There's a lot more to RAM than this basic overview. If you're overclocking , then voltages and timings become important. If not, though, you hopefully now have a better understanding of what RAM does, and why it's such an important component of your PC.

Introduction

  • Evolution of Computing Devices
  • Digital Computers
  • Boolean Algebra
  • Basics of Digital Components
  • Memory Unit
  • Random Access Memory
  • Read Only Memory
  • Architecture of Computer System
  • Logic Gates
  • Instruction Codes
  • Addressing Modes and Instruction Cycle
  • Memory Organisation
  • Mapping and Virtual Memory
  • Parallel Processing
  • Vector and Superscalar
  • Array Processor
  • I/O Organisation
  • I/O Processor
  • Priority Interrupt
  • Serial Communication
  • I/O Channels
  • Interleaved Memory
  • RISC/CISC Processors
  • Booth Multiplication
  • Design of Control Unit

Memory Organization in Computer Architecture

A memory unit is the collection of storage units or devices together. The memory unit stores the binary information in the form of bits. Generally, memory/storage is classified into 2 categories:

  • Volatile Memory : This loses its data, when power is switched off.
  • Non-Volatile Memory : This is a permanent storage and does not lose any data when power is switched off.

Memory Hierarchy

Memory Hierarchy

The total memory capacity of a computer can be visualized by hierarchy of components. The memory hierarchy system consists of all storage devices contained in a computer system from the slow Auxiliary Memory to fast Main Memory and to smaller Cache memory.

Auxillary memory access time is generally 1000 times that of the main memory, hence it is at the bottom of the hierarchy.

The main memory occupies the central position because it is equipped to communicate directly with the CPU and with auxiliary memory devices through Input/output processor (I/O).

When the program not residing in main memory is needed by the CPU, they are brought in from auxiliary memory. Programs not currently needed in main memory are transferred into auxiliary memory to provide space in main memory for other programs that are currently in use.

The cache memory is used to store program data which is currently being executed in the CPU. Approximate access time ratio between cache memory and main memory is about 1 to 7~10

Memory Organization

Memory Access Methods

Each memory type, is a collection of numerous memory locations. To access data from any memory, first it must be located and then the data is read from the memory location. Following are the methods to access information from memory locations:

  • Random Access : Main memories are random access memories, in which each memory location has a unique address. Using this unique address any memory location can be reached in the same amount of time in any order.
  • Sequential Access : This methods allows memory access in a sequence or in order.
  • Direct Access : In this mode, information is stored in tracks, with each track having a separate read/write head.

Main Memory

The memory unit that communicates directly within the CPU, Auxillary memory and Cache memory, is called main memory. It is the central storage unit of the computer system. It is a large and fast memory used to store data during computer operations. Main memory is made up of RAM and ROM , with RAM integrated circuit chips holing the major share.

  • DRAM : Dynamic RAM, is made of capacitors and transistors, and must be refreshed every 10~100 ms. It is slower and cheaper than SRAM.
  • SRAM : Static RAM, has a six transistor circuit in each cell and retains data, until powered off.
  • NVRAM : Non-Volatile RAM, retains its data, even when turned off. Example: Flash memory.
  • ROM: Read Only Memory, is non-volatile and is more like a permanent storage for information. It also stores the bootstrap loader program, to load and start the operating system when computer is turned on. PROM (Programmable ROM), EPROM (Erasable PROM) and EEPROM (Electrically Erasable PROM) are some commonly used ROMs.

Auxiliary Memory

Devices that provide backup storage are called auxiliary memory. For example: Magnetic disks and tapes are commonly used auxiliary devices. Other devices used as auxiliary memory are magnetic drums, magnetic bubble memory and optical disks.

It is not directly accessible to the CPU, and is accessed using the Input/Output channels.

Cache Memory

The data or contents of the main memory that are used again and again by CPU, are stored in the cache memory so that we can easily access that data in shorter time.

Whenever the CPU needs to access memory, it first checks the cache memory. If the data is not found in cache memory then the CPU moves onto the main memory. It also transfers block of recent data into the cache and keeps on deleting the old data in cache to accomodate the new one.

The performance of cache memory is measured in terms of a quantity called hit ratio . When the CPU refers to memory and finds the word in cache it is said to produce a hit . If the word is not found in cache, it is in main memory then it counts as a miss .

The ratio of the number of hits to the total CPU references to memory is called hit ratio.

Hit Ratio = Hit/(Hit + Miss)

Associative Memory

It is also known as content addressable memory (CAM) . It is a memory chip in which each bit position can be compared. In this the content is compared in each bit cell which allows very fast table lookup. Since the entire chip can be compared, contents are randomly stored without considering addressing scheme. These chips have less storage capacity than regular memory chips.

  • ← Prev
  • Next →

  CAO MCQ Tests

  gate mcq questions.

  • Technical support

Alexander S. Gillis

  • Alexander S. Gillis, Technical Writer and Editor

Memory is the electronic holding place for the instructions and data a computer needs to reach quickly. It's where information is stored for immediate use. Memory is one of the basic functions of a computer, because without it, a computer would not be able to function properly. Memory is also used by a computer's operating system, hardware and software.

There are technically two types of computer memory: primary and secondary. The term memory is used as a synonym for primary memory or as an abbreviation for a specific type of primary memory called random access memory ( RAM ). This type of memory is located on microchips that are physically close to a computer's microprocessor.

If a computer's central processer ( CPU ) had to only use a secondary storage device, computers would become much slower. In general, the more memory (primary memory) a computing device has, the less frequently the computer must access instructions and data from slower (secondary) forms of storage.

How primary, secondary and cache memory relate to each other

Memory vs. storage

The concept of memory and storage can be easily conflated as the same concept; however, there are some distinct and important differences. Put succinctly, memory is primary memory, while storage is secondary memory. Memory refers to the location of short-term data, while storage refers to the location of data stored on a long-term basis.

Memory is most often referred to as the primary storage on a computer, such as RAM. Memory is also where information is processed. It enables users to access data that is stored for a short time. The data is only stored for a short time because primary memory is volatile, meaning it isn't retained when the computer is turned off.

The term storage refers to secondary memory and is where data in a computer is kept. An example of storage is a hard drive or a hard disk drive ( HDD ). Storage is nonvolatile , meaning the information is still there after the computer is turned off and then back on. A running program may be in a computer's primary memory when in use -- for fast retrieval of information -- but when that program is closed, it resides in secondary memory or storage.

How much space is available in memory and storage differs as well. In general, a computer will have more storage space than memory. For example, a laptop may have 8 GB of RAM while having 250 GB of storage. The difference in space is there because a computer will not need fast access to all the information stored on it at once, so allocating approximately 8 GB of space to run programs will suffice.

The terms memory and storage can be confusing because their usage today is not always consistent. For example, RAM can be referred to as primary storage -- and types of secondary storage can include flash memory. To avoid confusion, it can be easier to talk about memory in terms of whether it is volatile or nonvolatile -- and storage in terms of whether it is primary or secondary.

How does computer memory work?

When a program is open, it is loaded from secondary memory to primary memory. Because there are different types of memory and storage, an example of this could be a program being moved from a solid-state drive ( SSD ) to RAM. Because primary storage is accessed faster, the opened program will be able to communicate with the computer's processor at quicker speeds. The primary memory can be accessed immediately from temporary memory slots or other storage locations.

Memory is volatile, which means that data in memory is stored temporarily. Once a computing device is turned off, data stored in volatile memory will automatically be deleted. When a file is saved, it will be sent to secondary memory for storage.

There are multiple types of memory available to a computer. It will operate differently depending on the type of primary memory used, but in general, semiconductor-based memory is most associated with memory. Semiconductor memory will be made of integrated circuits with silicon-based metal-oxide-semiconductor (MOS) transistors .

Types of computer memory

In general, memory can be divided into primary and secondary memory; moreover, there are numerous types of memory when discussing just primary memory. Some types of primary memory include the following

  • Cache memory . This temporary storage area, known as a cache , is more readily available to the processor than the computer's main memory source. It is also called CPU memory because it is typically integrated directly into the CPU chip or placed on a separate chip with a bus interconnect with the CPU.
  • RAM. The term is based on the fact that any storage location can be accessed directly by the processor.
  • Dynamic RAM. DRAM is a type of semiconductor memory that is typically used by the data or program code needed by a computer processor to function.
  • Static RAM. SRAM retains data bits in its memory for as long as power is supplied to it. Unlike DRAM, which stores bits in cells consisting of a capacitor and a transistor, SRAM does not have to be periodically refreshed.
  • Double Data Rate SDRAM. DDR SRAM is SDRAM that can theoretically improve memory clock speed to at least 200 MHz .
  • Double Data Rate 4 Synchronous Dynamic RAM. DDR4 RAM is a type of DRAM that has a high-bandwidth interface and is the successor to its previous DDR2 and DDR3 versions. DDR4 RAM allows for lower voltage requirements and higher module density. It is coupled with higher data rate transfer speeds and allows for dual in-line memory modules ( DIMMS ) up to 64 GB.
  • Rambus Dynamic RAM. DRDRAM is a memory subsystem that promised to transfer up to 1.6 billion bytes per second. The subsystem consists of RAM, the RAM controller, the bus that connects RAM to the microprocessor and devices in the computer that use it.
  • Read-only memory. ROM is a type of computer storage containing nonvolatile, permanent data that, normally, can only be read and not written to. ROM contains the programming that enables a computer to start up or regenerate each time it is turned on.
  • Programmable ROM. PROM is ROM that can be modified once by a user. It enables a user to tailor a microcode program using a special machine called a PROM programmer .
  • Erasable PROM. EPROM is programmable read-only memory PROM that can be erased and re-used. Erasure is caused by shining an intense ultraviolet light through a window designed into the memory chip.
  • Electrically erasable PROM. EEPROM is a user-modifiable ROM that can be erased and reprogrammed repeatedly through the application of higher than normal electrical voltage. Unlike EPROM chips, EEPROMs do not need to be removed from the computer to be modified. However, an EEPROM chip must be erased and reprogrammed in its entirety, not selectively.
  • Virtual memory . A memory management technique where secondary memory can be used as if it were a part of the main memory. Virtual memory uses hardware and software to enable a computer to compensate for physical memory shortages by temporarily transferring data from RAM to disk storage.

Timeline of the history and evolution of computer memory

In the early 1940s, memory was only available up to a few bytes of space. One of the more significant signs of progress during this time was the invention of acoustic delay line memory. This technology enabled delay lines to store bits as sound waves in mercury, and quartz crystals to act as transducers to read and write bits. This process could store a few hundred thousand bits. In the late 1940s, nonvolatile memory began to be researched, and magnetic-core memory -- which enabled the recall of memory after a loss of power -- was created. By the 1950s, this technology had been improved and commercialized and led to the invention of PROM in 1956. Magnetic-core memory became so widespread that it was the main form of memory until the 1960s.

Metal-oxide-semiconductor field-effect transistors, also known as MOS semiconductor memory, was invented in 1959. This enabled the use of MOS transistors as elements for memory cell storage. MOS memory was cheaper and needed less power compared to magnetic-core memory. Bipolar memory, which used bipolar transistors, started being used in the early 1960s.

In 1961, Bob Norman proposed the concept of solid-state memory being used on an integrated circuit (IC) chip. IBM brought memory into the mainstream in 1965. However, users found solid-state memory to be too expensive to use at the time compared to other memory types. Other advancements during the early to mid-1960s were the invention of bipolar SRAM, Toshiba's introduction of DRAM in 1965 and the commercial use of SRAM in 1965. The single-transistor DRAM cell was developed in 1966, followed by a MOS semiconductor device used to create ROM in 1967. From 1968 to the early 1970s, N-type MOS (NMOS) memory also started to become popularized.

By the early 1970s, MOS-based memory started becoming much more widely used as a form of memory. In 1970, Intel had the first commercial DRAM IC chip. One year later, erasable PROM was developed and EEPROM was invented in 1972.

Continue Reading About memory

  • Flash memory vs. RAM: What's the difference?
  • Fast Guide to RAM
  • Cache vs tier: What's the difference between cache and storage?
  • Storage vs. memory
  • White Paper: Facts about memory

Related Terms

File Transfer Protocol (FTP) is a network protocol for transmitting files between computers over TCP/IP connections.

A virtual private network (VPN) is a service that creates a safe, encrypted online connection.

Network scanning is a procedure for identifying active devices on a network by employing a feature or features in the network ...

Cloud computing requires a security approach that is different than traditional protections. Where does cloud detection and ...

An endpoint protection platform (EPP) is a security technology that safeguards endpoint devices.

Endpoint security is the protection of endpoint devices against cybersecurity threats.

Executive leadership is the ability of those who manage or direct employees in an organization to influence and guide these ...

Transfer learning is a machine learning (ML) technique where an already developed ML model is reused in another task.

Return on investment (ROI) is a crucial financial metric investors and businesses use to evaluate an investment's efficiency or ...

Diversity, equity and inclusion is a term used to describe policies and programs that promote the representation and ...

Payroll software automates the process of paying salaried, hourly and contingent employees.

Organizational network analysis (ONA) is a quantitative method for modeling and analyzing how communications, information, ...

Customer segmentation is the practice of dividing a customer base into groups of individuals that have similar characteristics ...

Customer experience (CX) is the sum total of customers' perceptions and feelings resulting from interactions with a brand's ...

A buyer persona is a composite representation of a specific type of customer in a market segment.

  • Storage Hardware
  • Storage Software
  • Storage Management
  • Storage Networking
  • Backup and Recovery

Logo

Enterprise Storage Forum content and product recommendations are editorially independent. We may make money when you click on links to our partners. Learn More .

There are many types of computer memory, an umbrella term for data storage technology built into or externally connected to a computer device or server. Some are designed to be fast—the central processing unit (CPU) can access data stored there quickly—while others are designed to be low cost, so large amounts of data can be stored economically.

All computer memory types fall into one of two categories, primary or secondary, depending upon their purpose and use case. Knowing their different applications and strengths is essential to understanding how storage works and how to make the most of it.

Table of Contents

Primary Memory Types

Primary memory is the segment of computer memory that can be accessed directly for rapid processing and for quicker booting. It’s usually placed in close physical proximity to the CPU in order to minimize communication times. Examples of primary memory types include random access memory (RAM) and read only memory (ROM).

Both RAM and ROM are used to store data for direct access by the CPU. RAM is volatile, meaning its data is deleted once the system has been powered down. ROM is non-volatile, meaning it keeps its data after the system has been powered down.

Random-access memoryRead-only memory
VolatileNon-volatile
Up to 256GB per chipup to 8GB per chip
FasterSlower
In standard computing operationsDuring the boot process
DRAM, SRAMPROM, EPROM, EEPROM
HigherLower
LargerSmaller

Random Access Memory

Random-access memory (RAM) gets its name from the way the CPU accesses it and scans its lines randomly for the appropriate information rather than following strict directions. This is to equalize the time of access between all stored bits of data.

One of the defining features of RAM memory is that it’s incredibly fast—only marginally slower than the CPU itself. RAM is used to hold the data the CPU needs while it runs a program, which saves it time to reach the secondary storage every time it needs a piece of data or instruction.

However, RAM is also one of the most expensive components of a computer device, with cost usually measured per gigabyte. The high cost of RAM is the main reason why computers have to rely on both primary and secondary memory. There are two main types of RAM.

Dynamic RAM (DRAM)

The most common variety of RAM contains both a transistor and a capacitor in each of its cells. All computers must contain both RAM and DRAM to function and operate effectively. The oldest version of DRAM is known as single data rate (SDR) DRAM, but more recent versions like DDR2, DDR3, DDR4, and DDR5 tend to be more energy-efficient and more productive. The different types aren’t compatible, and computers can only use one type of DRAM.

Static RAM (SRAM)

SRAM is faster than either RAM or DRAM , but it’s considerably more expensive. It’s also bulkier, with six transistors in each cell. As such, SRAM is only used in small quantities, and almost always as cache memory to mediate the communication between the device’s main RAM and CPU and bridge the gap in clocking speeds. The fastest and smallest implementation of SRAM is as a cache memory inside the CPU’s core, working at the same speed to eliminate delays.

Read-Only Memory

ROM gets its name because data stored on it is immutable—it cannot be removed or changed using ordinary methods. Like RAM, it’s an incredibly fast type of computer memory that can be found in close proximity to the device’s CPU. But unlike RAM, ROM is non-volatile—it doesn’t lose its data when power is cut off—which it has in common with secondary memory.

When a device is turned on, or booted, the first thing the CPU reads is Instructions on the ROM, which usually contains “bootstrap code” that allows the computer to carry out the necessary steps for launching the operating system on the secondary memory.

There are three main types of ROM that can be found in all types of electronic devices, from game consoles to car radios and navigation systems.

Programmable ROM (PROM)

PROM is different from true ROM in that it is manufactured in its empty state instead of sold and distributed with instructions already programmed on it. PROM can be programmed after the fact using a PROM programmer or burner.

Erasable Programmable ROM (EPROM)

The information stored on EPROM can be erased and then reprogrammed. This can only be done by taking it out of the device and exposing it to ultraviolet light to erase it before burning new data to it.

Electronically Erased Programmable ROM (EEPROM)

EEPROM differs from both PROM and EPROM by not needing to be taken out to erase and reprogram. While the reformatting process can be slow, it’s not done often and usually only to update critical code such as firmware or BIOS.

Secondary Memory Types

Secondary memory is the persistent, non-volatile segment of computer memory not directly accessed by the CPU. It’s designed for more affordable long-term storage of large amounts of data. Examples include hard disk drives (HDDs), solid state drives (SSDs), cloud storage, and tape drives, to name a few.

Secondary memory tends to be more affordable than primary memory, and is available with much greater capacities. The different types of secondary memory enable users to store personal data and information along with software, applications, and services that can be accessed indirectly by the computer’s CPU through its RAM.

Hard Disk Drives (HDDs)

Hard disk drives are electro-mechanical data storage devices capable of keeping and restoring data over a long period of time. They’re built from a stack of rotating disks held in place by spindles. HDDs are the cheapest option per gigabyte compared to other long-term secondary storage, but they’re less durable.

HDDs have many moving parts, all of which have their own possible points of error. They’re also noisy, consume a lot of power, and can be slower to access and write compared to the speed of the average RAM. That said, HDDs are great for long-term storage and archiving. They’re often found in older and more budget-friendly desktop computers and laptops.

Solid State Drives

Solid-state drives are a type of semiconductor-based long-term, non-volatile storage. They use NAND flash memory in persistent data storage and are typically used as secondary storage in a computer to hold personal files. SSDs use flash memory to keep data in an integrated circuit. Data on an SSD can be written, read, duplicated, and transferred electronically without making noise or requiring movement.

Without the mechanical parts found in their HDD counterparts, SSDs are capable of operating silently and efficiently with minimal chances of physical damage. While they aren’t as durable, they can last up to five years, which means they aren’t as effective for archival and long-term storage. They’re faster and more compact than HDDs, but considerably more expensive and tend to be smaller in capacity.

Optical (CD or DVD) Drives

Optical storage is an umbrella term for storage that uses a laser to store and retrieve data from optical media such as CDs, DVDs, and Blu-ray discs. Most optical storage discs are read/write, allowing you to repeatedly erase and reburn new information onto their surface, but require a specialized drive.

An optical drive works by shooting a low-energy laser beam to scan the surface of the spinning optical storage media. How fast the writing and reading process depends on the spinning speed of the disc. On a micro level, optical discs have grooves and protrusions the optical drive can detect by analyzing how the laser reflects off of its surface.

Tape Drives

Tape drives are long-term, persistent, non-volatile data storage devices that use magnetic tapes to store, read, and write bits of data. They consist of an outer covering that protects a loop of flexible material that carries the data. Similarly to optical storage, tape storage cannot be accessed without specialized equipment. Tape drives use linear tape technology or a helical scan to read the magnetic markings on the tape.

Tape drives are ideal for long-term and archival storage, as the average unit can last for up to 30 years. They’re also cost-efficient and easy to maintain, making them suitable for keeping large volumes of data. That said, they’re bulky and incredibly slow—the drive has to rewind and go through the length of the entire tape to reach a specific point and pull data from it, unlike HDDs and SSDs that can be accessed more efficiently.

Storage Arrays

Storage arrays , also known as disk arrays, consist of a collection of fast-spinning HDDs, SSDs, or a hybrid of both storage types and are mostly used for storing object-based, file-based, or block-based data. They’re the most common alternative to server storage, as arrays combine multiple drives into a single, large-scale data storage system with centralized management.

Capable of storing and reliably maintaining petabytes of data at a time, storage arrays make data accessible by local client nodes as well as remote computers through an application programming interface (API) or dedicated graphical user interface (GUI) control panel. Storage arrays are employed by organizations, businesses, and enterprises with a large volume of data that needs to be managed centrally but accessed remotely by multiple users.

Network Attached Storage

Network attached storage, or NAS , is file-based storage connected to a wider computer network to give access to a wide range of users. While NAS is mostly used by large corporations and enterprises, it can be adapted to suit the needs of a small team of professionals. It’s ideal for situations where more than one device needs to access the same data simultaneously. It’s also great for collaborative work, as it only offers the latest version of a file.

Cloud Storage

In cloud storage , data is kept remotely on servers that can be accessed through an internet connection from anywhere, using any device. It’s widely used by both businesses and individuals to store data and files they need to access regularly, without having to carry them around locally or on external storage.

What Is the Difference Between Primary and Secondary Memory?

If the computer’s CPU directly communicates with a type of data storage, it’s considered primary storage and essential to the functioning and operation of the device. Secondary memory, on the other hand, encompasses a variety of storage device types not accessed directly by the CPU but rather through the primary storage. Here are a few other main differences:

  • Volatility— RAM is considered volatile storage, where all data is erased if the hardware loses power, while secondary memory is capable of keeping its data even after a power loss.
  • Speed— Primary storage needs to be fast in order to keep up with the rate of the CPU core, while secondary memory is relatively slower and not suitable for direct CPU access.
  • Cost— Because primary memory storage is designed to be incredibly fast, it’s also expensive and sold with smaller storage capacities, while a single secondary storage device can reach terabytes in size and still be reasonably priced.

Differences Between Volatile and Non-Volatile Memory

Volatile memory requires power to maintain stored information. When a computer is switched off, or if there’s a power outage, any data stored in volatile memory is lost. It’s typically faster than non-volatile memory, it’s where data that needs to be accessed quickly—such as the operating system, running applications, and the data those applications use—is stored.

The main characteristic of volatile memory is its temporary nature. It’s used for data that needs to be accessed instantly but doesn’t need to be kept. Volatile memory also offers high-speed data access, making it ideal for tasks that require rapid data processing.

Non-volatile memory can retain stored information even when not powered. A primary example of non-volatile memory is the hard disk drive in a computer where data that doesn’t need to be accessed quickly—such as files, operating system, applications, and software—is stored. Non-volatile memory is characterized by its ability to retain data even in the absence of power. However, it’s typically slower than volatile memory, as it’s not designed for rapid data access.

Bottom Line: Understanding the Types of Computer Memory

Technology relies upon many types of computer memory for both short- and long-term storage. Some are designed for rapid access, while others are designed to more economically retain larger amounts of data for longer periods. Understanding the differences among the various types, as well as their applications and use cases, can help you better maximize your data storage and data management efforts.

Read Five Types of Enterprise Data Storage to learn more about the different ways businesses store and manage information.

Anina Ot

Related Articles

15 software defined storage best practices, what is fibre channel over ethernet (fcoe), comparing ssd vs hdd speed: which is faster, get the free newsletter.

Subscribe to Cloud Insider for top news, trends, and analysis.

Latest Articles

Is das or nas more secure comparing das vs nas security.

Logo

                                                                                                            Source: Wikimedia Commons

Types of Memory

In computer terms, memory is divided into two categories:

1) Main memory or primary memory

2) Auxiliary memory or secondary memory

Stay updated and don’t get stuck in an exam. Prepare your General Awareness topics here.

Main memory or primary memory

The main memory unit that connects directly to the CPU is the primary memory. Further, there are two types of primary memory i.e RAM and ROM

1. Random Access Memory

RAM is also known as the volatile memory. It is in the form of the chip that is implemented with the use os semiconductors. Generally, RAM is used to store temporary storage of output data, input data, and intermediate results. RAM can be divided into two categories:

  • Static RAM or SRAM
  • Dynamic Ram or DRAM

2. Read-only memory

ROM is not as accessible as RAM and is, therefore, non-volatile memory. Once a ROM chip is programmed it cannot be rewritten or programmed. The only changes you can make in ROM is at the time of manufacturing. ROM has three categories which are:

  • Programmable ROM or PROM
  • Electrically Erasable Programmable ROM or EEPROM
  • Erasable Programmable ROM or EPROM

Auxiliary memory or secondary memory

Secondary memory is a permanent storage device. It is non-volatile in nature and is used to store programs and data when they are not being processed. Because of this, the data remains in the same stage as long as they are not deleted or rewritten from the user’s end. A secondary memory includes devices such as:

  • Optical disks like DVD, CD, and Blue-ray disks
  • Magnetic disks like memory stick, floppy disk, and hard disk drive.
  • Solid state disks like the thumb drive, pen, and flash.

Along with this one may also ask units and measurements as to how memory in computers is measured. We all use a hard disk and a pen drive to transfer the data from one place to another. But what are its units? Computer measures data in many forms such as Megabyte, Kilobyte, Byte, Bit, Nibble, Terabyte, Gigabyte, Exabyte, Petabyte, and many more. Here are the conversions of these data into one form or another:

8 Bits 1 Byte
Bytes (1024) KiloByte (1KB)
KB (1024) MegaByte (1MB)
MB (1024) GigaByte (1GB)
GB (1024) TeraByte (1TB)
TB (1024) PetaByte (1PB)
PB (1024) ExaByte (1EB)
EB (1024) ZettaByte (1ZB)
ZB (1024)  YottaByte (1YB)
1 YB  BrontoByte
1024 BrontoByte 1 GeopByte

In computer memory, bits is the smallest memory. While Geopbyte is the highest memory. 1 bit is the binary unit.

Want to see how smart you are? Want to exercise your brain? Click here for a wonderfully explained and lucid section of Reasoning Ability.

Abbreviations

EDO Extended data out

EGA Exterior gateway protocol or enhanced graphics array

DVR digital video recorder

EDSAC Electronic delay storage automatic calculator

EBCDIC Extended binary coded decimal interchange code

Having trouble with concepts like DBMS? Have an important exam soon? Click here and start your preparations now!

 Practice Questions

Q. Of what unit is a memory a part of?

A. Input device            B. Output device

C. Control unit            D. Central processing unit

Q. _______ is used to represent a character of information.

A. Field                         B. Bit

C. Byte                          D. Attribute

Q. Out of the following area ______ holds the information temporarily as the computer processes the information in the storage area of the computer itself.

A. Control unit            B. ROM

C. Hard disk                D. Main memory

Click here to learn everything you need to know about the English Language .

Find all the topics of Reasoning Ability here!

We have the most complete syllabus of quantitative aptitude in one place for you! Click here

Q. What will happen when the memory chip is volatile?

A. Explodes due to high temperatures            B. Used for data storage

C. Loss of content due to loss of current         D. Used to write and read data

Q. RAM is located in ________

A. Motherboard                B. Extension board

C. External Drive              D. None of the above

Customize your course in 30 seconds

Which class are you in.

tutor

Basics of Computers

  • Keyboard Shortcuts
  • Basic Computer Terminology
  • Computer Abbreviations
  • Computer Languages
  • Basic Internet Knowledge and Protocols
  • History of Computers
  • Basic Computer Knowledge – Practice Problems
  • Computer Organization
  • Input and Output (I/O) Devices
  • Hardware and Software

One response to “Hardware and Software”

THANKS ,THIS IS THE VERY USEFUL KNOWLEDGE

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Download the App

Google Play

  • Trending Now
  • Foundational Courses
  • Data Science
  • Practice Problem
  • Machine Learning
  • System Design
  • DevOps Tutorial

Computer Fundamental Tutorial

This Computer Fundamental Tutorial covers everything from basic to advanced concepts, including computer hardware, software, operating systems, peripherals, etc. Whether you’re a beginner or an experienced professional, this tutorial is designed to enhance your computer skills and take them to the next level.

Computer Fundamental Tutorial

What is Computer?

The computer is a super-intelligent electronic device that can perform tasks, process information, and store data. It takes the data as an input and processes that data to perform tasks under the control of a program and produces the output. A computer is like a personal assistant that follows instructions to get things done quickly and accurately. It has memory to store information temporarily so that the computer can quickly access it when needed.

Prerequisites for Computer Fundamentals

No prerequisites or prior knowledge required to learn computer fundamentals, Hence, this article on Computer Fundamentals is designed for absolute beginners.

Computer Fundamentals Tutorial Index

In the upcoming section you will get a topic wise categories for computer fundamental. So, explore the below section to learn the fundamentals of computer fundamentals.

Introduction To Computer Fundamentals

  • What are Computer Fundamentals?
  • Importance of Computer Fundamentals in Digital Age
  • Advantages and Disadvantages of Computer
  • Classification of Computers
  • Application area of Computer

History and Evolution of Computers

  • History of Computers
  • The Origins of Computing
  • First Generation – 1940-1956 Vacuum Tubes
  • Second Generation – 1956-1963 Transistors
  • Third Generation – 1964-1971 Integrated Circuits
  • Fourth Generation – 1971-Present Microprocessors 
  • Fifth Generation – Present and Beyond Artificial Intelligence 

Components of a Computer System

  • Central Processing Unit (CPU)
  • Memory Units

Input Devices

Output devices.

  • LCD Monitor
  • LED Monitor
  • QWERTY Keyboard
  • AZERTY Keyboard
  • DVORAK Keyboard
  • Trackball Mouse
  • Mechanical Mouse
  • Optical Mouse
  • Wireless Mouse
  • Peripherals Devices

Computer Hardware

  • Motherboard
  • What are the Functions of a CPU?
  • Program Execution in the CPU
  • Difference Between ALU and CU
  • Difference between System Unit and CPU
  • Random Access Memory (RAM)
  • SRAM Full Form
  • DRAM Full Form
  • Difference between Random Access Memory (RAM) and Hard Disk Drive (HDD)
  • Random Access Memory (RAM) and Read Only Memory (ROM)
  • Similarities of RAM and ROM
  • Hard Disk Drives (HDD)
  • Solid State Drives (SSD)
  • Graphics Processing Unit (GPU)
  • Power Supply Unit (PSU)
  • Computer Peripherals (Keyboard, Mouse, Monitor, etc.)

Computer Software

  • Introduction to Software
  • Types of Software
  • Application Software
  • System Software
  • Utility Software
  • What is Keyboard?
  • What is Mouse? 
  • What is a Joystick?
  • What is a light pen?
  • What is Scanner?
  • What is OCR? 
  • What is barcode reader?
  • What is WebCam?

Data Storage and Memory

  • What is a Storage Device?
  • Types of Data Storage
  • Optical Storage 
  • DVD-ROM Full Form
  • DVD-RAM Full Form
  • DVD-R Full Form
  • DVD-RW Full Form
  • Flash Drives
  • Memory Cards
  • Cloud Storage

Computer Short Cut Key

  • Computer Keyboard Shortcut Keys
  • Function Keys on keyboard
  • Windows Shortcut Keys
  • Keyboard Shortcuts for Ubuntu  |
  • Most Used Shortcuts of Turbo C++
  • Important Questions for Computer Keyboard Shortcuts
  • Computer Memory
  • Register Memory
  • Cache Memory
  • Primary Memory
  • Secondary Memory

Basics of Operating System

  • What is Operating System?
  • Evolution of Operating System
  • Types of Operating Systems
  • Operating System Services
  • Functions of Operating System

Computer Security and Privacy

  • What is Computer Security?
  • Importance of Computer Security
  • Common Security Threats
  • Network Security Measures (Firewalls, Encryption)
  • Access Control
  • User Authentication
  • Privacy Concerns and Data Protection

Computer Networks and Internet

  • Introduction to Computer Networks
  • Network Topologies (Star, Bus, Ring)
  • Network Protocols (TCP/IP, HTTP, FTP)
  • World Wide Web

Introduction to Programming

  • What is Programming?
  • A Categorical List of programming languages
  • Language Processors: Assembler, Compiler and Interpreter
  • Variables ( C , C++ , Java )
  • Data Types ( C , C++ , Java )
  • Operators ( C , C++ , Java )
  • Control Structures (Conditionals, Loops)
  • Functions and Procedures

Difference Between

  • Difference between RAM and ROM
  • Difference between Hard Disk and Floppy Disk
  • Difference between CD-ROM and Magnetic Disks
  • Difference between Optical Character Recognition (OCR) and Magnetic Ink Character Reader (MICR)
  • Difference between Magnetic Disk and Optical Disk
  • Difference between Hard Disk Drive (HDD) and Solid State Drive (SSD)
  • Difference between CD and DVD
  • Difference Between Blu-Ray and DVD
  • Difference between Application Software and Utility Software
  • Difference between Application Software and Operating System
  • Difference between System Software and Application Software
  • Difference between Barcode and QR Code

Functionalities of Computer

Any digital computer performs the following five operations:

  • Step 1 − Accepts data as input.
  • Step 2 − Saves the data/instructions in its memory and utilizes them as and when required.
  • Step 3 − Execute the data and convert it into useful information.
  • Step 4 − Provides the output.
  • Step 5 − Have control over all the above four steps

The Evolution of Computers

A journey through the history of computers. We’ll start with the origins of computing and explore the milestones that led to the development of electronic computers.

First Generation

1946-1959

Vacuum Tube-based

Second Generation

1959-1965

Transistor-based

Third Generation

1965-1971

Integrated Circuit based

Fourth Generation

1971-1980

VLSI microprocessor based

Fifth Generation

1980-onwards

ULSI microprocessor based

Applications of Computer Fundamentals

  • Software Development: Computer fundamentals are fundamental to software development. Understanding programming languages, algorithms, data structures, and software design principles are crucial for developing applications, websites, and software systems. It forms the basis for creating efficient and functional software solutions.
  • Network Administration : Computer fundamentals are essential for network administrators. They help set up and manage computer networks, configure routers and switches, troubleshoot network issues, and ensure reliable connectivity. Knowledge of computer fundamentals enables network administrators to maintain and optimize network performance.
  • Cybersecurity : Computer fundamentals are at the core of cybersecurity. Understanding the basics of computer networks, operating systems, encryption techniques, and security protocols helps professionals protect systems from cyber threats. It enables them to identify vulnerabilities, implement security measures, and respond effectively to security incidents.
  • Data Analysis : Computer fundamentals are necessary for data analysis and data science. Knowledge of programming, statistical analysis, and database management is essential to extract insights from large datasets. Understanding computer fundamentals helps in processing and analyzing data efficiently, enabling data-driven decision-making.
  • Artificial Intelligence and Machine Learning : Computer fundamentals provide the foundation for AI and machine learning. Concepts such as algorithms, data structures, and statistical modelling are vital in training and developing intelligent systems. Understanding computer fundamentals allows professionals to create AI models, train them on large datasets, and apply machine learning techniques to solve complex problems.

Understanding computer fundamentals is essential for anyone looking to navigate the digital world confidently. This tutorial Computer fundamental has covered the basics of hardware, software, operating systems, and networking, providing you with a solid foundation. Whether you’re a beginner or looking to refresh your knowledge, mastering these core concepts will help you use technology more effectively and prepare you for more advanced studies in computing.

Computer Fundamentals Tutorial – FAQs

Q.1 how long does it take to learn computer fundamentals .

The time required to learn computer fundamentals can vary depending on your prior knowledge and the depth of understanding you aim to achieve. With consistent effort and dedication, one can grasp the basics within a few weeks or months. However, mastering computer fundamentals is an ongoing process as technology evolves.

Q.2 Are computer fundamentals only for technical professionals? 

No, computer fundamentals are not limited to technical professionals. They are beneficial for anyone who uses computers in their personal or professional life. Basic computer skills are increasingly essential in various careers and everyday tasks.

Q.3 Can I learn computer fundamentals without any prior technical knowledge? 

Absolutely! Computer fundamentals are designed to be beginner-friendly. You can start learning without any prior technical knowledge. There are numerous online tutorials, courses, and resources available that cater to beginners.

Q.4 How can computer fundamentals improve my job prospects? 

Computer skills are highly sought after in today’s job market. Proficiency in computer fundamentals can enhance your employability by opening up job opportunities in various industries. It demonstrates your adaptability, problem-solving abilities, and ability to work with digital tools.

Please Login to comment...

Similar reads.

  • Computer Subject

Improve your Coding Skills with Practice

 alt=

What kind of Experience do you want to share?

IMAGES

  1. Computer Memory

    computer memory assignment

  2. Read-write memory

    computer memory assignment

  3. How Does Computer Memory Work When It's Switched Off? » ScienceABC

    computer memory assignment

  4. Computer Memory and Types

    computer memory assignment

  5. Basic Computer

    computer memory assignment

  6. 2- Computer Memory

    computer memory assignment

COMMENTS

  1. Computer Memory

    In general, computer memory is of three types: Primary memory. Secondary memory. Cache memory. Now we discuss each type of memory one by one in detail: 1. Primary Memory. It is also known as the main memory of the computer system. It is used to store data and programs or instructions during computer operations.

  2. PDF COMPUTER MEMORY

    In general, referring to the computer memory usually means the internal memory. Internal Memory The key features of internal memory are: 1. Limited storage capacity. 2. Temporary storage. 3. Fast access. 4. High cost. Registers, cache memory, and primary memory constitute the internal memory. The primary memory is further of two kinds: RAM and ROM.

  3. Computer memory (RAM)

    RAM, ROM and Cache are the 3 main types of memory. SRAM ( static RAM ) and DRAM ( dynamic RAM ) are the two main types of RAM. When a SRAM unit is given a status (0/1), it will maintain this status until the power is off or given a new status. But SRAM need 4-6 transistors to store a 1-bit data,so it costs a lot.

  4. Computer memory

    Computer memory stores information, such as data and programs, for immediate use in the computer. [ 2] The term memory is often synonymous with the terms RAM, main memory, or primary storage. Archaic synonyms for main memory include core (for magnetic core memory) and store. [ 3]

  5. PDF CS 106B, Lecture 14 Pointers and Memory Management

    Computer Memory • Creating a variable allocates memory (spot for the variable in the computer) - We number the spots in memory (just like houses) with a memory address • Can think of a computer's memory as a giant array, spread between stack and heap • Stack - stores all the local variables, parameters, etc.

  6. PDF CS 106B, Lecture 14 Pointers and Memory Management

    Computer Memory •Creating a variable allocatesmemory (spot for the variable in the computer) -We number the spots in memory (just like houses) with a memory address •Can think of a computer's memory as a giant array, spread between stack and heap •Stack -stores all the local variables, parameters, etc. -manages memory automatically ...

  7. C Memory Management

    Topics: Computer memory layout (heap, stack, call stack), pointers and addresses, arrays, strings, and manual memory allocation/deallocation. ... Assignment 3 Problem 1. sort (C) In sort.c, I've implemented a basic implementation of insertion sort (not too efficient, but a very simple sorting algorithm). Look at and understand the code (read ...

  8. PDF Chapter 6 Objectives Chapter 6

    Chapter 6 Objectives. Master the concepts of hierarchical memory organization. Understand how each level of memory contributes to system performance, and how the performance is measured. Master the concepts behind cache memory, virtual memory, memory segmentation, paging and address translation. 2.

  9. How The Computer Works: The CPU and Memory

    The CPU interacts closely with primary storage, or main memory, referring to it for both instructions and data. For this reason this part of the reading will discuss memory in the context of the central processing unit. Technically, however, memory is not part of the CPU. Recall that a computer's memory holds data only temporarily, at the time ...

  10. Computer

    A physical device that stores data or information temporarily or permanently in it is called memory. It's a device where data is stored and processed. In common, a computer has primary and secondary memories. Auxiliary (secondary) memory stores data and programs for long-term storage or until the time a user wants to keep them in memory ...

  11. CPU, memory, input & output (video)

    There are input devices that take input from the outside world and convert it into binary information. There's memory to store this information. There's a central processing unit, or CPU, where all the calculations are done. And finally, there are output devices that take information and convert it into physical output.

  12. Computer memory

    cache memory. magnetic-core memory. semiconductor memory. magnetic drum. mercury delay line. computer memory, device that is used to store data or programs (sequences of instructions) on a temporary or permanent basis for use in an electronic digital computer. Computers represent information in binary code, written as sequences of 0s and 1s.

  13. Memory Organisation in Computer Architecture

    The memory is organized in the form of a cell, each cell is able to be identified with a unique number called address. Each cell is able to recognize control signals such as "read" and "write", generated by CPU when it wants to read or write address. Whenever CPU executes the program there is a need to transfer the instruction from the ...

  14. Introduction to memory and memory units

    Memory units are used to measure the size and represent data. Some of the commonly used memory units are: 1. Bit. The first memory location in a computer is bit. The smallest measurement unit for data held in primary memory and storage devices is a bit. Out of the binary values 0 and 1, a bit can only have one.

  15. What is memory management in a computer environment?

    Memory management is the process of controlling and coordinating computer memory , assigning portions called blocks to various running programs to optimize overall system performance. Memory management resides in hardware , in the OS (operating system), and in programs and applications .

  16. What Is RAM? Everything You Need to Know

    For example, both the brain and a computer have short- and long-term memory. RAM is where a computer stores its short-term memory. What Is RAM? RAM stands for Random Access Memory, and if you've ever opened a lap- or desktop computer, you've seen it. In the image above, you see modern RAM sticks for desktop PCs.

  17. Memory address

    A digital computer's main memory consists of many memory locations.Each memory location has a physical address which is a code. The CPU (or other device) can use the code to access the corresponding memory location. Generally only system software, i.e. the BIOS, operating systems, and some specialized utility programs (e.g., memory testers), address physical memory using machine code operands ...

  18. Memory Organization

    The memory unit that communicates directly within the CPU, Auxillary memory and Cache memory, is called main memory. It is the central storage unit of the computer system. It is a large and fast memory used to store data during computer operations. Main memory is made up of RAM and ROM, with RAM integrated circuit chips holing the major share.

  19. What is Computer Memory and What are Different Types?

    Segmented memory is a system of addressing computer memory , which may be physical or virtual and may be operating in real or protected mode .

  20. 9 Types of Computer Memory Defined

    It's designed for more affordable long-term storage of large amounts of data. Examples include hard disk drives (HDDs), solid state drives (SSDs), cloud storage, and tape drives, to name a few. Secondary memory tends to be more affordable than primary memory, and is available with much greater capacities.

  21. Memory assignment and allocation

    Memory assignment and allocation. Memory assignment and allocation. In some cases, the amount of memory you assign to a partition is not the same as the amount of memory that is actually allocated by the system. At boot time, some system processes, such as kdump and the Run-Time Abstraction Service (RTAS), require memory to run.

  22. Computer Memory: Videos, Examples and Practice Questions

    Further, there are two types of primary memory i.e RAM and ROM. 1. Random Access Memory. RAM is also known as the volatile memory. It is in the form of the chip that is implemented with the use os semiconductors. Generally, RAM is used to store temporary storage of output data, input data, and intermediate results.

  23. Computer Fundamentals Tutorial

    Functionalities of Computer. Any digital computer performs the following five operations: Step 1 − Accepts data as input. Step 2 − Saves the data/instructions in its memory and utilizes them as and when required. Step 3 − Execute the data and convert it into useful information. Step 4 − Provides the output.