Hardware Reference
In-Depth Information
memory usage. That is because there is only 1MB of total RAM in a 16-bit environment, and the
upper 384KB is reserved for system use. The virtual real window fully emulates an 8088
environment, so that aside from speed, the software runs as if it were on an original real mode-only
PC. Each virtual machine gets its own 1MB address space, an image of the real hardware basic
input/output system (BIOS) routines, and emulation of all other registers and features found in real
mode.
Virtual real mode is used when you use a DOS window to run a DOS or Windows 3.x 16-bit
program. When you start a DOS application, Windows creates a virtual DOS machine under which it
can run.
One interesting thing to note is that all Intel and Intel-compatible (such as AMD and VIA/Cyrix)
processors power up in real mode. If you load a 32-bit OS, it automatically switches the processor
into 32-bit mode and takes control from there.
It's also important to note that some 16-bit (DOS and Windows 3.x) applications misbehave in a 32-
bit environment, which means they do things that even virtual real mode does not support. Diagnostics
software is a perfect example of this. Such software does not run properly in a real mode (virtual
real) window under Windows. In that case, you can still run your modern system in the original no-
frills real mode by booting to a DOS or Windows 9x/Me startup floppy or by using a self-booting CD
or DVD that contains the diagnostic software.
Although 16-bit DOS and “standard” DOS applications use real mode, special programs are
available that “extend” DOS and allow access to extended memory (over 1MB). These are
sometimes called DOS extenders and usually are included as part of any DOS or Windows 3.x
software that uses them. The protocol that describes how to make DOS work in protected mode is
called DOS protected mode interface (DPMI).
Windows 3.x used DPMI to access extended memory for use with Windows 3.x applications. It
allowed these programs to use more memory even though they were still 16-bit programs. DOS
extenders are especially popular in DOS games because they enable them to access much more of the
system memory than the standard 1MB that most real mode programs can address. These DOS
extenders work by switching the processor in and out of real mode. In the case of those that run under
Windows, they use the DPMI interface built into Windows, enabling them to share a portion of the
system's extended memory.
Another exception in real mode is that the first 64KB of extended memory is actually accessible to the
PC in real mode, despite the fact that it's not supposed to be possible. This is the result of a bug in the
original IBM AT with respect to the 21 st memory address line, known as A20 (A0 is the first address
line). By manipulating the A20 line, real mode software can gain access to the first 64KB of extended
memory—the first 64KB of memory past the first megabyte. This area of memory is called the high
memory area (HMA).
IA-32e 64-Bit Extension Mode (x64, AMD64, x86-64, EM64T)
64-bit extension mode is an enhancement to the IA-32 architecture originally designed by AMD and
later adopted by Intel.
In 2003, AMD introduced the first 64-bit processor for x86-compatible desktop computers—the
Athlon 64—followed by its first 64-bit server processor, the Opteron. In 2004, Intel introduced a
series of 64-bit-enabled versions of its Pentium 4 desktop processor. The years that followed saw
both companies introducing more and more processors with 64-bit capabilities.
Search WWH ::




Custom Search