Re: [OT] Documentation for PC Architecture

From: Krzysztof Halasa
Date: Tue Aug 19 2003 - 15:48:06 EST


Jamie Lokier <jamie@xxxxxxxxxxxxx> writes:

> Paolo's question is, what happens to the 384k of _physical_ addresses
> starting at 0xa0000, which should correspond with 384k of actual
> physical RAM?

Part of it is used for BIOS (shadow of EPROM/flash EPROM - usually
written by BIOS executing from EPROM and then made read-only by
programming chipset registers). This involves main motherboard BIOS
(usually 64 KB at 0xF000-0xFFFF) and any extension BIOSes (VGA, LAN
etc) in 0xC000-0xEFFF (or 0xC000-0xDFFF) range.

The remaining RAM from 0xA000-0xFFFF is unusable. One could program
chipset registers to enable parts of this RAM. It would require
knowledge of particular chipset registers, and there might be only
one read-only/read-write bit for all shadows (so, unless you want the
shadow BIOS to be R/W, the additional RAM would have to be R/O).
RAM is quite cheap and these things are very non-standard so I think
nobody bothers.

And yes, older machines (older chipsets) used to remap fragments of
this memory to the top of RAM. It was common on 80286 machines and
I probably haven't seen a 386DX or faster board doing that.
--
Krzysztof Halasa
Network Administrator
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/