Hur fungerar emulering och varför är det så långsamt?

Du har nog hört talas om emulering innan, men vet du vilken emulering faktiskt betyder eller hur det fungerar?

Du har nog hört talas om emulering innan, men vet du vilken emulering faktiskt betyder eller hur det fungerar?
Annons

Vi har tagit fram några exempel på emulering i det förflutna, men bara borstat på hur det verkligen fungerar. Och för det mesta är det bra. Det är helt möjligt att bara starta din dator och använda en emulator utan att oroa dig för detaljerna i den.

Men har du någonsin undrat vad som händer bakom kulisserna? Varför emulatorer är så långsamma? Eller ens hur emulering kan ytterligare förbättra ditt dagliga liv? Läs vidare och du kommer bara se hur fantastiskt emulering verkligen är.

Inte allt hårdvara görs lika

Exempelvis fungerar inte PlayStation-spel på Windows eftersom dessa spel inte är utformade för att köras på vanliga datorer. PlayStation-enheter är mycket specifika i sin fysiska smink och innehåller unik maskinvara som Windows - eller något annat operativsystem för datorn - inte vet hur man använder.

Det är här emulering kommer in: Emulering syftar till att köra program utformade för ett slags system på en annan typ av system, och de program som utför denna process kallas emulatorer . Detaljerna är lite mer komplexa, men i slutändan försöker de alla att uppnå samma sak: att göra programvaran köra över olika hårdvaror.

Hur fungerar emulatorer?

Det finns en stor mängd arbete som emulering måste göra för att få ett utländskt program att springa. Kort sagt, en emulator är programvara som försöker "agera" som en del maskinvara. Vanligtvis innebär det att simulera alla förmågor hos en hårdvarukomponent som programkomponenter .

Hur fungerar emulering och varför är det så långsamt? PS2-emulatorn

Om du undrar varför det inte finns emulatorer för moderna system (t.ex. Xbox One), är det anledningen till det. Det tar mycket hårt arbete och ansträngningar att få processen att fungera, eftersom modern hårdvara är extremt komplex.

När man går tillbaka till PlayStation-exemplet skulle en emulator behöva låtsas ha ett speciellt ljudchip, grafikkort och så vidare, även utsträckta för att simulera periferiska komponenter som cd-enheter.

Centrala behandlingsenheten

Den svåraste komponenten att emulera är vanligtvis centralbehandlingsenheten (CPU). Det är ett av kärnelementen i varje dator, från smartphones till videospelkonsoler, och på många sätt den viktigaste. Utan en CPU skulle programmen inte kunna fungera.

Hur fungerar emulering och varför är det så långsamt? CPU-skärm

Huvudvägen för processorer skiljer sig från varandra i deras instruktionsuppsättningar . I grund och botten bestämmer de hur en dator utför kommandon som program ger den . Emulatorer riktar sig i allmänhet till system som har olika instruktionsuppsättningar än värdsystemet.

Till exempel använder PlayStation CPU en instruktionsuppsättning som heter MIPS, som skiljer sig från stationära datorer och bärbara datorer som använder x86 .

Varför är emulatorer så långsamma?

Varje CPU-instruktion som mottas av emulatorn behöver översättas från en instruktion till den andra instruktionssatsen, och denna översättning behöver göras på flyg. Så i exemplet ovan skulle en PlayStation-emulator få en MIPS-instruktion, översätt den till x86 och kör sedan den på den bärbara datorn.

Detta är grunden för hur en emulator kan simulera en hel enhet i din egen dator. Föreställ dig en tolk som försöker förmedla en konversation mellan två personer som talar olika språk. Även om översättningen är väldigt snabb kommer det alltid att finnas en viss förlust i hastighet, men ju mer komplexa språk, desto långsammare översättningar.

Virtualisering vs Emulering

Virtualisering Virtualisering och Cloud Computing är inte samma sak Virtualisering och Cloud Computing är inte samma sak Många tycker att virtualisering och cloud computing är en i samma sak, men de är inte. Här är skillnaden och hur alla kan göra ditt liv enklare. Read More är mycket lik emulering, men det finns viktiga skillnader mellan dem - i synnerhet refererar virtualisering brukar till användning av virtuella maskiner. Virtualisering och emulering gör samma sak, men de går om det på något annorlunda sätt.

