Virtuellt 8086-läge

Virtuellt 8086 -läge (V86, VM86, ibland bara virtuellt läge ) är ett adresseringsläge för x86 -familjens processorer som är kompatibelt med familjens stamfader - Intel 8086-processorn . Det är ett underläge av skyddat . Dök först upp i 80386-processorn och var främst avsedd att skapa den så kallade. "virtuella DOS - maskiner", virtuella miljöer för exekvering av applikationer av operativsystemet MS-DOS som dominerade världen av persondatorer vid den tiden. Det är det första försöket från Intel Corporation att introducera hårdvaruvirtualiseringstekniker i sina processorer .

Funktioner

Den virtuella 8086-uppgiften är en normal uppgift i skyddat läge med följande funktioner:

Tillägg

Från och med Pentium-processorn introducerades valfria funktioner i V86-läge: en avbrottsomdirigeringstabell och virtualisering av avbrottsflaggan. Nu kunde processorn, utan OS-intervention, direkt använda avbrottsvektortabellen vid adress 0, och inte för alla avbrott, utan bara för de som operativsystemet tillät att använda en speciell bitmapp (liknande en I/O-karta) i uppgiften statussegment. Interrupt flag virtualisering minskar också antalet undantag som behöver hanteras av operativsystemet, vilket i sin tur påverkar den övergripande prestandan.

V86 och x86-64

x86-64-processorer stöder endast V86 i äldre läge, inte långt läge. I långt läge ignoreras EFLAGS.VM-flaggan helt enkelt. Därför, för att stödja virtuella DOS-uppgifter, krävs byte till äldre läge, tillsammans med en dubbel återställning av MMU . Och eftersom rollen för DOS och dess applikationer i stort sett har försvunnit nuförtiden, inkluderar inte x86-64-operativsystem den här typen av V86-stöd. Vissa moderna maskinvaruvirtualiseringsverktyg låter dig dock virtualisera både verkligt läge och V86, vilket resulterar i dubbel virtualisering.

Stöd för operativsystem