A reader of my, "Virtual Machine Addiction: We've gone too far," post asked the question, "Why do we need virtualization?" He added that instead of virtualization, "Developers need to fix the OS." To him, and you, I say that they already have fixed it.
So, the way virtualization works is this: You have a base operating system, say Linux for example, upon which you install multiple applications, as virtual machines, that perform their functions. Those functions might take the form of web services, DNS services, database services and so on. So, virtualization clearly answers his question of why can't operating systems run multiple applications.
In fact, all modern operating systems can run multiple applications simultaneously. They're built for it.
The other question, his first, "why virtualize" is just as simple to answer.
The primary reason to virtualize is cost. It all boils down to getting more bang for the almighty buck. And, there's nothing wrong with that.
Instead of installing one operating system per set of hardware, referred to as a server, virtualization leverages the hardware to run multiple operating systems. Each VM looks like an application to the base operating system or hypervisor. The underlying hardware has enough horsepower to allow the hypervisor to run several of those applications at once.
It's the leveraged use of hardware for virtualization that allows hosting companies to provide services at very low costs. And, that's a very good thing.
If you don't think so, then try pricing a collocated system to that of a virtual private server (VPS) or virtual machine (VM). You'll find that, instead of pennies per hour or per day, you'll have to pay dollars per day.
Please post your questions in the Talkback section and I'll be happy to answer as many as I can in this forum.