On 12/05/2017 01:22, Xu, Anthony wrote:
SeaBIOS has a couple of different methods to accomplish this mode switching - it can directly switch modes (C16_BIG switch) or it can use a helper in SMM mode to perform the switch (C16_SMM). The preferred method is C16_SMM as C16_BIG isn't available in VM86 mode and it also clobbers the 16bit segment registers.
Hi Kevin,
Why does SeaBios use VM86 mode?
SeaBIOS doesn't, but for example old DOS extenders uses it. You can run Windows 95 inside SeaBIOS.
Paolo
vtx supports real mode long time ago.
C16_SMM is slow because it causes several extra switches between VM and QEMU. I would prefer C16_BIG for better performance. Does SeaBios know if it runs in real mode or VM86 mode? Can SeaBios choose C16_SMM/C16_BIG based on VCPU mode?
Thanks, Anthony