[SeaBIOS] Running out of space in e/f-segments
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