Jak działa emulacja i dlaczego jest tak wolna?

  • Michael Cain
  • 0
  • 3338
  • 750
Reklama

W przeszłości omówiliśmy kilka przykładów emulacji, ale tylko omawialiśmy, jak to naprawdę działa. I w większości jest w porządku. Całkowicie możliwe jest uruchomienie komputera i użycie emulatora bez martwienia się o szczegóły.

Ale czy kiedykolwiek zastanawiałeś się, co tak naprawdę dzieje się za kulisami? Dlaczego emulatory są tak wolne? A nawet w jaki sposób emulacja może jeszcze bardziej poprawić Twoje codzienne życie? Czytaj dalej, a zobaczysz, jak niesamowita jest emulacja.

Nie cały sprzęt jest taki sam

Na przykład gry PlayStation nie działają w systemie Windows, ponieważ te gry nie są zaprojektowane do działania na normalnych komputerach. Urządzenia PlayStation są bardzo specyficzne pod względem fizycznym i zawierają unikalny sprzęt, którego Windows - lub inny system operacyjny komputera - nie umie używać.

Tutaj pojawia się emulacja: emulacja ma na celu uruchomienie programów zaprojektowanych dla jednego rodzaju systemu na innym rodzaju systemu, i programy wykonujące ten proces są nazywane emulatory. Szczegóły są nieco bardziej złożone, ale ostatecznie wszystkie starają się osiągnąć to samo: aby oprogramowanie działało na różnych urządzeniach.

Jak działają emulatory?

Emulacja wymaga dużej ilości pracy, aby uruchomić obcy program. Krótko mówiąc, emulator to oprogramowanie, które próbuje “akt” jak kawałek sprzętu. Zwykle oznacza to symulowanie wszystkich możliwości komponentu sprzętowego jako komponentów oprogramowania.

Jeśli zastanawiasz się, dlaczego nie ma emulatorów dla nowoczesnych systemów (np. Xbox One), właśnie dlatego. Proces ten wymaga dużo pracy i wysiłku, ponieważ nowoczesny sprzęt jest niezwykle złożony.

Wracając do przykładu PlayStation, emulator musiałby udawać, że ma specjalny układ dźwiękowy, kartę graficzną itp., A nawet rozszerzyć, aby symulować elementy peryferyjne, takie jak napędy CD.

Jednostka centralna

Najtrudniejszym komponentem do emulacji jest zwykle jednostka centralna (PROCESOR). Jest to jeden z podstawowych elementów każdego komputera, od smartfonów po konsole do gier i pod wieloma względami najważniejszy. Bez procesora programy nie mogłyby działać.

Główną różnicą między procesorami są ich zestawy instrukcji. Gruntownie, określają sposób, w jaki komputer wykonuje polecenia wydawane przez programy. Emulatory zazwyczaj atakują systemy, które mają inne zestawy instrukcji niż system hosta.

Na przykład procesor PlayStation korzysta z zestawu instrukcji o nazwie MIPS, powiedzmy, że różni się od używanych komputerów stacjonarnych i laptopów, x86.

Dlaczego emulatory są tak wolne??

Każda instrukcja CPU otrzymana przez emulator musi zostać przetłumaczona z jednego zestawu instrukcji na drugi zestaw instrukcji, a tłumaczenie to należy wykonać w locie. W powyższym przykładzie emulator PlayStation otrzymał instrukcję MIPS, przetłumaczył ją na x86, a następnie uruchomił na laptopie.

Jest to podstawa tego, w jaki sposób emulator może symulować całe urządzenie wewnątrz twojego komputera. Wyobraź sobie tłumacza, który próbuje przekazać rozmowę między dwojgiem ludzi posługujących się różnymi językami. Nawet jeśli tłumaczenie jest bardzo szybkie, zawsze nastąpi pewna utrata prędkości, ale im bardziej złożone języki, tym wolniejsze tłumaczenia.

Wirtualizacja a emulacja

Wirtualizacja Wirtualizacja i przetwarzanie w chmurze to nie to samo Wirtualizacja i przetwarzanie w chmurze to nie to samo Wiele osób uważa, że ​​wirtualizacja i przetwarzanie w chmurze to jedno, ale tak nie jest. Oto różnica i jak każdy może ułatwić Ci życie. jest bardzo podobny do emulacji, ale istnieją między nimi ważne różnice - w szczególności wirtualizacja zwykle odnosi się do korzystania z maszyn wirtualnych. Wirtualizacja i emulacja osiągają to samo, ale robią to w nieco inny sposób.

Oba są zaprojektowane do uruchamiania oprogramowania w izolowanym środowisku. Wirtualizacja koncentruje się na izolacji, podczas gdy emulacja koncentruje się na środowisku. Oznacza to, że emulatory symulują większy zakres sprzętu niż maszyny wirtualne. Na przykład nie można uruchomić systemu Playstation na maszynie wirtualnej.

