Hvordan virker emulering og hvorfor er det så sakte?
Vi har dekket et par eksempler på emulering i det siste, men bare børstet på hvordan det virkelig fungerer. Og for det meste er det greit. Det er helt mulig å bare starte PCen din og bruke en emulator uten å bekymre deg for detaljene i den.
Men har du noen gang lurt på hva som faktisk skjer bak kulissene? Hvorfor emulatorer er så sakte? Eller til og med hvordan emulering kan forbedre ditt daglige liv ytterligere? Les videre og du vil se akkurat hvor fantastisk emulering egentlig er.
Ikke alt maskinvare er gjort like
For eksempel fungerer ikke PlayStation-spill på Windows fordi disse spillene ikke er laget for å kjøre på vanlige datamaskiner. PlayStation-enheter er svært spesifikke i sin fysiske sminke og inneholder unik maskinvare som Windows - eller et annet PC-operativsystem - ikke vet hvordan de skal brukes.
Det er her emulering kommer inn: emulering tar sikte på å kjøre programmer utviklet for en slags system på en annen type system, og programmene som utfører denne prosessen kalles emulatorer. Detaljerne er litt mer komplekse, men til slutt prøver de alle å oppnå det samme: å lage programvare som kan kjøre på forskjellige maskinvare.
Hvordan fungerer emulatorer?
Det er mye arbeid som emulering må gjøre for å få et utenlandsk program å kjøre. Kort sagt, en emulator er programvare som prøver å “handling” som et stykke maskinvare. Vanligvis betyr dette simulerer alle evnene til en maskinvarekomponent som programvarekomponenter.
Hvis du lurer på hvorfor det ikke er emulatorer for moderne systemer (for eksempel Xbox One), er dette grunnen til at. Det krever mye hardt arbeid og arbeid for å få prosessen til å fungere fordi moderne maskinvare er svært komplisert.
Når du går tilbake til PlayStation-eksempelet, må en emulator late som å ha en spesiell lydbrikke, grafikkort og så videre, til og med utvide seg til å simulere perifere komponenter som CD-stasjoner.
Sentralenhet
Den vanskeligste komponenten til å etterligne er vanligvis sentralenhet (PROSESSOR). Det er en av kjerneelementene i hver datamaskin, fra smarttelefoner til videospillkonsoller, og på mange måter er det viktigste. Uten en CPU ville programmene ikke kunne fungere.
Hovedveien CPUer er forskjellig fra hverandre er i deres instruksjonssett. I utgangspunktet, de bestemmer hvordan en datamaskin utfører kommandoer som programmer gir den. Emulatorer målrettes generelt mot systemer som har forskjellige instruksjonssett enn vertssystemet.
For eksempel bruker PlayStation-CPUen et instruksjonssett som heter MIPS, som er forskjellig fra skrivebord og bærbare datamaskiner som bruker, sier, x86.
Hvorfor er emulatorer så langsomme?
Hver CPU-instruksjon mottatt av emulatoren må oversettes fra en instruksjonssett til det andre instruksjonssettet, og denne oversettelsen må gjøres på fluen. Så i eksemplet ovenfor, vil en PlayStation-emulator motta en MIPS-instruksjon, oversette den til x86, deretter kjøre den på den bærbare datamaskinen.
Dette er grunnlaget for hvordan en emulator kan simulere en hel enhet inne i din egen datamaskin. Tenk deg en tolk som prøver å videresende en samtale mellom to personer som snakker forskjellige språk. Selv om oversettelsen er veldig rask, vil det alltid være noe tap i hastighet, men jo mer kompliserte språkene, jo langsommere oversettelsene.
Virtualisering vs emulering
Virtualisering Virtualisering og Cloud Computing er ikke det samme Virtualisering og Cloud Computing er ikke det samme Mange tror at virtualisering og cloud computing er en i det samme, men de er ikke. Her er forskjellen og hvordan hver enkelt kan gjøre livet enklere. Les mer er veldig lik emulering, men det er viktige forskjeller mellom dem - særlig virtualisering refererer vanligvis til bruken av virtuelle maskiner. Virtualisering og emulering utfører det samme, men de går om det på litt forskjellige måter.
Begge er designet for å kjøre programvare i et isolert miljø. Virtualisering fokuserer på isolasjonen mens emuleringen fokuserer på miljøet. Hva dette betyr er at emulatorer simulerer et større utvalg av maskinvare enn virtuelle maskiner kan. Du kan ikke kjøre et Playstation-system i en virtuell maskin, for eksempel.
På grunn av dette har virtualisering en tendens til å være raskere enn emulering. I stedet for å simulere et system, tildeler virtuelle maskiner i stedet litt prosessorkraft til enkelte isolerte delsystemer. Dette betyr at CPU ikke er emulert, som også er grunnen til at virtuelle maskiner har en tendens til å være mindre allsidig.
Som sådan, varierer målgruppene til de to. Emulatorer pleier å være designet for videospillkonsoller (eller andre systemer som er helt forskjellige fra vanlige datamaskiner), mens virtuelle maskiner er mer sannsynlig å bli funnet i virksomheter. Dette skyldes at de gir et raskt og sikkert miljø for å kunne kjøre programmer i.
Dette er imidlertid for det meste nitpicking. Praktisk sett er virtualisering og emulering funksjonelt det samme fordi de hovedsakelig eksisterer for å oversette fra en “undervisningsspråk” til en annen.
3 måter emulering kan være til nytte for deg
Det er flere måter du kan dra nytte av emulering. Du kan til og med bruke det nå uten å vite det! Her er noen bemerkelsesverdige eksempler.
1. Kjør 32-biters programmer på 64-biters Windows
64-biters versjoner av Windows bruker en spesiell type emulering kalt a kompatibilitetslag å kjøre 32-biters programmer. Det er ikke nødvendig å etterligne et helt system for å få ting til å fungere, fordi 32-biters programmer er like i design allerede. På grunn av dette er prosessen ekstremt rask.
Hvis du bruker Microsoft Office, bruker du sannsynligvis 32-biters versjon - emulering like ved hånden!
2. Gjør datamaskinen til en universell konsoll
Du kan spille mange eldre videospillplattformer på datamaskinen din ved hjelp av de rette emulatorene - og det morsomme er at mange av disse spillene faktisk løper bedre gjennom emulering enn på den innfødte maskinvaren fordi moderne datamaskiner er så fort.
For eksempel, med en sterk nok datamaskin, kan du faktisk spille noen spill med høyere oppløsninger enn de var designet for:
Du kan til og med sette opp mobiltelefonen din for å etterligne videospillkonsoller for en mer håndholdt opplevelse. Eller omvendt, emulere en mobiltelefon Hvordan emulere Android og kjøre Android-apper på din PC Hvordan emulere Android og kjøre Android-apper på PC-en din Det er faktisk ganske enkelt å få Android-apper som kjører på skrivebordet eller datamaskinen! Her styrer vi deg gjennom de beste metodene. Les mer på datamaskinen din.
3. Test ut forskjellige operativsystemer
Vanligvis hvis du vil prøve et nytt operativsystem, må du installere det på harddisken din. Emulering lar deg kjøre et eget operativsystem rett på ditt nåværende operativsystem ved bruk av en virtuell maskin Testing av et nytt operativsystem? Hold deg trygg med en virtuell maskin Testing et nytt operativsystem? Hold deg trygg med en virtuell maskin Les mer .
Det er flere grunner til at du vil gjøre dette. Du trenger ikke å bekymre deg hvis installasjonen din feiler, siden den er begrenset til et virtuelt miljø. Det kan også være ditt eneste alternativ hvis du vil prøve et operativsystem som er uforenlig med maskinvare, for eksempel en for Raspberry Pi.
Oversettelse + Simulering = Emulering
Emulering er en ekstremt komplisert prosess, og denne artikkelen dekker bare grunnleggende. Men forhåpentligvis gir det deg et glimt på hva som skjer under hetten. Så når du starter opp en emulator, enten det er å spille et gammelt videospill, eller å kjøre et program trygt, vet du nøyaktig hvorfor det kan være litt sakte.
Hva er dine erfaringer med emulering?
Utforsk mer om: Emulering, Virtualisering.