Application virtualization definition
Application virtualization is a technology that encapsulates computer programs from the operating system on which they run. It places applications in a self-contained environment, reducing system clashes and dependencies.
See also: server virtualization, network function virtualization, virtual machine migration, container isolation
How application virtualization works
- 1.A software tool first “packages” or “captures” the application into a virtualized bundle. The bundle includes the application and all its dependencies, except the underlying OS.
- 2.The packaged application is then deployed to end-user devices. When users launch the application, it operates within its virtual space on the device.
- 3.Although the application thinks it is interacting with its native OS, it's actually communicating with a virtual layer. It is isolated from other applications and the underlying OS.
Benefits of application virtualization
- Portability. Applications can operate on any device without installation, simplifying software deployment.
- Compatibility. It reduces conflicts between applications or between the application and the OS. This is particularly beneficial for legacy software on newer systems.
- Simplified management. Centralized management of applications makes updates and patches easier.
- Isolation. Applications don't interfere with each other, reducing malfunction risks.
Limitations of application virtualization
- Load issues. Running applications in a virtual environment can increase the system load and reduce speed.
- Complexity. Packaging and deploying virtualized applications is more complex than standard installation.
- Compatibility. Not all applications or software are suitable or supported for virtualization.
- Licensing. Licensing models for virtualized applications can be more complex or costly.