|
Enabling PC to access more memory
Question : I tried to install Windows 98 on a
266-megahertz central processing unit to access some old applications. During
the installation, the following error message appeared: "Standard mode: bad
fault in ms-dos extender Fault: 000D stack dump: 0000 0000 0070 raw fault
frame: 00000 IP..." Before installing Windows 98, I had formatted the hard
disk to use FAT32. I have another computer of the same specifications which
the vendor managed to install Windows 98 successfully. So what seems to be the
problem?
Answer : The Web page http://support.microsoft.com/kb/q87239/
contains the answer to this question. According to the Microsoft support,
there are several reasons why this would happen. One likely possibility (in
this case) is that HIMEM.SYS was unable to control the A20 gate. HIMEM.SYS was
the "high memory" driver for Windows 9x systems.
When the first "IBM-compatible" PCs were made, the maximum amount of memory
they could address was one megabyte (MB). This was further divided into
roughly two sections. The first 640 kilobytes (KB) was called conventional or
base memory and this was all that most applications could use at that time.
The area above 640KB was used mainly for optimising the system, thus was
unavailable for application use.
Eventually, as operating systems and applications outgrew these boundaries, a
solution was needed that would enable the PC to access more random access
memory (RAM) and at the same time remain compatible to the earliest PCs
manufactured.
Several methods were used to try to break the 640KB barrier. These software
became known as DOS extenders. Two of the most popular DOS "extension" methods
were known as Expanded Memory Specification and Extended Memory Specification.
These methods are supported in the Windows 9x series via the HIMEM.SYS and
EMM386.EXE drivers.
Now that we've seen the software part of the equation, let's look at the
hardware part. As mentioned earlier, the earliest PCs could only address
(access) a total of 1 MB RAM. This is because they only had 20 address lines,
each capable of carrying one bit. The maximum amount of locations thus becomes
220, or 1,048,576, which is exactly 1 MB. What was more interesting was that
the last location in RAM was "connected" to the first location, so anyone
going past the last location would end up at the first location. This got to
be such a standard that people were writing software that actually took
advantage of the "wraparound" effect.
When more advanced processors were introduced, they could address more RAM.
This essentially got rid of the wraparound effect at the 1 MB barrier. This
also made software that relied on the wraparound effect incompatible with the
new processors.
In an effort to achieve full compatibility, system designers put in a "gate".
This gate protected the area of RAM above I MB. Closing the gate produced a
wraparound effect at the 1 MB barrier. Opening it allowed program access to
any available RAM above it. The old method (wraparound effect, memory limited
to 1 MB) is usually called real mode. The new mode was called protected mode.
This gate is called Gate A20.
Now that there's a way to switch between modes, there needs to be a way to
control the switch. The standard way was to use a spare pin in the keyboard
controller. This was later found to be too slow, so some chipset manufacturers
put in an option for the gate to be controlled via the mainboard chipset. This
option can be controlled via the basic input/output system (BIOS) firmware --
it's usually called Fast Gate A20, Gate A20 Option or something similar.
Locate this option in the BIOS and select another setting. This should fix any
problems the operating system has controlling the Gate A20.
Update the BIOS if possible, and check to see that all settings in the BIOS
firmware are accurate, especially RAM "speeds" and sizes if they need to be
set manually.
If the other PC has the exact same specifications, try using the exact same
BIOS settings on the problem PC that the good PC uses. If this doesn't work,
try replacing the RAM on the problem PC with the ones from the good PC.
If it works then, the problem is likely to be that the RAM on the problem PC
is failing. By replacing the RAM one module at a time, the problem module can
be identified and replaced.
For best results, it's recommended that the hard disk be erased before
partitioning and formatting are attempted. This can be done with a "zero-fill"
utility usually available for download at the hard disk manufacturer's Web
site. |