Az x86 processzorarchitektúra elsősorban a személyi számítógépek piacán közismert. Az x86 emulátorok ennek megfelelően többségében PC emulátorok, amelyek egy teljes x86-os személyi számítógép funkcionalitását képesek emulálni egy más platformon - például egy nem x86 processzorral szerelt személyi számítógépen, notebookon, netbookon, mobiltelefonon, vagy más eszközön. Mivel az x86 architektúra nagy múltra tekint vissza, változó, hogy melyik emulátor pontosan mely kornak megfelelő számítógépet képes emulálni. A különböző emulátorok képességei rendkívül változatosak, némelyikük csak 8088/8086-os processzort támogat, mások egészen a 64 bites utasításkészletig skálázódnak.
A technológiai háttér
Az x86 emulátorok változatos emulációs stratégiákat használnak, interpreteren (egyszerű értelmező-algoritmuson) kívül használnak még a kód egyes részein valamiféle dinamikus újrafordítást (dynarec), vagy valamilyen köztes bytekódot, amit egyszerűbb emulálni. A legtöbb x86 emulátor körülbelül 1 és 5%-os hatásfok között tud működni, mivel az x86 bytekód értelmezése komplikált (prefixek, szabad opkódelhelyezkedés, szegmentáció, MODERM, SIB byte dekódolás).
Virtuális gépek
A virtuális gépek nem egyeznek meg az emulátorokkal, de funkcionalitásuk hasonló. Ma a legtöbb x86 processzor hardveresen támogatja a virtualizációt, ennek segítségével a processzor emulációját kihagyva működésük közelíti a gazdaszámítógép sebességét. A kétezres évek vége felé terjedt el a virtualizációs utasításkészlet az x86 processzorokban, de ezt megelőzően is voltak virtuális gépek, ezek az x86-os host-architektúra léte, és speciális trükkök révén érték el, hogy ne kelljen a processzort teljesen emulálni. Hatásfokuk 20-40% körül alakult.
Emulátorok listája
Név Architektúra Megjegyzés qemu max x86-64 (nem-x86 architektúrákat is tud emulálni) nyílt forrású, az újabb verziói virtuális gépként funkcionálnak x86-on bochs max x86-64 nyílt forráskódú DOSBox 6x86 (?) nyílt forráskódú bhole 386 csak DOS-t képes bootolni fx!32 386 (?) megszűnt IA32-EL pentium4 (?) Itaniumon érhető el JPC 486 Javaban írt emulátor Mac286 286 a korabeli Apple platformra írták, már megszűnt PowerVM Lx86 Pentium4 nem PC emulátor, hanem alkalmazás-szintű emulátor RealPC 386 (?) megszűnt SoftPC 386 (?) újrafordított Windows komponenseket is használ Vx32 ? alkalmazás-szintű emulátor Tornado64 6x86 jelenleg ARM és x86 rendszerekre érhető el futtatható állomány Fake86 80186 nyílt forrású jsLinux 386 böngészőben futó emulátor, csak Linuxot tud futtatni pce.js 286 böngészőben futó emulátor jsdosbox 8086 böngészőben futó emulátor Virtual x86 Pentium PRO böngészőben futó emulátor Jemul8 ? böngészőben futó emulátor Rpix86 ? Raspberry Pi-re tervezett x86 emulátor Win86emu ? Alkalmazás-szintű emulátor WindowsRT rendszeren i8086emu 8086 a rendszer debuggolásán a hangsúly 8086tiny 8086 kis méretű, egyszerű, nyílt forrású 8086 emulátor PCE 80186 az IBM PC 5150 számítógép elemeit emulálja py8086 8086 pythonban írt 8086 emulátor SPC/AT 5x86 freeware PCem 5x86 a hardverek széles skáláját képes emulálni DS2x86 8086 (?) x86 emulátor NintendoDS kézikonzolra PC286 286 megszűnt Virtual PC Pentium2 az újabb konfigurációkon virtuális gépként működik 86box Pentium3,SSE széles hardverskála, FOSS PCbox Pentium3,SSE a 86box bővített, tuningolt forkja, FOSS
Jegyzetek
Források
További információk
Kapcsolódó szócikkek Emulátor, emuláció
Kategória:Szoftverek Kategória:Emulátorok Kategória:Számítógép-tudomány Kategória:Mikroprocesszorok