+Andrew E. Mileski wrote:
+> Some motherboards can relocate the 384k RAM that is leftover
+> from making the I/O hole at 0xa0000-0xfffff, but most can't.
+> What is worse, this feature _ONLY_ works with 16Mb or _LESS_
+> installed memory (on most mobos).
+> ...
+> Linux can't read your mobo manual for you (or the mind of the
+> mobo designer). For that matter, no OS can (especially not Windows).
+I believe SCO's "boot" program does some memory probing before loading
+the kernel - passing a map of memory type/usage in page 0. (I think it
+also performs a basic memory read/write test for early trapping of
+mis-configured systems). I don't know how the detection works - it
+maybe only be for some BIOS/Bus archs.
+Isn't it possible to look for BIOS signatures between 0xa0000-0xfffff
+(check every 2k?) to determine what memory is left for the OS?
+Other reserved areas (such as floppy track buffer, VGA fonts) are at
+well know addresses. The interesting problem is detecting the onboard
+memory in other cards...
The failure mode may be more subtle than that. In my MB, these 384K are
mapped readonly by default. I can modify he chipset register to change
this. However, it still fails. You see, the MB does not support DMA in
that area.
Yannis.