Comments
yourfanat wrote: I am using another tool for Oracle developers - dbForge Studio for Oracle. This IDE has lots of usefull features, among them: oracle designer, code competion and formatter, query builder, debugger, profiler, erxport/import, reports and many others. The latest version supports Oracle 12C. More information here.
Cloud Expo on Google News
SYS-CON.TV
Cloud Expo & Virtualization 2009 East
PLATINUM SPONSORS:
IBM
Smarter Business Solutions Through Dynamic Infrastructure
IBM
Smarter Insights: How the CIO Becomes a Hero Again
Microsoft
Windows Azure
GOLD SPONSORS:
Appsense
Why VDI?
CA
Maximizing the Business Value of Virtualization in Enterprise and Cloud Computing Environments
ExactTarget
Messaging in the Cloud - Email, SMS and Voice
Freedom OSS
Stairway to the Cloud
Sun
Sun's Incubation Platform: Helping Startups Serve the Enterprise
POWER PANELS:
Cloud Computing & Enterprise IT: Cost & Operational Benefits
How and Why is a Flexible IT Infrastructure the Key To the Future?
Click For 2008 West
Event Webcasts
Two Views of Virtualization: Does It Mean the End of the OS?
Within or outside the OS - what does the Virtualization future hold?

Scott Lowe's Blog

There appear to be basically two views on how virtualization will affect the future development of operating systems and computing environments in the personal computing space. One camp believes that virtualization functionality will be present within the operating system. The other camp believes it will be outside the operating system, perhaps in the form of a hypervisor or thin virtualization layer that resides “below” the OS and governs access to hardware.


There appear to be basically two views on how virtualization will affect the future development of operating systems and computing environments in the personal computing space. One camp believes that virtualization functionality will be present within the operating system. Whether that virtualization functionality comes bundled with the operating system or is a third-party add-on to the operating system is, quite frankly, irrelevant to this particular discussion. The other camp believes that virtualization will be outside the operating system, perhaps in the form of a hypervisor or thin virtualization layer that resides “below” the OS and governs access to hardware. Again, the discussion of whether this virtualization layer comes bundled with the hardware or comes from a third-party vendor is an interesting discussion (and one that I’d like to have), but is not relevant right at this moment.

My discussions of application agnosticism puts me in the camp that places virtualization functionality in the operating system. On the desktop side (not speaking of servers here), that kind of makes sense to me. It seems to me that the simplest approach - placing virtualization functionality within the operating system - is likely to be the approach that most people will accept. We have to keep in mind that millions of users out there are not nearly as technical as we are, and for them simple is good. It may not be the most technologically advanced approach but rather the simpler approach that wins out (especially on the consumer side).

Now, having said all that, I’d like to take a closer look at the alternate approach to having virtualization placed within the operating system. In this scenario, there is virtualization functionality that sits below the idea of today’s general purpose OS. For those of you familiar with ESX Server, think of it that way - some sort of bare metal virtualization layer that controls the hardware. From there, a collection of VMs will cooperatively provide the various services that are today provided by the general purpose OS. This idea is expressed in this article by Ron Oglesby (also linked to by this VMTN Blog entry as well).

In this approach, you might have a networking VM that is responsible for scanning inbound and outbound traffic, managing security policies, interacting with corporate networks and network access controls, etc. You can think of this as the “firewall” component of the general purpose OS (Windows Firewall on Windows, ipfw on Mac OS X, iptables on Linux), but more feature-rich and more isolated (the idea being that it is therefore more secure and harder to bypass or disable). Likewise, you might have a VM designed specifically for running sensitive corporate applications, a VM for surfing the Internet, and a VM that provides anti-virus services to the other VMs. Taken individually, none of these VMs could replace today’s general purpose OS; taken as a whole, the collection of VMs provides the services and functionality of a general purpose OS, but with greater isolation, encapsulation, and protection between these “service” VMs.

