RAM Limit - Operating System RAM Limits - IBM PC and 8086 Addressing Limit

IBM PC and 8086 Addressing Limit

In the original IBM PC, the basic RAM limit is 640 kB. This is to allow for hardware addressing space in the upper 384 kB (upper memory area (UMA)) of the total addressable memory space of 1024 kB (1 MB). Ways to overcome the 640k barrier, as it came to be known, involved using special addressing modes available in the 286 and later x86 processors. The 1 MB total address space was a result of the 20-bit address space limit imposed on the 8086 (and 8088) CPU.

Using the color video buffer space, some third-party utilities could add memory at the top of the 640k conventional memory area, to extend memory up to the base address used by hardware adapters. This could ultimately backfill RAM up to the MDA base address.

Hardware extensions allowed access to more memory than the 8086 CPU could address through paging memory. This memory was known as expanded memory. An industry de facto standard was developed by the LIM consortium, composed of Lotus, Intel and Microsoft. This standard was the Expanded Memory Specification (EMS). Pages of memory from expanded memory hardware were accessible through an addressing window placed into a free area in the UMA space, and by exchanging it for other pages when needed to access other memory. EMS supported 16 MB of space.

Using a quirk in the 286 CPU architecture, the high memory area (HMA) was accessible, as the first 64 kB above the 1 MB limit of 20-bit addressing in the x86 architecture.

Using the 24-bit memory addressing capabilities of the 286 CPU architecture, a total address space of 16 MB was accessible. Memory above the 1 MB limit was called extended memory. However the area between 640 kB and 1 MB was reserved for hardware addressing in IBM PC compatibles. DOS and other real mode programs, limited to 20-bit addresses, could only access this space through EMS emulation on the extended memory, or an EMS analog for extended memory. Microsoft developed a standard known as the Extended Memory Specification (XMS). Accessing the memory above the HMA required usage of the protected mode of the 286 CPU.

With the development of the i386 CPU architecture, the address space was moved to 32-bit addressing, and a limit of 4 GB. With this CPU, access to 16 MB memory areas was available to DOS programs that used DOS extenders, such as DOS/4GW, MiniGW/16, MiniGW, and others. Initially a de facto industry memory standard for interaction known as VCPI was developed. Later, a Microsoft standard supplanted this, known as the DPMI. These standards allowed direct access to the 16 MB space, instead of the paging scheme used by EMS and XMS.

Read more about this topic:  RAM Limit, Operating System RAM Limits

Famous quotes containing the words addressing and/or limit:

    He took up his pen, which seemed to parch like a martyr in his hand. He began to write, nevertheless, addressing the nine-and-ninety lies of the moment he hoped with for a night of saloperie at the side of the twisted strumpet, Fiction, who lasciviously rolled her eyes at him, hiked up her skirt, and beckoned him on.
    Alexander Theroux (b. 1940)

    An educational method that shall have liberty as its basis must intervene to help the child to a conquest of liberty. That is to say, his training must be such as shall help him to diminish as much as possible the social bonds which limit his activity.
    Maria Montessori (1870–1952)