Date: Wed, 27 Feb 2008 15:28:12 -0500 From: John Baldwin <jhb@freebsd.org> To: freebsd-amd64@freebsd.org Subject: Re: "freebsd-amd64" Message-ID: <200802271528.12444.jhb@freebsd.org> In-Reply-To: <20080227184522.GE83599@server.vk2pj.dyndns.org> References: <E1JULcb-0001Er-9m@dilbert.ticketswitch.com> <443D814E-04F3-411C-9DF9-E799A39FAEB3@gmail.com> <20080227184522.GE83599@server.vk2pj.dyndns.org>
next in thread | previous in thread | raw e-mail | index | archive | help
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
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200802271528.12444.jhb>