Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.
Screw games! If the system can offload some of the load onto the GPU instead of the CPU maybe I can run some of the more business oriented apps on a Mac. Love hate or despise Microsoft this is REALLY good news,

OK OK so maybe not screw games. I have more then a few that I would like to take with me when I get a Mac all of which are 2+ years old so hopefully they would run at least somewhat fast enough to be entertaining. This would be seriously sweet.
 
I am somewhat dubious about VirtualPC. More than anything, I see it as a last resort: something to fall back on if there is absolutely no tool available to run natively under OSX to get the job done. Getting excited about VPC7 really suggests that, performance-wise, getting an Apple computer may have not been a very rational choice.

Even if graphics are offloaded natively to the GPU (speaking of which - which GPUs will be supported? Nvidia, ATI, all of them...?) there will still be an atrocious performance hit when compared to running the same OS/application/game combination on a similarly priced PC. I expect that playing any PC games less than a year old will be a lacklustre experience even on top-grade G5 hardware.

Also please remember that running an application under VPC requires you run the OS too - this may be stating the obvious but it is a fact that is often overlooked. Personally, I find the Darwine Project to be far more promising, because it does not require that you run the OS in the background. It simply translates API calls. This does not necessarily mean that you don't have to possess a valid Windows licence (it still requires some Microsoft Windows .dll files that are subject to the EULA) but at least you don't need to run the whole kernel, all the Windows services, network stack, etc. on the background on your machine just to run, say, Microsoft Project. Darwine may not offer the lowlevel optimisations Microsoft is apparently implementing (at least not yet) but, native graphics aside, it will be a far more lithe system for running x86 applications on the Mac. It's also free, which is always an advantage.

I do of course keep a copy of VirtualPC 6 on my machine, and I expect I'll find myself buying a copy of VirtualPC 7 shortly after it is released - mainly as a fallback solution. But as an occasional FreeBSD user, I have grown to appreciate the flexibility of WINE and so that's the solution I'm really looking forward to.
 
RE: The talk about Virtual PC for Windows...I don't think Virtual PC for Windows emulates hardware at all. It's kind of a fancy uber-OS that lets you manage one or more than one operating system on a single machine.

Chris
 
amberashby said:
Will Microsoft sell VPC on its own, or must you buy Office Pro or Windows XP bundled with it?

I already have XP professional for my PC. Can I buy VPC all by itself and install my windows versions on it?

Thanks.

i'm not sure whether if you need to buy an OS pack or not. otherwise, sure, you could install it. it would be illegal...
 
chabig said:
RE: The talk about Virtual PC for Windows...I don't think Virtual PC for Windows emulates hardware at all. It's kind of a fancy uber-OS that lets you manage one or more than one operating system on a single machine.

Chris

Well, it has to emulate a x86-processor, doesn’t it? How else could the apps work?
 
chabig said:
RE: The talk about Virtual PC for Windows...I don't think Virtual PC for Windows emulates hardware at all. It's kind of a fancy uber-OS that lets you manage one or more than one operating system on a single machine.

Chris

It does the exact same thing using the exact same interface that VirtualPC for Mac does. And PC users are loving it.

Longhorn installs in a VirtualPC. Windows Server Enterprise. Of course, because it doesn't have to emulate x86 performance is much, much better than VPC on Mac.

Time for all those MS-haters who swore up and down MS would kill VPC Mac to eat some crow. Sounds like they're making it better than ever.
 
denm316 said:
This is great news, however I would be much more excited if the earlier rumor did not say that it was delayed till the second half of 2004. Everything relating to my Mac is always delayed.

Have you ever considered writing complex software is..... hard? Especially given the ambitious goals in this upgrade (native GPU, SMP, G5 Support). Adding that alone, with stability, is worth a 6-12 month extension.
 
qubex said:
I am somewhat dubious about VirtualPC. More than anything, I see it as a last resort: something to fall back on if there is absolutely no tool available to run natively under OSX to get the job done. Getting excited about VPC7 really suggests that, performance-wise, getting an Apple computer may have not been a very rational choice.


