Virtualizácia aplikácií

Vo fyzickom prostredí má každá aplikácia početné závislosti od operačného systému – služby ako prideľovanie pamäte, ovládače zariadení atď. Nekompatibilitu aplikácie s operačným systémom je možné vyriešiť pomocou virtualizácie servera alebo virtualizácie prezentácie. Avšak v prípade vzájomnej nekompatibility medzi aplikáciami nainštalovanými v rovnakej inštancii operačného systému je nutné použiť virtualizáciu aplikácií.

Ilustračný obrázok
V bežnom výpočtovom prostredí sa aplikácie inštalujú priamo do operačného systému. Všetky aplikácie potom zapisujú do zdieľaných systémových súborov, a preto často dochádza k ich vzájomným konfliktom, ktoré často vedú k nestabilite a dokonca k haváriám. Microsoft Application Virtualization tieto konflikty eliminuje, lebo virtuálne aplikácie nie sú nikdy inštalované do miestneho systému. V súboroch ani registri miestneho počítača nedochádza k úplne žiadnym zmenám.
Ilustračný obrázok
Pri virtualizácii aplikácií beží každá aplikácia vo vlastnom ochrannom prevádzkovom prostredí, často označovanom ako „virtuálna bublina“, ktoré ju izoluje od ostatných aplikácií a hostiteľského operačného systému. V prípade potreby môže správca nakonfigurovať virtuálne aplikácie pre vzájomnú interakciu alebo zdieľanie súčastí. Na to slúži nástroj DSC (Dynamic Suite Composition).

Aplikácie nainštalované v tom istom zariadení často zdieľajú prvky konfigurácie, avšak také zdieľanie môže byť zdrojom problémov. Jedna aplikácia môže pre svoje fungovanie napríklad vyžadovať určitú verziu niektorej knižnice DLL, zatiaľ čo iná aplikácia v rovnakom systéme vyžaduje inú verziu tej istej knižnice DLL. Po inštalácii oboch aplikácií vznikne situácia, kedy jedna z nich prepíše verziu vyžadovanú druhou aplikáciou a spôsobí tak jej nesprávne fungovanie alebo haváriu. Organizácie sa takým situáciám často snažia predísť rozsiahlym testovaním aplikačnej kompatibility pred inštaláciou novej aplikácie. Taký prístup je síce možný, avšak časovo aj finančne náročný.

Virtualizácia aplikácií tento problém rieši vytvorením kópie všetkých zdieľaných prostriedkov, ktorá je vyhradená iba pre danú aplikáciu. Tie konfigurácie, ktoré aplikácia zdieľa s inými aplikáciami v rovnakom systéme (napr. záznamy v registri, určité knižnice DLL atď.), sú namiesto toho pribalené k aplikácii a spúšťané v medzipamäti daného počítača, čím vzniká virtuálna aplikácia. Po nasadení využíva virtuálna aplikácia vlastnú kópiu týchto zdieľaných prostriedkov.

Virtualizácia aplikácií podstatne uľahčuje nasadenie. Aplikácie si už nekonkurujú s ohľadom na verzie knižníc DLL a ďalšie zdieľané prvky prostredia, a preto pred nasadením nie je takmer vôbec potrebné testovať nové aplikácie na konflikty so súčasným softvérom. Tieto virtuálne aplikácie môžu byť spustené súbežne s normálnymi nainštalovanými aplikáciami. Nie je teda nutné virtualizovať všetok softvér, aj keď taký prístup predchádza najrôznejším problémom a obmedzuje čas, ktorý koncoví používatelia a pracovníci podpory trávia ich riešením. Efektívne riešenie pre virtualizáciu aplikácií taktiež umožňuje spravovať virtuálne aj nainštalované aplikácie zo spoločného rozhrania.