Mail Archives: djgpp/2000/06/10/06:02:16
> > > :) V86 mode was invented to provide compatibility with old 8086 stuff while
> > > CPU is in PMode. DOS itself works normally in V86.
> >
> > That's right. Usually, even plain DOS runs in V86 mode because the
> > EMM386 driver switches to V86 when it gets installed.
>
> V86 was invented because it allowed to use more than 640KB of memory,
> by remapping some of the extended memory into the unused addresses
> between 640K and 1MB.
I don't understand what V86 has to do with remapping of memory. That's
an entirely different task. It's related to the MMU and V86 has
nothing to do with the MMU.
Reasons for inventing V86 or at least using V86 are:
1> More protection and quicker.
2> Switching to real & PM would disable VM (actually disable the MMU)
and protection which is not a very nice thing.
3> You could have many real mode programs running on different copies
of the OS (like multiple DOS boxes).
to mention a few...
> Such remapping is impossible in real mode,
> because the MMU is (effectively) inactive. So they needed to have
> protected mode, but with the normal real-mode addressing still
> working.
>
> However, this has nothing to do with PM programs and DOS coexisting
> together. PM programs still cannot run in V86 mode without the kind
> of trickery that DJGPP does when it calls DOS.
What trickery is this? I thought the DPMI just needs to use the VCPI
interface or use the existing DPMI (in case of an already existing
DPMI). I accept that this is hard work, though.
- Raw text -