Chapter 3/ Hardware Briefing
Given the implied right-most hexadecimal zero in the segment address, segments always
begin on a paragraph boundary (i.e., a paragraph is 16 bytes in size). In other words, segment
addresses are evenly divisible by 16 (e.g., 0x10).
Case Study: MS-DOS
The canonical example of a real-mode operating system is Microsoft's DOS
(in the event that the mention of DOS has set off warning signals, see the next
section). In the absence of special drivers, DOS is limited to a 20-bit address
space (see Figure 3.5).
The first 640 KB of memory is known as conventional memory. Note that a
good chunk of this space is taken up by system-level code. The remaining
region of memory up until the 1-MB ceiling is known as the upper memory
area, or UMA, The UMA was originally intended as a reserved space for use
by hardware (ROM, RAM on peripherals). Within the UMA are usually slots
Extended Memory
DOS Memory Map
BIOS ROM
OxCOOOO-OxFFFFF
VGA Color Text Mode RAM OxBSOOO-OxBFFFF
VGA Monochrome RAM
OxBOOOO-OxB7FFF
VGA Graphics Mode RAM OxAOOOO-OxAFFFF
Free Memory for Applications
Commaiid.com
OxOE2FO-OxOF66F
DOS OS & Drivers
0x0070O-OxE2EF
DOS Data Area
0x0050O-Ox05FF
BIOS Data Area
Ox00400-Ox04FF
InteiTupt Vector Table
0x000OO-Ox003FF
OxFFFFF
Upper Memory Area
OxAOOOO V
0X9FFFF
Conventional Memory
0x00000 M
Figure 3,5
62 I Part I