Содержание книги
перейти к управлению читателемперейти к навигацииперейти к деталям бронированияперейти к остановкам
44
Rozdział1.Wstęp
Mówiącnajogólniej,oprogramowaniewirtualizacjizaliczasiędoklasy,do
którejnależyrównieżemulacja.Emulację(emulation),obejmującąprogramowe
symulowaniesprzętukomputerowego,stosujesięzazwyczajwówczas,gdy
źródłowajednostkacentralnaróżnisięoddocelowej.Naprzykład,gdyApple
przechodziłwswoichlaptopachzprocesoraIBMPowernaCPUIntela,dołą-
czałudogodnienieemulacjinazwane„Roseta”,dziękiktóremuaplikacjeskom-
pilowanedlaIBM-owskiejjednostkicentralnejmogłydziałaćnaprocesorach
Intela.Tensampomysłmożnarozszerzyć,umożliwiająccałemusystemowi
operacyjnemu,napisanemudlajednejplatformy,działanienainnej.Emulacja
narzucajednakwysokikoszt–każdyrozkazzpoziomumaszynowego,który
wźródłowymsystemiejestwykonywanywprostnardzennymsprzęcie,musi
byćtłumaczonynarównoważnąfunkcjęwsystemiedocelowym,coniejed-
nokrotnieprowadzidokilkurozkazówdocelowych.Jeślijednostkicentralne:
źródłowaidocelowamająpodobnepoziomywydajności,emulowanykod
możedziałaćznaczniewolniejniżkodrodzimy(„natywny”).
Wprzypadkuwirtualizacjirzeczymająsięinaczej.Systemoperacyjnyskom-
pilowanyrdzenniedlakonkretnejarchitekturyCPUdziaławewnątrzinnego
systemuoperacyjnegorównieżjakordzennydladanejjednostkicentralnej.Wir-
tualizacjaporazpierwszypojawiłasięnaIBM-owskichkomputerachgłównych
(mainframe)jakometodaumożliwiającawieluużytkownikomwspółbieżnewy-
konywaniezadań.Puszczeniewruchwielumaszynwirtualnychumożliwiało
(iwciążumożliwia)wieluużytkownikomwykonywaniezadańwsystemieza-
projektowanymdlajednegoużytkownika.Wpóźniejszymczasie,wreakcjina
problemyzwykonywaniemwieluaplikacjiMicrosoftWindowsnaprocesorach
Intelx86,firmaVMwareopracowałanowątechnologięwirtualizacjiwpostaci
aplikacjipracującejpodsystememWindows.Taaplikacjawykonywałajednąlub
więcejgoszczonych(guest)kopiiWindowslubinnychrdzennychwobecx86sys-
temówoperacyjnych,zktórychkażdywykonywałwłasneaplikacje(rys.1.16).
Windowsbyłtutajgoszczącym(host)systememoperacyjnym,aaplikacja
VMwarezarządcąmaszynwirtualnych(virtualmachinemanager–VMM)16.
ZarządcaVMMwykonujegoszczonesystemyoperacyjne,administrujeuży-
wanymiprzezniezasobamiichronikażdysystemgoszczonyprzedinnymi.
Mimożewspółczesnesystemyoperacyjnesąwpełnizdolnedoniezawod-
negowykonywaniawieluaplikacji,zastosowaniawirtualizacjinieustanniero-
sną.WlaptopachidesktopachVMMpozwalaużytkownikowinazainstalowa-
niewielusystemówoperacyjnychdoeksploracjilubwykonywaniaaplikacji
napisanychdlasystemówoperacyjnychinnychniżrdzennyhost17.Naprzykład
16Inniautorzy(np.Stallings)rozwijająskrótVMMjakovirtualmachinemonitor–monitor
maszynywirtualnej–przyp.tłum.
17Choćang.hostmaróżneznaczeniazależnieodkontekstu(komputersieciowylub
goszczącyinnysystem),zważywszynajegozwięzłość,będziemydalejposługiwaćsiętym
zapożyczeniembezcudzysłowów–przyp.tłum.