Operating Systems - DOS - Memory

December 2016

Introduction to memory


Memory is an area where programs are stored and from where they can be executed.

A PC compatible computer has three types of memory:

  • conventional
  • extended
  • paged



The amount of memory present (and available) in a system can be found by running the following command: "mem" (or "mem /c |more" for more detailed information).

Conventional memory


conventional memory is that part of memory where programs may load without any specific instructions. The amount of conventional memory varies from 256 KB to 640 KB (on all recent computers: 386, 486, Pentium, etc.).

The amount of memory available is the memory remaining after DOS has been loaded into memory (i.e. the operating system, device drivers and all commands loaded from the config.sys and autoexec.bat).

Extended memory


Extended memory enables the system to access more memory. This type of memory is available on computers equipped with a 80286 type processor or higher.

Programs normally only recognise conventional memory addresses, to access the storage area located beyond the 640 KB, programs need specific instructions. A program that manages access to extended memory, for example it prevents two programs from using the same area of memory at the same time. This program is called "extended memory manager".

MS-DOS comes with the standard extended memory manager called HIMEM.SYS (it is also found in Windows 98). It is loaded in the config.sys by adding the line:

DEVICE=path/himem.sys



where path is the access path to the file.

Paged memory


Another method of accessing memory beyond the first 640 KB is to use paged memory. Some programs (few nowadays) are optimized to use this type of memory.

As with extended memory, this type of memory requires a program to manage it, it is called "paged memory manager". Programs designed to use this type of memory cannot access it directly: the memory manager must copy <a href="/contents/systemes/memoire.php3">
sections</a> of 16 KB of memory (called pages) into an area (called frame segment) located in the high memory area. This type of memory was developed before extended memory, this memory is thus slower and only allows usage of one limited portion of memory at any given time.

High memory


Many systems have 384 KB of high memory (HMA, High Memory Addresses), located directly after the 640 KB of conventional memory. This area of memory can be used by hardware. Areas not used by hardware are called "upper memory blocks" (UMB), they allow programs to be run in paged memory.


Related :


Sistemas operativos - DOS - Memoria
Sistemas operativos - DOS - Memoria
Systèmes d'exploitation - DOS - La mémoire
Systèmes d'exploitation - DOS - La mémoire
Sistemi operativi - DOS - La memoria
Sistemi operativi - DOS - La memoria
Sistemas de exploração - DOS - Memória
Sistemas de exploração - DOS - Memória
Korzystanie ze skrzynki E-Mail
Korzystanie ze skrzynki E-Mail
This document entitled « Operating Systems - DOS - Memory » from CCM (ccm.net) is made available under the Creative Commons license. You can copy, modify copies of this page, under the conditions stipulated by the license, as this note appears clearly.