Messages in this thread | | | Subject | Re: [OT] Documentation for PC Architecture | From | Krzysztof Halasa <> | Date | 19 Aug 2003 17:23:21 +0200 |
| |
Jamie Lokier <jamie@shareable.org> 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@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |