>
> Speaking of other operating systems..... I have the tools for compiling NT
> drivers if we have someone to code them ;-)
> Nick
since i write drivers for a living.. this shouldn't be a problem. just let
me know what you folks need :)
sid
>
> ----- Original Message -----
> From: Kevin P. Lawton <[EMAIL PROTECTED]>
> To: <[EMAIL PROTECTED]>
> Sent: Wednesday, October 27, 1999 9:45 AM
> Subject: Re: some x86 instructions
>
>
> > Jens Nerche wrote:
> > >
> > > Hello,
> > > I'm new on this list, greetings to all listeners!
> > >
> > > I think in http://www.freemware.org/docs.phtml?file=paper.txt
> > > is a lack of some instructions, we should have a look on
> > > invd, invlpg, rdmsr, wrmsr, wbinvd, sysenter and sysexit. Most
> > > of them (first 5) are protected, and I don't know if last two
> important
> > > for us.
> >
> > I'm glad you pointed the last 2 out, I haven't looked into
> > them yet.
> >
> >
> > First 5 are CPL==0 as you said, so they're no problem.
> >
> > SYSENTER has the following checks:
> >
> > IF CR0.PE == 0 THEN #GP(0)
> > IF SYSENTER_CS_MSR == 0 THEN #GP(0)
> >
> > So I would say we should do the following. Upon startup of
> > FreeMWare, check what processor we're running on and see
> > if sysenter/sysexit are supported via CPUID.
> >
> > If not supported, then no big deal. If supported then when
> > ever we warp into our VM, save the value of SYSENTER_CS_MSR
> > and then set it to 0. Then we'll receive a fault when
> > the guest tries to use it. We have to restore the value
> > when warping back to the host OS.
> >
> > SYSEXIT is CPL==0 only, so also no problem.
> >
> > -Kevin
> >
> >
>
>