[SeaBIOS] About LOWMEM feature
Kevin O'Connor
kevin at koconnor.net
Sun Jul 8 17:00:12 CEST 2012
I'm CC'ing the seabios mailing list.
On Sun, Jul 08, 2012 at 02:20:20AM -0700, Yeong Uk Jo wrote:
> Recently patched SeaBIOS has LOWMEM features that locates part of
> EBDA data in E segment area. This feature is useful only with no
> memory manager or basic memory manager like MS-DOS's EMM386. With
> advanced memory manager(like QEMM, Memory Commander, etc),this
> feature interferes to secure contiguous memory block. - SeaBIOS
> 1.7.0 dated 2012.4.15 can use segment C900-FBFF as UMB, but recent
> version split C900-EDFF,F000-FBFF.
Older versions of SeaBIOS allocate dynamic ram from the end of the
9-segment, not the EBDA. These allocations were not relocatable.
Indeed, the reason the 9-segment was used instead of the EBDA is that
some low memory allocations are needed for DMA buffers which must not
be relocated.
Given the choice between using the 9-segment or the e-segment, I think
using the e-segment is preferable.
It is true that variables in the EBDA were also moved to the
e-segment. This was done as a code simplification (once the e-segment
was used, there was no need to use the ebda for internal allocations).
This doesn't impact fragmentation, because the dynamic memory
allocations already fragment the space.
> Note that advanced memory managers can relocate EBDA data to appropriate
> area.Experienced users can write program to move EBDA data.
>
> Jo Yeong-uk
-Kevin
More information about the SeaBIOS
mailing list