Båda är utformade för att köra programvara i en isolerad miljö. Virtualisering fokuserar på isoleringen medan emulering fokuserar på miljön. Vad detta betyder är att emulatorer simulerar ett större utbud av hårdvara än virtuella maskiner kan. Du kan inte köra ett Playstation-system i en virtuell maskin, till exempel.

Hur fungerar emulering och varför är det så långsamt? VirtualBox

På grund av detta tenderar virtualisering att vara snabbare än emulering. I stället för att emulera ett system, fördelar virtuella maskiner i stället lite bearbetningskraft till ett visst isolerat delsystem. Det innebär att CPU inte emuleras, vilket också är orsaken till att virtuella maskiner tenderar att vara mindre mångsidiga.

Som sådan skiljer sig målgrupperna för de två något. Emulatorer tenderar att vara utformade för spelkonsoler (eller andra system som helt skiljer sig från vanliga datorer) medan virtuella maskiner är mer benägna att hitta i företag. Detta beror på att de ger en snabb och säker miljö för att kunna köra program i.

Detta är dock mest nitpicking. Praktiskt sett är virtualisering och emulering funktionellt densamma, eftersom de huvudsakligen existerar för att översätta från ett "instruktionsspråk" till en annan.

3 sätt emulering kan gynna dig

Det finns ett antal sätt att du kan dra nytta av emulering. Du kan till och med använda det nu utan att ens veta! Här är några noterbara exempel.

1. Kör 32-bitarsprogram på 64-bitars Windows

64-bitars versioner av Windows använder en speciell typ av emulering som heter ett kompatibilitetslager för att köra 32-bitarsprogram. Det finns inget behov av att emulera ett helt system för att få saker att fungera eftersom 32-bitarsprogrammen liknar design redan. På grund av detta är processen extremt snabb.

Om du använder Microsoft Office använder du förmodligen 32-bitarsversionen - emulering direkt till hands!

2. Gör din dator till en universell konsol

Du kan spela många äldre videospelplattformar på din dator med rätt emulatorer - och det roliga är att många av dessa spel faktiskt går bättre genom emulering än på deras inbyggda hårdvara, eftersom moderna datorer är så snabba.

Till exempel, med en tillräckligt stark dator kan du faktiskt spela några spel med högre upplösningar än de var avsedda för:

Du kan även konfigurera din mobiltelefon för att efterlikna videospelkonsoler för en mer handhållen upplevelse. Eller omvänt emulera en mobil Hur man emulerar Android och kör Android-appar på din dator Hur man emulerar Android och kör Android-appar på din dator Det är faktiskt ganska enkelt att få Android-appar som körs på skrivbordet eller datorn! Här går vi igenom de bästa metoderna. Läs mer på din dator.

3. Testa olika operativsystem

Vanligtvis om du vill prova ett nytt operativsystem måste du installera det på hårddisken. Emulering kan du köra ett separat operativsystem direkt på ditt nuvarande operativsystem genom att använda en virtuell maskin Testa ett nytt operativsystem? Håll dig säker med en virtuell maskinprovning ett nytt operativsystem? Håll dig säker med en virtuell maskin Läs mer.

Det finns ett antal anledningar till varför du vill göra det här. Du behöver inte oroa dig om installationen misslyckas, eftersom den är begränsad till en virtuell miljö. Det kan också vara ditt enda alternativ om du vill prova ett operativsystem som är oförenligt med din maskinvara, t.ex. en för Raspberry Pi.

Översättning + Simulation = Emulering

Emulering är en extremt komplicerad process och den här artikeln täcker bara grunderna. Men förhoppningsvis ger du en glimt på vad som händer under huven. Så när du startar en emulator, oavsett om det är att spela ett gammalt videospel eller för att säkert köra ett program, vet du exakt varför det kan vara lite långsamt.

Vilka är dina erfarenheter med emulering?

In this article