We each behave according to our nature. It should come as no surprise, then, to learn that while a virtualization supplier believes that the operating system is, effectively, a feature, an operating system vendor would argue that the converse is true. The philosophical differences between Red Hat and VMware could not have been more apparent during their respective events – September’s VMworld gathering in Las Vegas and yesterday’s Red Hat analyst day held at the New York Stock Exchange.
I use VMware ESX a lot, but I do believe that it and also expensive SANs exist mainly due to the overwhelming desire to use cheap commodity OSs and servers in applications that demand just a little bit more than commodity stuff is built for.
Take for example Windows. Can it do volume snapshots and clones? Is it wise to run several “main” apps on one big OS image? Is it easy to measure performance? Is it built for high availability? Can sysadmin errors be easily reverted? Is bare metal recovery easy? Is server provisioning easy?
The answer to all of these questions is now mostly “yes” , but it was “no” or “not really” until fairly recently, meaning during the period that x86 virtualization gained popularity. That it made it possible to rehost legacy Windows apps from the dark ages made it even more attractive.
Adding a lower layer like VMware or a SAN fixes some of these deficiencies while still keeping Windows Windows, which keeps businesses happy because they can continue to hire cheap people and reduce cost of acquisition. Whether this actually saves money is anybody’s guess, but I think VMware is a good answer to “never mind how we got here, now that we’re here, what do we do?”
ESX currently leads everybody on features. It’s anybody’s guess what’ll happen as commodity OSs get better. But for now, I think the “hypervisor below the dumb commodity OS” model makes the most sense.
Why do we need to run all these SEPARATE OS’s?
On a VMS system or a mainframe, or hell on UNIX like Solaris, and HPUX we could run lots and lots of different applications ALL ON THE SAME system. We could manage them all independently, patch them they would co-exist well, etc…
Seems like a huge waste of resources to have to run TWO whole operating systems just because you can’t run Oracle and MSSQL on the same server.
Maybe its because Windows when you get down to it is still A SINGLE USER DESKTOP OS, which had a few features SLAPPED on it to make it look like a server.
Edited 2008-10-12 00:54 UTC
Windows became multi user in 1993 with the release of Windows NT. You are talking about Windows 9x or earlier which was indeed crap.
NT is not multi-user in the true sense of the word… it is single user with profiles etc…
Vista is supposed to be the first true multi-user Windows OS, but I haven’t used it or looked into it deeply enough to really talk about that.
I’m not sure how you can justify your statement. Windows has supported multiple users logging in at the same time since NT 4 with Terminal Services. Before Terminal Services, you could have multiple remote users at a time, but the graphical system was tied to the single console user so your statement would have been accurate for those versions of NT.
But TS is more than a decade and a half old by now and it’s been in consumer OSes since the advent of XP.
Multiple user accounts is not the same as being a multi-user OS. There is no true separation between users logged in, etc.
It’s considered a security bug in the system if one non-administrative use of a Windows machine can affect another user. The only thing one user is able to do to another by design is DoS them via excessive CPU and resource consumption. The system as of Vista/WS08 has strong resource quota support, so this scenario can be prevented if you’re willing to put up with a significant management burden (I’m not sure how good Windows Server Resource Manager is… never used it).
Can you elaborate on the differences between ‘true separation between users, etc’ and what Windows provides?
It is my understanding that the separation that a process has from another process inside an OS is trivial vs. a wall between another process and a Hypervisor + OS. Thus you get some additional security.
How useful is an OS not run inside a VM?
How useful is a VM without OS to run inside it?
There’s your answer.