Virtual PC 6 Review
My Windows needs are few. I am a perl developer; I work on perl and release perl software. Occasionally, I want to test on Windows. Further, I am a Slash developer, and sometimes our users complain about certain bugs that only show up on certain browsers, so I want to test that on Windows too. And every once in awhile, there is some software I need that is Windows-only.
All of these needs are rare, but when I need them, I need them. Virtual PC has always been helpful to me for these purposes in the past, though it's been slow. So on to version 6.
The first thing I did was upgrade from version 5, and just play around. Everything is noticeably faster. Viewing multimedia is nicer, opening apps is quicker, moving around the filesystem is zippier (I am running out of adjectives here, bear with me).
I was overdue on some updates, so I ran the Windows Update app. They downloaded and installed much more quickly, though I still prefer to download via Mac OS X and drag the files over to Windows.
I updated Cygwin and ActiveState's Perl Development Kit and Komodo, which I use occasionally; they work fine, but are still too slow to be bearable for everyday use, but I would not want to use Windows for everyday use, so it's all good.
Now, on to the new features. Version 6 has a more refined interface for defining preferences and organizing multiple guest PCs (I've got Windows 95 and Windows 2000). You can now mount those PC disk images, which is nice, but only when the PC is shut down. Since I leave the PCs running all the time, to make startup faster (using the Save State feature), I never have much opportunity to mount the disk images. Although, when I did try to mount the Windows 95 PC (more than once), it crashed. It worked fine for the Windows 2000 image.
Another new step toward integration is the addition of some items for the Mac OS X Dock: a Start menu application, and the ability to place Windows applications in the Dock. The Start menu application is nifty; you get the Start menu from your Windows PC, but in the Dock instead. It's more responsive and looks better. The Windows applications in the Dock seems slightly less useful; clicking on them does not bring the application to the front, it only launches it (which I'd just as soon do from the Start menu).
Supposedly, there are some significant improvements to printing, including automatically detecting USB printers. My USB printer, however, is connected via Mac OS X printer sharing on another Mac, and so I can't print to it directly from Windows (at least, not that I could figure out). Instead, I need to print through the host Mac OS X from the Windows OS. Sounds simple enough, right?
To do this, I still needed to use the right driver for the printer, and it wasn't included with Windows, so I needed to install it. I downloaded the drivers from Canon's web site with a Mac browser, and just copied them to the Windows desktop. When I ran the installer, Windows reported an "access violation". Thinking that perhaps the file was not downloaded properly, I tried downloading it via Windows instead. It takes longer, but maybe it will work. But no, I got the same error. It's good to know that Virtual PC maintains the Windows Experience, that these problems weren't Virtual PC's fault.
I pulled out the CD that came with the printer and installed the (somewhat out of date) drivers from there; this time, it worked fine. But then, when I tried to print, and the Virtual PC app hung on "Printing page number: 1", with a spinning pinwheel and an unmoving progress bar. Force Quit was my only way out. I tried several times, as I did with mounting the Windows 95 image, and each time, it hung. When I would start Virtual PC again, I'd get the Print dialog, and try to print again, and it would hang. At least it's consistent.
I finally decided to give up on printing this way, and did direct printing. I plugged my printer directly into the computer, told Virtual PC to use that USB device for Windows, and Windows detected it automatically and set it up for me. After that, printing worked fine.
But, in fairness, none of these problems are related to my normal uses of Virtual PC, and if I really needed to accomplish the tasks of printing or mounting I'd probably be able to figure it out. I just didn't care enough, so I dropped it and moved on to more interesting things.
I have a Kyocera QCP 3035 cell phone. I am going to be on the road some this summer, so I wanted to use it as a modem for my PowerBook G4/867. I got the cable and the Mac OS X modem drivers and scripts (I had to email tech support to get them), and it works fine as a modem, but I also wanted to use the cable to upload contacts and ringers. The problem is, the Kyocera software is Windows-only. Virtual PC to the rescue?
I installed the Windows drivers and software and plugged in the cable. It took me a couple tries to figure out that I needed to select the cable in Virtual PC's Serial Ports preferences (assigned it to COM1), but when I did, the software recognized the phone and everything just worked. I uploaded ringers, I controlled the phone with the software. So now for the contacts.
I converted my contacts from the Mac OS X Address Book vCard export to a CSV file the Kyocera software could read. I dragged the file from the Mac OS X desktop to the Windows desktop. I imported the file into the Kyocera software and synched it with the phone. It worked. There's not much else to say here, which is about the highest praise I could heap on the test.
I was also thinking about using some Windows software I have to control my motorized Meade telescope; but frankly, if I am going to be investing the time into getting the cable and setting it all up to use software like that, I'd rather spend the extra money to get the Mac version of the software. It'd be much better to use.
All in all, Virtual PC does what -- for me -- it should. I can run perl and various web browsers for testing; I can communicate with serial devices; I can even play Windows-only multimedia files.
For completeness, I was going to play around with Bochs, but after reading various reader reviews bemoaning poor performance, and not being able to find straightforward instructions, I gave up.
You may recall, gentle reader, that Microsoft has purchased Virtual PC from Connectix. Does that mean people should invest more into Bochs, or look for alternate solutions? Will Virtual PC mean the end of Office for Mac? I don't really know; but as I am not a Windows user, I don't really care, as long as I can keep using the very few Windows products I need.
Maybe I missed it in the review, but is it possible to network the Virtual PC to the actual computer running it? You could do this in VMware and I found it useful time to time.
Anyone else notice that the row of pictures at the bottom of the page, the old Linux versions of VirtualPC seem to have gone missing with Version 6? Hmmm, and Microsoft bought VPC from Connectix, you say? Hmmm. Imagine my surprise.
blog |
That's not likely. Office:Mac is already a cash cow for Microsoft; MS had the single largest share of the Macintosh software market in the 90s and probably still does. There's no profit in tossing the mature cross-development system they're using and probably ticking-off the installed base of Mac users.
Really, there'd be no money in it for MS to try and move Office:Mac users to Office on Windows.
I work in a mixed Mac / PC environment. I've found that the better solution to interoperability problems is to simply have computers on both platforms; we never have conversion problems, because the programs that run on PC's only don't output data that needs to be used on the Mac. Besides, for $249, you can almost buy a cheap PC and KVM. i just don't see the point. Who needs Virtual PC?
Interestingly, I was talking with a Windows developer on the plane about a year ago and he was telling me that using Virtual PC on the Mac for Windows development was actually easier than developing on a dedicated Windows machine because in VirtualPC, Windows is an image that can be readily backed up and restored with a drag and drop should you do something really stupid with the registry or kernel.
Visit Jonesblog and say hello.
In my opinion, MS would see it like: "we could keep this app going, and keep selling Windows and other MS products to Mac users, or we could kill it off, add more fuel to the abusive monopoly fire, and *possibly* have some of those VPC users go buy a PC with Windows."
If you want to make an apple pie from scratch, you must first create the universe. -- Carl Sagan
Microsoft won't kill it off. They'll just fire all their Mac Office developers and tell everyone who wants to run future versions of Office on a Mac that all they need to do is buy the Virtual PC, a copy of Windows, and Office for Windows, and then they can have Office on their Mac. After all, why sell only one product to fill someone's need when you can force three down their throat instead?
I for one don't want VPC to have accelerated 3D video. Follow my logic. VPC gets accelerated video. Game start to be playable on it (not fast, but playable). Mac users start buying Windows games that didn't get ported to Mac OS proper. Game developers start saying "hey, why bother doing an expensive port when we are already selling them the Windows version?"
And that leads to the end of the Mac game market. All you have left is emulation. Like Linux. And for the record, Linux is in quite a corner, too. It's primarily because all Linux people who care about games are dual booting Windows. So developers are asking themselves why they should port to Linux when they're already selling them the Windows version. Answer: they have no reason to.
You like your Macintosh better than me, don't you Dave? Dave? Can you hear me Dave?
About the game market....does it really matter if there's a mac game market, if Windows games work just fine? Instead of late/non-existent/half-assed/broken/etc ports, Mac users would be able to run new games right when they came out. I bet they'd even be compatible with their PC counterparts, so people playing (say) Everquest wouldn't have to use Mac-only servers. That would be a *good* thing IMHO.
(FWIW, many games today require so much horsepower that emulation - even with 3D acceleration - simply wouldn't be feasible, so a port would be the only viable option for playing on the Mac anyway. That should keep the Mac game market up + running).
1. Getting rid of the Windows desktop all together. I REALLY look forward to the day when VPC can go rootless like an X windows server can and the Windows apps appear directly on the Mac desktop.
In eccessence VPC would be just another code execution path just like CoCoa(yellow box), Carbon and Classic(blue box). Maybe the VPC emulator would be called "bigblue box".
This would eliminate many of the system redundancies of running a fully isolated emulator (like mainatining two system clocks, device configurations, display spaces, etc) and dramatically speed things up.
2. Code optimization and restructuring. There was an app/addition to Windows for Alpha (iX32 I think)that would do this. It would look through all your executable 16/32bit X36 code one the machine and pre-optimize it and create a cache of native code that would run on the 64bit Alpha. Given today's HD space and the Mac's concept of "packages", this daemon on the Mac could periodically scan for new Windows apps, and re-write the core portions of them to run natively on PPC, making system calls in to the appropriate VPC section of OS X.
The article's writer ponders the end of Office for Mac. With these two features, there's a distinct possibility that would become reality. MS would simply bundle the VPC emulation "box" along with the Office installer, or any other software you purchase from them.
Article X: The powers not delegated... by the Constitution...are reserved...to the people