[SeaBIOS] Running out of space in e/f-segments

Kevin O'Connor kevin at koconnor.net
Sun Aug 22 19:02:03 CEST 2010

On Sun, Aug 22, 2010 at 07:23:30PM +0300, Avi Kivity wrote:
> btw, big real mode cannot be entered in vm86 mode.  So anything
> involving that can safely be moved to upper memory 32-bit code.

Only POST needs bigreal mode, and it should be no problem moving POST
to high memory.

> >Even with all its warts I think .code16gcc is the best route.
> For 16-bit runtime services, I agree.  For POST and 32-bit runtime
> services, I think we can easily push the code to 4G-2M.

The 32bit runtime is also tricky, but thankfully it's under 2K of code
and so it can be left in the f-segment.

I'm not sure what you mean by "4G-2M" - are you suggesting running XIP
in the "flash" chip?  This is possible in qemu/kvm, but it's not
something you'd want to do on real hardware.  Accesses to the flash
chip are terribly slow - on real hardware you want to copy the code
from flash to ram as soon as possible.  (You typically want to
compress everything in flash also.)


More information about the SeaBIOS mailing list