Is this a viable approach? Not today, in my opinion, but certainly in the future. (To be completely fair, Ron’s article was written in the context of the long-term impact of virtualization, so we can’t really look at today’s feasibility.) As Intel and AMD continue to add virtualization support in hardware and performance draws nearer to “native” performance, this definitely becomes a more viable approach. A couple questions persist in my mind, though:

  • What is the mechanism whereby a user adds new functionality to their computing environment, i.e., how does a user add a new service VM?
  • What kind of mechanism or tools are provided to the user to help manage, operate, or configure these service VMs?

Let’s say that the user’s “normal” working environment exists in a VM that runs Windows, Linux, or the like. We’ll call this VM-Home. From VM-Home, the user needs to be able to access the functionality of a networking/firewall VM (we’ll call this VM-FW) and a corporate applications VM (we’ll call this VM-Corp). How does the user go about switching between these VMs, like between VM-Home and VM-Corp? Does each VM provide its own windowing environment? How is switching between these windowing environments handled? Is there a common windowing environment provided by the virtualization layer? Is there some internal networking connectivity between VM-Home and VM-FW that allows the user to manage the VM-FW functionality? Where does the user go, or what program does the user run, to add a new VM (say, an anti-virus VM) to his/her environment?

“Scott, stop being so picky,” you say. “This is all being talked about in theory, anyway. It’s not like we need to have all the answers right now.”

You’re right, we don’t. But as we look at how these questions may be answered (someone’s got to answer them sometime), it seems that we’ll need to add some functionality to the virtualization layer in order to make it easier/more seamless to switch between the VM environments. Users will want a seamless UI to work with, so we may need to add a windowing environment to the virtualization layer. Either that or we’ll have to enable some sort of mechanism whereby other VMs can display windows inside another VM, and now we’re breaking down the isolation/protection boundaries that we originally found to be desirable. Users will want to be able to copy and paste between the VM environments, so we’ll need to add that functionality to the virtualization layer. Users will want to be able to double-click an icon and have it launch in the appropriate VM environment, so now we’ve got to add some links and communications channels between the various VM components in our computing solution. As each of these pieces of functionality is added, the virtualization layer starts to look more like a general purpose OS—just one that’s leaner, meaner, and free of years of legacy code.

As this virtualization layer starts to resemble a general purpose OS and as the general purpose OS starts to incorporate technologies such as virtualization, application-specific subsystems, and the like, these two start to look a lot like each other. That brings us back to a central question in this discussion, a question I asked when I first started discussing the future of the OS:

So I guess the future of the operating system depends on your perspective. If you’re an operating system guy, you’ll say that the OS has a bright future, and point to developments such as built-in paravirtualization and bundled hypervisors to prove your point. If you’re a virtualization guy, you’ll say that the OS is dead, and you’ll point to developments such as third-party paravirtualization and independent hypervisors to prove your point. Which of these two is correct?

Indeed! Which approach do you think desktop computing will take? Application agnosticism, in which virtualization and other technologies are placed within the operating system, or groups of virtual machines (“VM cooperatives”? “VM federations”? “OS agnosticism”? Need a fancy marketing term again…) coordinated by a hardware/firmware virtualization layer?

What do you think?

 

About Scott Lowe
Scott Lowe is a senior engineer with ePlus, a local reseller/VAR in Raleigh, NC, where he specializes in server virtualization, storage, and related enterprise technologies. He has been in the IT field for more than 15 years, starting out with desktop support. Along the way, he has worked as an instructor, a technical trainer and Microsoft Certified Trainer (MCT), systems administrator, IT manager, and as Chief Technology Officer for a small start-up.

In order to post a comment you need to be registered and logged in.

Register | Sign-in

Reader Feedback: Page 1 of 1

Trackback Added: Verdwijnt het operating systeem als gevolg van virtualisatie?; Scott Lowe gaat in zijn blog in op de vraag of de huidige visualisatiegolf ervoor zal zorgen dat het operating systeem (O/S) in de personal computing hoek gaat verdwijnen. Dat is namelijk een stelling die wel eens vanuit de VMware hoek wordt ingenomen...

