The evolution of computing from VMs to containers to serverless
Earlier in this chapter, we touched on the evolution of computing from mainframes and applications with dedicated servers to VMs, where you can purchase hardware in bulk and allocate portions of it to different applications. This evolution was extremely meaningful as VMware rose to glory and organizations around the world adopted virtualization, making computing more cost-effective.
VMs are software that emulates a physical computer. Each VM has an operating system and resources, such as CPU, memory, and storage. VMs can be used to run any type of application, including web applications, databases, and development environments.
Some of the challenges with virtualization include resource efficiency, agility, scalability, and cost. Because each VM requires an operating system, VMs will require the resources to run a full guest operating system as well as the application, which consumes significant resources. This dependence...