No. Right now I am stuck with my powerbook and a pc, just because I like to game. However, I will glady trash the pc and just settle w/ a few of the biggest games for the mac, and pickup a G5 ONLY if vpc7 can play the one game that I can't live without. It's sorta an old game, and not too demanding, heck I can almost play it in vpc6, however the networking emulation is too slow as my pings are all over the place.
 
Veldek said:
Well, it has to emulate a x86-processor, doesn’t it? How else could the apps work?

Virtual PC for Windows RUNS on an x86 processor. So there is no need for emulation. It's kind of like the way OS X runs Classic--another OS running on the same machine. And OS X doesn't run Classic by emulating a PowerPC processor, because there is a real one already there.
 
infinity

BornAgainMac said:
I think Virtual PC makes Windows better than Windows, it is mainly speed that you lose.

I'd like to install Virtual PC on a copy of Virtual PC, on a copy of Virtual PC on a copy of Virtual PC on... yep, another copy of Virtual PC.... etc... How deep can I go? And how do I explain this to my 60 year-old Dad, who asks questions like "am I on the internet, or an I on e-mail?" ??

n.
 
michaelrjohnson said:
i'm not sure whether if you need to buy an OS pack or not. otherwise, sure, you could install it. it would be illegal...

Why would it be illegal? I have VPC 5 (no sense in upgrading to 6 with version 7 coming out) and it came with Windows 2000 but I could install Windows XP, Windows ME, Windows 98, DOS 6.1, whatever I want. You could buy VPC with or without the OS. Either way you can install whatever versions of Windows you own. But maybe I am misunderstanding you.
 
Howdo y'all.

Video Support - Woohoo!, i can only hope :D
Im considering to get this because i use Access for websites and other stuff, but if it can allow me to play a few games here and there - ill be cashin up and getting it. Well as long as it can play 'gunbound' ill be happy!

Cheers All
 
chabig said:
RE: The talk about Virtual PC for Windows...I don't think Virtual PC for Windows emulates hardware at all. It's kind of a fancy uber-OS that lets you manage one or more than one operating system on a single machine.

I think that VPC/Win32 is a virtual machine just like VMware, which means that they actually use the real processor to run most of the instructions.
But all the other hardware has to be emulated, because you cannot have several operating systems access your printer or network card at the same time, ie. those components are emulated and the VMM (virtual machine monitor) passes them on to the host operating system.

What I mentioned so far is true for all virtual machines on any hardware, but the IA-32 (aka x86) is a special case. You cannot have a guest operating system inspecting or even changing superuser settings, thus in "normal" architectures previleged instructions cause an exception when executed in user mode. In the case of the IA-32 this is only true for the special V86 mode, but that was only designed to virtualize the real-mode and have several DOS boxes running.
Intel never really thought of virtualization of the protected mode, so only some previleged instructions cause exceptions in user mode, but several don't. This means that a VMM for the IA-32 not only has to emulate the previleged instructions (which all VMMs on any hardware have to do to make the guest OS think it has a machine all by its own) , but it also has to make sure that all previleged instructions actually cause expecptions. This means that it basically has to analyze each code block before execution, and replace each problematic instruction with a breakpoint.
Actually this isn't too dissimilar of what VPC/Mac does, only that VPC/Win32 keeps track of which instructions were replaced by the breakpoints and VPC/Mac translates the whole code block to PPC machine code. But the need to analyze code blocks before being able to execute it is present in both instances.

So there is an awful lot of stuff going on in a virtual machine, and even more so in one running on a PC, although probably over 90% of the instructions are executed directly by the processor with no emulation whatsoever involved.
 
The old "what does emulation" mean debate

chabig said:
Virtual PC for Windows RUNS on an x86 processor. So there is no need for emulation. It's kind of like the way OS X runs Classic--another OS running on the same machine. And OS X doesn't run Classic by emulating a PowerPC processor, because there is a real one already there.

Please open up your definition of "emulation" to include situations where the emulated hardware has the same instruction set as the real hardware.

