Zibb

Brian DipertEDN Senior Technical Editor Brian Dipert exposes, analyzes and
opines on diverse topics in technology. Follow the Brian's Brain Twitter feed at www.twitter.com/BrianzBrain.



   Advertisement

Profile

RSS Feed

  • Add this blog to your RSS newsreader!

Recent Posts

Recent Comments

Most Commented On

Archives

By Category

Consumer Electronics Design Articles

Blog

Saturday, April 29, 2006

The Virtualization Alternative

Apr 29 2006 10:45AM | Permalink |Comments (0) |


Continued from 'DOS Boot!'....

Boot Camp is a pretty slick piece of software for computer users who are intrigued by Apple hardware and software but can't ditch Windows. And, if you want to run a different operating system partition next to OS X, there's always narf2006 and blanka's code (note: the two options aren't compatible with each other). Heck, several vendors are even shipping Macs with XP preinstalled! But neither Boot Camp nor narf2006's offering enables you to concurrently interact with multiple operating systems and their applications. To run Windows, you need to completely shut down OS X and reboot. Visa versa, same answer. Concurrency requires O/S virtualization, a particularly attractive option given the Intel 'Yonah' CPU's hardware support for the feature. And at least one vendor, Parallels, is aggressively implementing other-O/S-on-top-of-OS X virtualization (with VMware claiming to have similar ambitions, and a to-date 'no comment' from the Virtual PC team at Microsoft).

Parallels Workstation for OS X is in its fifth beta release as I type these words on April 27th, a fast-paced development schedule considering the first beta was released on April 6th (the day after Boot Camp went public). Folks have figured out how to run numerous O/Ss under OS X using Parallels Workstation, even NeXT's OpenStep, the precursor to OS X! You can run multiple virtualized operating systems at once, if you have enough CPU horsepower and available RAM and HDD space, and the latest release of Parallels Workstation even includes a cool quick-switch rotating-screen feature. It all sounds too good to be true....what are the downsides of virtualization? Well, speed, for one thing. Hardware-assisted virtualization support in 'Yonah', along with instruction set compatibility between the Intel version of OS 10.4 and other x86-ported operating systems, makes CPU virtualization performance much better than in days past when I attempted to run little-endian x86 Windows XP on top of big-endian PowerPC OS 10.3 using Virtual PC v6.

At least for now, though, other important subsystems require software-only virtualization, leading to performance and functionality impacts such as:

  • Graphics subsystem virtualization has tolerable 2D performance but abysmal 3D performance. Without full graphics API support, some 3D applications won't run at all, while others run only in minimal-quality mode, sometimes also at low resolutions and with reduced color depth. Other subsystems suffer from similar performance degradation when software-emulated versus in their 'normal' hardware-accelerated mode.
  • USB support, if it even exists, is peripheral-limited to mice, keyboards, and the like. I couldn't, for example, use ActiveSync to connect to a tethered Pocket PC in a Virtual PC-created Windows-under-OS X environment.
  • Similarly, CD burners, and all DVD drives, were neutered to CD-read-only functionality under Virtual PC.
  • Using a peripheral under the host operating system may render it 'locked' and inaccessible to the virtualized operating system, or visa versa.
  • There's no clipboard-sharing of data between host and virtualized O/S, or between multiple concurrently-running virtualized O/Ss. Host O/S partition file access by the virtualized O/S, and visa versa, is limited if it's even possible.
  • A virtualized O/S 'partition' is implemented as a unified single VM (virtual machine) file on the host O/S physical partition. Individual virtualized O/S files are stored in a linked-list database-type structure within the VM, meaning that they don't ever get overwritten when they're deleted or updated, they're just marked as invalid. This means that the VM grows....and grows....and grows as you continue running the virtualized O/S. Think for example of all the temp files that Windows creates, or the Windows Update file replacements, or the constantly-thrashed swap file. The virtualized Windows XP 'partition' I created under OS 10.3 on my G4 PowerBook with Virtual PC v6 rapidly either hit its limit if I specified a maximum VM size, or filled the HDD if I removed the restriction. Parallels' recently-released VM Compactor beta may provide much-needed relief in this regard.
  • Finally, software virtualization keeps the CPU in its highest-power active mode more frequently than it would be if it wasn't emulating other system hardware. Thank goodness for multi-core, which provides much-needed performance muscle for virtualization scenarios (consider, as a conceptual example, the host O/S running on one core with the virtualized O/S running on the other). However, active-mode-mostly CPUs burn through batteries much faster than processors allowed to more frequently transition into lower-power states.

A clarifier: I haven't yet run Parallels. My virtualization comments above derive from past experience running Virtual PC, along with feedback I've seen from others who've run various Parallels Workstation beta releases.

Continued with 'DOS Next?'....


Post a comment



Display Name

Change Image
Before submitting this form, please type the characters displayed above.
Note the letters are NOT case sensitive.


ADVERTISEMENT

©1997-2009 Reed Business Information, a division of Reed Elsevier Inc. All rights reserved.
Use of this Web site is subject to its Terms of Use | Privacy Policy

Please visit these other Reed Business sites