Steve Jobs set the computing world abuzz when he announced that Apple will switch to Intel microprocessors next year. What can we expect from these next generation Macs?
Mac users don't find it unusual that their Mac can read any CD, independent of the operating system which created it. If there is data on the CD in a published standard format, it it is no miracle that it can be read and used seamlessly.
When it comes to running a .exe file, however, the good news and the bad news is that it doesn't "just work." The operating system has some control over whether to try to launch an application, and an application makes certain assumptions about the environment in which it operates.
The operating system's choice of whether to launch an application is related to its strategy for preventing virus attacks. It is reasonable to expect that Mac OS X will continue to make safe choices, and provide the current level of UNIX-based security from attack.
An application makes assumptions when launched, including an all important assumption about the order of bytes in a word. (An interesting topic for an article on BYTE.com). The two conflicting assumptions are that the low order byte occupies the lowest address, or the high order byte does. Everyone agrees that the low order bit in a byte is on the right. As we grow from 1 to 255 the "ON" bits migrate to the left. The English language encourages a visualization of byte strings from left to right. When bytes are grouped together to form a 16 bit word, there are two different assumptions of how to read the bytes. The Big Endian assumption is the big end byte comes first, i.e. the sign bit is the left bit of the left byte, and each succeeding bit is a power of two less significant. The Little Endian assumption is that the little end comes first, i.e. the first byte is the low order information, and the sign bit is the left bit of the last byte.
The Intel architecture is Little Endian, and the IBM/Motorola architecture is Big Endian.
No one writes in assembly language any more, and a good software development environment should be able to do this conversion from the source code simply by recompiling. The Apple Xcode Tools do just this, allowing high level code to be generated for either architecture. The net result is that Apple has a software development environment which creates universal binaries, which can be deployed on either architecture.
But can future MacTel OS X users expect to be able to seamlessly run Little Endian Windows applications?
Applications also make assumptions about the services and interfaces provided by the operating system. An open source project recursively named WINE—Wine Is Not an Emulator—already implements the Windows API on UNIX. It would seem reasonable that a future version of Mac OS X, being UNIX based, could incorporate the ability to support a reasonable subset of the Windows API. This would be a major win, allowing Windows applications to be operated under the MacTel OS X.
There is a large installed base of users who have an investment in such software and have avoided switching due to the cost of purchasing a Mac version of their software library. Enabling these users to switch to the MacTel OS X platform would seem like a reasonable goal.
And what about the opposite: running Mac applications—not just iTunes, but iLife, iWork, and third party applications—under Windows?
The operating system stability and virus protection responsibilities would rely on Windows, so the applications might be less stable, but the Mac Software Suite functionality would achieve a new market. This option, however, is almost tantamount to Apple becoming a software company and selling into the non-UNIX world. While it may be an option, it is difficult to believe that it would be Apple's main option. Apple has never supported a "Virtual OS X" product for any other operating system, although there are open source and third party products which attempt this task. It's unlikely that Apple would go down this path.
What about running Windows on Mac hardware, not supported by Apple, but by HP or Dell? This would also not be a big win for Apple, just representing more hardware sales. But these machines would likely be dual boot capable, and so there might a window of opportunity prior to Longhorn's arrival that would provide a safety net to users who want to switch to MacTel but are not sure that they will like it. They would know that they could always fall back and run Windows. HP picked up all support for the iPods that it sold (before canceling the deal)—this model might allow them or another company to construct a similar arrangement. Again, it's not likely.
Will MacTel OS X ever be supported on hardware configurations other than Apple hardware?
No industry observer is expecting this to be acceptable to Apple. The key issues are licensing fees, and support responsibility. For the right fee, anything is possible, is long as there is a support path to insure an enjoyable user experience.
MacTel OSX opens up a lot of possibilities. Time will tell what expectations become reality.