"Instruction set emulation" is not part of Virtual PC/Virtual Server for Windows, but emulation of a virtual hardware machine is part of it. The common use of the term "emulate" in computer science is to describe any situation where a program sees non-existent hardware. Instruction set emulation is just a subset of the common use of the term.

(The comment above about the need to trap and emulate inner mode instructions is probably true, so there is probably some amount of instruction set emulation even running an x86 guest on an x86 host.)


To wit:

Virtual PC emulates a physical computer so exactly that the applications users install in them don’t distinguish the virtual machine from a physical computer.

Microsoft® Virtual PC 2004 Technical Overview ( http://www.microsoft.com/windowsxp/virtualpc/evaluation/techoverview.asp )


Emulates the Intel 440BX chipset, including all the auxiliary chips that are required:
o 8259 programmable interrupt controller (PIC)
o 8254 peripheral interval timer (PIT)
o 8237 direct memory access (DMA) controller
o CMOS RAM (persistent RAM)
o Real-time clock (RTC)

The emulated environment "sees" the same processor model as the processor of the physical computer.

Emulates a Creative Labs ISA Sound Blaster 16 sound card.

Emulates the S3 Trio 32/64 PCI Super VGA (SVGA) card.

Emulates a PS/2 mouse by using IRQ 12.

Emulates an 8255 keyboard controller

Emulates the standard floppy disk drive controller interface.


Overview of the technical specifications of virtual machines in Virtual PC 2004 ( http://support.microsoft.com/default.aspx?scid=kb;en-us;833144#appliesto )


Seems to me that if "gestalt" says that I have a 440BX chipset with an S3 card and ISA SoundBlaster, and my machine is an 850E with a Quadro and an Audigy - then I must be running on an emulated machine.
 
This will boost switcher numbers, but reduce computer sales I fear once people realise they can run the same apps on a PC and pocket the change.
 
chabig said:
Virtual PC for Windows RUNS on an x86 processor. So there is no need for emulation. It's kind of like the way OS X runs Classic--another OS running on the same machine. And OS X doesn't run Classic by emulating a PowerPC processor, because there is a real one already there.

Oops, sorry, I got that wrong. In this case, I would say you're right.
 
qubex said:
I am somewhat dubious about VirtualPC. More than anything, I see it as a last resort: something to fall back on if there is absolutely no tool available to run natively under OSX to get the job done.

Of course it would be insane to buy a Mac, and then mainly work under Windows via VPC, but it's good to have that option, and it'll also be far faster to launch VPC on my G5 than having to wait till my old PC has booted.

Even if graphics are offloaded natively to the GPU (speaking of which - which GPUs will be supported? Nvidia, ATI, all of them...?) there will still be an atrocious performance hit when compared to running the same OS/application/game combination on a similarly priced PC. I expect that playing any PC games less than a year old will be a lacklustre experience even on top-grade G5 hardware.

That's clear, it's an emulation after all. And I still remember too well the last time graphics hardware support was announced and the final outcome to be too thrilled by this news before I have actual proof that it works.
But I have to admit, the possibility to play Half-Life 1, Jedi Knight, and other rather outdated games without having to use my old PC that isn't running too well anymore would be a nice one.

Also please remember that running an application under VPC requires you run the OS too - this may be stating the obvious but it is a fact that is often overlooked. Personally, I find the Darwine Project to be far more promising, because it does not require that you run the OS in the background.

I agree, which is why I use DOSBox instead of Bochs for DOS applications. Not only is DOSBox far easier to set up, and you don't have to install an operating system first, but it's also much faster than Bochs.
But Darwine is still far from a running state, not to mention a practically usable one. So VPC is the only real option to run Windows applications if you have to (since Bochs is way too slow), but Darwine certainly is something to look out for.

Of course VPC also has the advantage that it doesn't just run applications for a specific operating system, like DOSBox or WINE, but enables you to run different PC operating systems, which can be a nice or maybe even necessary feature for some users.

I certainly know what you mean, and I can agree with you for a large part, but you shouldn't forget that each approach has its own advantages and disadvantages. I don't see Darwine making VPC obsolete or the other way round.
 
KingOfPain said:
You cannot have a guest operating system inspecting or even changing superuser settings, thus in "normal" architectures previleged instructions cause an exception when executed in user mode. In the case of the IA-32 this is only true for the special V86 mode, but that was only designed to virtualize the real-mode and have several DOS boxes running.
Intel never really thought of virtualization of the protected mode, so only some previleged instructions cause exceptions in user mode, but several don't. This means that a VMM for the IA-32 not only has to emulate the previleged instructions (which all VMMs on any hardware have to do to make the guest OS think it has a machine all by its own) , but it also has to make sure that all previleged instructions actually cause expecptions.
This is really best summarised as running some code in Ring-3 and making it believe it is running in the privileged Ring-0. Basically, in the case of IA-32 on IA-32 virtualisation (as opposed to emulation) you're constructing a software jail to run potentially untrustworthy code without the risk of it affecting the host system. Doing this isn't particularly difficult (the FreeBSD team nailed this ages ago with its jail( ) system call, as did VMware) - the problem is doing it efficiently without bogging down the system. That is where the mastery lies.

I'm very curious to see the outcome. Even though as I have indicated I don't anticipate relying on VPC7 for anything critical or even for gaming, it stands to be a pretty impressive software product from the technical point-of-view. That's why the announcement of the delay doesn't concern me particularly.
 
Interesting discussion about emulation. I see the point about emulating the processor instruction set versus emulating other hardware.

Chris
 
What I'd like to see VPC be able to do is unbundled the app from the OS. Launching the app from the start menu from the dock would bring up a screen inside of OS X instead of Windows. Windows would still be running but the VPC would actually draw the GUI outside the OS. Similar to how Citrix apps can run in a virtual session that for all intents and appearances looks like a local app.
If VPC can already do this sorry :eek: The only instances of where I've gotten to play with VPC is at an Apple store. Actually the folks there were cool enough to let me load MapPoint to see how well it runs. Wasn't too bad. 25%-50% faster and they would have had a sale on their hands right then and there.
 
SiliconAddict said:
What I'd like to see VPC be able to do is unbundled the app from the OS. Launching the app from the start menu from the dock would bring up a screen inside of OS X instead of Windows. Windows would still be running but the VPC would actually draw the GUI outside the OS. Similar to how Citrix apps can run in a virtual session that for all intents and appearances looks like a local app.
If VPC can already do this sorry :eek: The only instances of where I've gotten to place with VPC is at an Apple store. Actually the folks there were cool enough to let me load MapPoint to see how well it runs. Wasn't too bad. 25%-50% faster and they would have had a sale on their hands right then and there.
If you mean an implementation somewhat like Apple's rootless X11, with X11 windows drawn just like those of any other Mac OS X application, then yes, I'd LOVE to see Virtual PC get that ability. I've used VPC 6.1 before (but I don't anymore), and I know that currently, VPC does NOT have this ability.
 
As far as I know, if you use VirtualPC 6 with Windows XP and the OS extensions, it already does this. I run Windows 2000 in my VPC so I don't have that benefit, but really I don't need it anyway.

There's actually a picture on the back of the box of a Microsoft Access XP icon sitting in the dock, and an Access window on the OSX desktop. I've since lost the box so I can't quite remember if the Access window is itself sitting with an OSX window or is "naked". You can even put the XP Start button in the dock. Spooky.
 
qubex said:
As far as I know, if you use VirtualPC 6 with Windows XP and the OS extensions, it already does this. I run Windows 2000 in my VPC so I don't have that benefit, but really I don't need it anyway.

There's actually a picture on the back of the box of a Microsoft Access XP icon sitting in the dock, and an Access window on the OSX desktop. Spooky.
That is correct, but what you describe is not what SiliconAddict described. The feature would work in such a way that you wouldn't see the Windows interface at all - Windows applications would draw their graphics using Quartz (through VPC, of course). You couldn't tell just by looking at the style of the window graphics whether you were running a Mac OS X application or a Windows application.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.