On Tue, Feb 19, 2013 at 09:16:30AM +0000, David Woodhouse wrote:
On Mon, 2013-02-18 at 10:34 -0500, Kevin O'Connor wrote:
Some old DOS programs can also use f-segment space as Upper Memory Blocks (UMB), so also report on what space is available in debug messages.
Should we mark it as available in E820 too?
The f-segment is typically made read-only, so it's not memory an OS can really use. (As I understand it, the old DOS programs that use UMB could detect empty space in the f-segment and use the 386 paging system to map high-memory in its place.)
In any case, my experience has been that the first 1 megabyte of the e820 is "magic": 0-0x9fc00 = RAM, 0x9fc00=0xa0000 = RESERVED, 0xa0000-0xf0000 = hole, 0xf0000-0x100000 = RESERVED. It's possible to tweak the ranges a little (eg, 0xe0000-0x100000 = RESERVED), but fundamental changes (even if more correct) have a good chance of breaking programs.
-Kevin