Run Windows Applications Natively in OS X?
mcho writes "Unlike other speculators, who get no spam, Robert X. Cringely offers an intriguing reason behind Apple's recent strategy of Boot Camp. From the article: 'I believe that Apple will offer Windows Vista as an option for those big customers who demand it, but I also believe that Apple will offer in OS X 10.5 the ability to run native Windows XP applications with no copy of XP installed on the machine at all. This will be accomplished not by using compatibility middleware like Wine, but rather by Apple implementing the Windows API directly in OS X 10.5.'
By your reasoning, then why bother writing OSX programs in the first place? The point is that people write programs for OSX because they want to, not because they're somehow stuck with a Mac and can't write something for the PC. This is giving people who use program Y that was never "ported" to the Mac platform (and thus can't switch over) a reason to switch over. Of course, this is also giving a lot of convenience to long-time Mac users who just can't seem to get any games.
Now, only if I can plug in any PCIE gfx card and be able to get the OSX drivers for them, I'll be all set....
The answer? Because X11 apps (and likely Windows apps, if they did implement Windows compatibility) look and behave like crap next to Cocoa and Carbon apps. They don't use the menu bar, all the shortcuts use control instead of the command key, etc. There's nothing wrong with those on an X11 system, but switching back and forth between Cocoa and X11 apps can be jarring.
I doubt Windows compatibility would cause existing Mac developers to drop support. And who knows, Windows-only developers might start considering a Mac port more seriously if a significant portion of their user base started running their apps on a Mac.
Ideally this would be in a sandbox, similar to a virtual machine. That way all you have to do is kill the VM, and all that crud is gone. Since it's a VM, you can easily make backup copies of the file system -- similar to a restore partition on OEM machines. Set it up the way you want, and when ActiveX rips a hole in Windows or malware slows it to a crawl, it's easy. Kill the VM process, copy the backup partition over.
Of course some of us can run Windows without malware, viruses, and all that stereotypical garbage. Some of us do have a clue how to administer a Windows computer. I've worked with many operating systems -- DOS, DOS/Windows, Windows NT, Linux, FreeBSD, Solaris, HPUX, and even little Vax. In my experience, none are easier or more difficult to secure with the exception of DOS or DOS-based Windows (96/98/ME), which suck. All it takes is a little training on the security issues and the ability to be proactive with security.
24 beers in a case, 24 hours in a day. Coincidence? I think not!
there have been a lot of work on that!!! It's called http://darwine.opendarwin.org/ and it's not yet stable...
You might have missed this bit in the article.
According to Cringely, Apple has had access to XP APIs under an tech sharing agreement between Apple and MS that was forged in 1997. (This was part of the agreement that let MS off the hook for appropriating quicktime technology into their own media products.)
It's not offtopic, dumbass. It's orthogonal.
IBM had that problem with OS/2. It ran Windows apps just fine, there were very few that didn't work jsut as intended... Which lead to nobody making native OS/2 apps. I mean if you can write it once and it'll run on both OSes, why bother with a port? Sure it would work BETTER if it was a native app, but it worked well enough.
I think Apple would face a similar problem. Not all apps would stop porting, of course, apps that have a healthy market like Photoshop would keep porting, but I think many would. You'd never see another game port, and any app that wasn't really core-market kind of app for Apple would likely stop porting. You have to figure you aren't really going to lose any sales since it does run, and there are few people using it in the first place, so why bother?
Now maybe Apple decides they don't care. Maybe they want to implement the Windows APIs and just use those. Maybe they figure the other features of the OS are enough to keep epopel buying. However I gaurentee they are smart enough to know that if they implement the Windows API natively in OS-X, that most apps will just use that and not bother to port.
WINE becomes an OS component as soon as one Linux distro vendor bundles WINE
So apache an OS component, because all of the distribution vendors bundle it with linux?
Does that mean AOL is a component of windows, because dell bundles a 6 month trial on most of their machines?
If I have been able to see further than others, it is because I bought a pair of binoculars.
I doubt Jobs is looking to support running every Win32 binary under the sun - for that you can dual boot. If something like what Cringely describes were to take place, OS X would implement only a subset of the win32 API, but with graphical widgets having an OS X look and feel and perhaps some win32'ish extensions that provide access to OS X specific functionality (spotlight, etc...) This 'subset' API would be different enough that there would be very little likelihood that an unmodified binary would run out of the box on top of this compatibility layer.
But with a recompile and some refactoring, I bet most windows programs could run quite will under this compatibity layer. What those would do is open up the Mac platform as a viable target for Windows software developers. Recompile under OS X, fix the few quirks, or work around the APIs that aren't present, and bingo, you've got a mac app. With a few IFDEFs you might even be able to support both Mac and Windows versions with the same code base. Software makers like Quicken might find this a very attractive option.