"freebsd-amd64"
John Baldwin
jhb at freebsd.org
Wed Feb 27 21:51:17 UTC 2008
On Wednesday 27 February 2008 01:45:23 pm Peter Jeremy wrote:
> On Wed, Feb 27, 2008 at 07:34:48AM -0600, Jeff Isaac wrote:
> >doodle with, not BIOS), BUT, from a general knowledge perspective, what
> >advantages does virtual 86 mode have over real mode? Essentially, why did
> >the FreeBSD project choose the virtual implementation? More portable?
> >Easier to write? None of the above? Thanks! :)
>
> The kernel run in 32-bit protected mode. Switching between protected
> mode and real mode requires a reasonable degree of voodoo which does
> not currently exist in the kernel (the loader handles the initial real
> to protected transition and the kernel then never leaves protected mode).
> Plus you need to either ensure that exceptions/interrupts won't occur
> or handle them in real mode. OTOH, virtual86 mode is part of the
> hardware - you create a task descriptor and set the VM86 bit. Any
> exceptions etc are delivered to the kernel.
And VM86 mode was designed for running real mode code from protected mode
safely. The problem is that since a certain OS from the pacific northwest
just invokes the BIOS from real mode BIOS vendors have become lazy since
their QA usually consists of WHQL or something similar.
--
John Baldwin
More information about the freebsd-amd64
mailing list