Treść książki

Przejdź do opcji czytnikaPrzejdź do nawigacjiPrzejdź do informacjiPrzejdź do stopki
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łowajednostkacentralnaż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
narzucajednakwysokikosztkaż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.Wźniejszymczasie,wreakcjina
problemyzwykonywaniemwieluaplikacjiMicrosoftWindowsnaprocesorach
Intelx86,rmaVMwareopracował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(virtualmachinemanagerVMM)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ótVMMjakovirtualmachinemonitormonitor
maszynywirtualnejprzyp.tłum.
17Choćang.hostmażneznaczeniazależnieodkontekstu(komputersieciowylub
goszczącyinnysystem),zważywszynajegozwięzłość,będziemydalejposługiwaćsiętym
zapożyczeniembezcudzysłowówprzyp.tłum.