The last ten years have been the era of compute virtualization, as applications became divorced from the hardware that runs them, thanks to the technology of virtual machines. One company, VMware (VMW), has been tied more closely to virtual machines than any other, and it is VMware that succeeded in bringing this technology to enterprise. As a result, VMware's revenue grew from around $200 million ten years ago to over $5 billion in 2013.

But now, it seems like the landscape is changing, with a new technology called Linux containers seemingly taking the place of virtual machines at many major cloud companies. In particular, Google (GOOG) (GOOGL) already deploys more than 2 billion containers each week, and it recently announced support for Docker, a platform for transporting and deploying containers, in its Google Compute Engine. Does this increasing support for containers signal the beginning of the end of VMware's incredible run?

What's the difference between containers and virtual machines?
A virtual machine is a way of bundling the operating system and all its applications. Each virtual machine is run in a software layer called the hypervisor that runs on top of the native operating system and the underlying hardware. This way, different operating systems and associated applications can be run on the same supporting system, allowing for simpler management and greater resource use.

Virtual machines allow different operating systems to run on the same hardware. Source: VMware. 

Linux containers also encapsulate and isolate applications. However, they are a lightweight alternative to VMs, as they only include certain dependencies rather than the entire underlying operating system. Instead, the environment that the container runs in will provide the core, or kernel, of the operating system.

Containers on Google's infrastructure compared with virtual machines. Source: Google.

There are both advantages and disadvantages to containers when compared to virtual machines. The disadvantages are a lower level of isolation, and the restriction that the application in the container has to be runnable on the operating system of the enclosing environment. However, the corresponding advantages are containers' significantly smaller sizes and faster start-up times, as well as the ability to patch multiple containers by simply patching the underlying system.

The rising popularity of containers
Currently, containers are one of the hottest cutting-edge IT trends. Google runs all its internal as well as external services as containers, and it has already contributed several open-source tools to drive further Linux container adoption. Other cloud providers, including Microsoft, IBM, and Rackspace, are also providing support for container technologies.

And now, Red Hat (RHT) has included support for containers in its most recent version of Red Hat Enterprise Linux, or RHEL, which was released in June. With the growing popularity of RHEL in enterprise server environments, this will give an additional push to containers and might transform them from a promising but experimental technology to a mainstream enterprise solution.

What this means for VMware
VMware already has a large base of paying customers that are effectively locked in to its virtualization technology. Containers are unlikely to threaten this in any meaningful way. Also, there will always be use cases for full-fledged virtual machines, such as running legacy or non-Linux applications on commoditized hardware.

But the server virtualization market is getting gradually tapped out, and VMware has been looking to new areas for growth, including to hybrid cloud computing. It is here that containers might seriously interfere with VMware's ambitions, as the excitement and support for containers among cloud companies indicates. VMware tied its fate to a technology that was wildly successful for a period of time, but unless it adapts, the company could easily find itself left behind.