Jednak z tego powodu wirtualizacja jest zwykle szybsza niż emulacja. Zamiast emulować system, maszyny wirtualne zamiast tego alokują pewną moc obliczeniową na jakiś izolowany podsystem. Oznacza to, że procesor nie jest emulowany, dlatego też maszyny wirtualne są mniej wszechstronne.

W związku z tym odbiorcy docelowi obu grup nieco się różnią. Emulatory są zwykle przeznaczone do konsol do gier wideo (lub innych systemów, które są całkowicie odmienne od zwykłych komputerów), podczas gdy wirtualne maszyny częściej znajdują się w firmach. Wynika to z faktu, że zapewniają one szybkie i bezpieczne środowisko do uruchamiania programów.

Jest to jednak głównie dręczenie. Praktycznie rzecz biorąc, wirtualizacja i emulacja są funkcjonalnie takie same, ponieważ istnieją głównie w celu przetłumaczenia z jednego “język instrukcji” do innego.

3 sposoby emulacji mogą przynieść Ci korzyści

Istnieje wiele sposobów korzystania z emulacji. Możesz nawet używać go teraz, nawet nie wiedząc! Oto kilka godnych uwagi przykładów.

1. Uruchom programy 32-bitowe w 64-bitowym systemie Windows

64-bitowe wersje systemu Windows używają specjalnego rodzaju emulacji o nazwie a warstwa zgodności do uruchamiania programów 32-bitowych. Nie ma potrzeby emulacji całego systemu, aby działało, ponieważ programy 32-bitowe są już podobne w projekcie. Z tego powodu proces jest niezwykle szybki.

Jeśli korzystasz z pakietu Microsoft Office, prawdopodobnie używasz wersji 32-bitowej - emulacja na wyciągnięcie ręki!

2. Zmień swój komputer w konsolę uniwersalną

Możesz grać na wielu starszych platformach gier wideo na komputerze za pomocą odpowiednich emulatorów - i zabawne jest to, że wiele z tych gier działa lepiej dzięki emulacji niż na ich macierzystym sprzęcie, ponieważ nowoczesne komputery są tak szybkie.

Na przykład, mając wystarczająco mocny komputer, możesz grać w niektóre gry w wyższych rozdzielczościach niż zostały zaprojektowane:

Możesz nawet skonfigurować swój telefon komórkowy w taki sposób, aby emulował konsole do gier wideo i zapewnia wygodniejsze korzystanie z urządzenia. Lub odwrotnie, emuluj telefon komórkowy Jak emulować system Android i uruchamiać aplikacje Android na komputerze Jak emulować system Android i uruchamiać aplikacje Android na komputerze W rzeczywistości uruchamianie aplikacji na Androida na komputerze stacjonarnym lub laptopie jest całkiem proste! Tutaj przeprowadzimy Cię przez najlepsze metody. w Twoim komputerze.

3. Przetestuj różne systemy operacyjne

Zwykle, jeśli chcesz wypróbować nowy system operacyjny, musisz zainstalować go na dysku twardym. Emulacja pozwala uruchomić osobny system operacyjny bezpośrednio na bieżącym systemie operacyjnym za pomocą maszyny wirtualnej Testowanie nowego systemu operacyjnego? Bądź bezpieczny dzięki maszynie wirtualnej testującej nowy system operacyjny? Bądź bezpieczny dzięki maszynie wirtualnej .

Istnieje wiele powodów, dla których chcesz to zrobić. Nie musisz się martwić, jeśli instalacja źle funkcjonuje, ponieważ jest ograniczona do środowiska wirtualnego. Może to być również Twoja jedyna opcja, jeśli chcesz wypróbować system operacyjny niezgodny ze sprzętem komputerowym, taki jak Raspberry Pi.

Tłumaczenie + symulacja = emulacja

Emulacja jest niezwykle skomplikowanym procesem, a ten artykuł dotyczy tylko podstaw. Ale mam nadzieję, że pozwoli ci rzucić okiem na to, co dzieje się pod maską. Więc kiedy uruchomisz emulator, czy to do grania w starą grę wideo, czy do bezpiecznego uruchomienia programu, będziesz wiedział dokładnie, dlaczego może być trochę powolny.

Jakie są twoje doświadczenia z emulacją?




Jeszcze bez komentarzy

O nowoczesnej technologii, prostej i niedrogiej.
Twój przewodnik w świecie nowoczesnych technologii. Dowiedz się, jak korzystać z technologii i gadżetów, które nas otaczają każdego dnia i dowiedz się, jak odkrywać ciekawe rzeczy w Internecie.