Welcome!

Silverlight Authors: Michael Sheehan, Hovhannes Avoyan, Yeshim Deniz, Maureen O'Gara, Mark O'Neill

Related Topics: Silverlight

Silverlight: Blog Feed Post

How Win7's "Boot to VHD" Feature has Changed the Way I Work

So go forth, make your VHD files, share them among your friends and co-workers, and enjoy the awesomeness that is Windows 7

Recently I was reading the Hanselblog when I discovered these two articles here and here. Before I get to what I've been doing, I want to recap my usual machine (virtual and physical) usage scenarios:

  • A clean host, this is what I do my day-to-day stuff on : writing, browsing, e-mail, gaming
  • virtual machines all over the damn place: every beta, CTP, limited new ultra-shiny thing gets put in a VM and played with until my eyes bleed.

This is normally an adequate situation for me. However, with some things I just don't want the virtualization overhead or the difference in environment. For example, VS2010's GUI is written in WPF and that particular GUI hates being virtualized. When put under a virtual machine running Windows 7, VS2010 fails to render things, borders disappear, windows become unusable and the experience is downright awful. On the other hand, when you run VS2010 "bare metal" with no virtualization between it and your video card, everything is beautiful and all works well.

When reading the blog posts about the VHD boot feature, I realized that I could have my cake and eat it too. I could have the sandboxing, isolation, and easy throw-away that I typically require for evaluating betas and CTPS...but I could also run the sandbox un-virtualized and only incur a 3-4% performance penalty on disk I/O by running inside a single file rather than running in a directory or partition. I can handle that.

So now I've got a VHD on my laptop that boots into Windows 7 Ultimate with a full install of VS2010 and SQL Server 2008 that I can use as a sandbox for building next-gen applications. I've also got a Win2k8 R2 sandbox that is waiting for Biztalk 2009 and/or whatever other server product I want to evaluate. And if I want I can have another sandbox for Win7 that has other CTPs and betas that don't exactly play nice with the current revision of Visual Studio 2010. The only real penalty I have is waiting for a reboot...which is fast on my laptop and painfully slow on my tower.

So.. if you like the isolation, sandboxing, safety, and easy throw-away features you get from virtualization but you don't need to actually have multiple sandboxes running at any given time, then I think using the Boot to VHD option is quite possibly the best developer feature I've ever seen in an Operating System to date.

Anyway, I've got more good stuff to come, I've been spending a crazy amount of time writing Azure apps on ASP.NET MVC and I'm about to start dumping all kinds of goodness on the blog (assuming anybody actually reads this thing anymore).

So go forth, make your VHD files, share them among your friends and co-workers, and enjoy the awesomeness that is Windows 7.

Read the original blog entry...

More Stories By Kevin Hoffman

Kevin Hoffman, editor-in-chief of SYS-CON's iPhone Developer's Journal, has been programming since he was 10 and has written everything from DOS shareware to n-tier, enterprise web applications in VB, C++, Delphi, and C. Hoffman is coauthor of Professional .NET Framework (Wrox Press) and co-author with Robert Foster of Microsoft SharePoint 2007 Development Unleashed. He authors The .NET Addict's Blog at .NET Developer's Journal.