You are doing an excellent job in phrasing the right questions. However, somehow we have all accepted the notion of a BIOS as a layer between the hardware and the operating system in the personal computing space. At least a layer in time (you need the BIOS to boot the O/S), but also a static layer supporting functions as advanced power management for the O/S during operation. Somehow, this hypervisor discussion reminds me of just an 'extended' BIOS. Actually, this seems to be exactly what Phoenix had in mind with their HyperCore / HyperSpace layer (see e.g. David Marshall's discussion at http://weblog.infoworld.com/virtualization/archives/2007/11/phoenix_tech... ). Wouldn't it then be reasonable to expect all future systems to have a HyperCore type of layer providing basic functions (browsing, media playing, remote desktop, …), while at the same time providing the hypervisor functionality for added operating systems (that is, if the user needs one)? That way the industry will at least have a chance to design a leaner and meaner core O/S free of legacy code, just as you suggested. For a while, users would have the freedom to add traditional O/S’s on top of that core. After some years (?) the core would be rich enough to support 90% of end-users without adding any O/S.


Your Feedback
Virtualisatie wrote: Trackback Added: Verdwijnt het operating systeem als gevolg van virtualisatie?; Scott Lowe gaat in zijn blog in op de vraag of de huidige visualisatiegolf ervoor zal zorgen dat het operating systeem (O/S) in de personal computing hoek gaat verdwijnen. Dat is namelijk een stelling die wel eens vanuit de VMware hoek wordt ingenomen...
Bert Bouwhuis wrote: You are doing an excellent job in phrasing the right questions. However, somehow we have all accepted the notion of a BIOS as a layer between the hardware and the operating system in the personal computing space. At least a layer in time (you need the BIOS to boot the O/S), but also a static layer supporting functions as advanced power management for the O/S during operation. Somehow, this hypervisor discussion reminds me of just an 'extended' BIOS. Actually, this seems to be exactly what Phoenix had in mind with their HyperCore / HyperSpace layer (see e.g. David Marshall's discussion at http://weblog.infoworld.com/virtualization/archives/2007/11/phoenix_tech... ). Wouldn't it then be reasonable to expect all future systems to have a HyperCore type of layer providing basic functions (browsing, media playing, remote desktop, …), while at the same time providing the hypervisor funct...
Latest Cloud Developer Stories
DevOps promotes continuous improvement through a culture of collaboration. But in real terms, how do you: Integrate activities across diverse teams and services? Make objective decisions with system-wide visibility? Use feedback loops to enable learning and improvement? With tec...
"Digital transformation - what we knew about it in the past has been redefined. Automation is going to play such a huge role in that because the culture, the technology, and the business operations are being shifted now," stated Brian Boeggeman, VP of Alliances & Partnerships at ...
The past few years have brought a sea change in the way applications are architected, developed, and consumed—increasing both the complexity of testing and the business impact of software failures. How can software testing professionals keep pace with modern application delivery,...
"WineSOFT is a software company making proxy server software, which is widely used in the telecommunication industry or the content delivery networks or e-commerce," explained Jonathan Ahn, COO of WineSOFT, in this SYS-CON.tv interview at 21st Cloud Expo, held Oct 31 – Nov 2, 201...
"Evatronix provides design services to companies that need to integrate the IoT technology in their products but they don't necessarily have the expertise, knowledge and design team to do so," explained Adam Morawiec, VP of Business Development at Evatronix, in this SYS-CON.tv in...
Subscribe to the World's Most Powerful Newsletters
Subscribe to Our Rss Feeds & Get Your SYS-CON News Live!
Click to Add our RSS Feeds to the Service of Your Choice:
Google Reader or Homepage Add to My Yahoo! Subscribe with Bloglines Subscribe in NewsGator Online
myFeedster Add to My AOL Subscribe in Rojo Add 'Hugg' to Newsburst from CNET News.com Kinja Digest View Additional SYS-CON Feeds
Publish Your Article! Please send it to editorial(at)sys-con.com!

Advertise on this site! Contact advertising(at)sys-con.com! 201 802-3021



SYS-CON Featured Whitepapers
ADS BY GOOGLE