應用程序虛擬化

應用程序在很大的程度上依賴于操作系統為其提供的功能,比如內存分配、設備驅動、服務進程、動態鏈接庫等。這些應用程序 之間也存在著復雜的依存關系。它們通常共享許多不同的程序部件,比如動態鏈接庫。如果一個程序的正確運行需要一個特定的動態鏈接庫,而另一個程序需要這個 動態鏈接庫的另一個版本,那么在同一個系統上同時安裝這兩個應用程序,就會造成動態鏈接庫的沖突,其中一個程序會覆蓋另一個程序所需要的動態鏈接庫,造成 另一個程序的不可用。因此,系統或其它應用程序的改變(如執行升級補丁等)都有可能導致應用之間的不兼容。當一個企業要為其組織中的桌面系統安裝新的應用 時,總是要進行嚴格的而煩瑣的測試,來保證新應用與系統中的已有應用不產生沖突。這個過程需要耗費大量的人力、物力、和財力。


有了應用虛擬化,應用可以運行在任何共享的計算機資源上。應用虛擬化為應用程序提供了一個虛擬的運行環境。在這個環境中,不僅擁有應用程序的可執行文件, 還包括它所需要的運行時環境。應用虛擬化為企業內部的IT管理提供了便利。在應用虛擬化之前,如果管理員要對一個應用程序進行更新,他必須處理每一臺機器 可能出現的不同類型的不兼容情況。采用應用虛擬化技術后,管理員只需要更新虛擬機環境中的應用程序副本,將其發布出去。

應用虛擬化是把應用對底層的系統和硬件的依賴抽象出來,從而解除應用與操作系統和硬件的耦合關系。應用程序運行在本地的應用虛擬化環境中,這個環境為應用 程序屏蔽了底層可能與其它應用產生沖突的內容,如動態鏈接庫。這簡化了應用程序的部署或升級,因為程序運行在本地的虛擬環境中,不會與本地的安裝的其它程 序產生沖突,同時帶來應用程序升級的便利。