Quote from chad:
Mac has allways had a closed application market because how they perceive what people want in the market and also controling the hardware and also software development.
Just to clarify: Apple produce the hardware and the Operating System, plus some applications. They do not control all Mac software however - there are thousands of third party vendors.
Quote:
IBM is different, they handel the hardware well leaving the vendors or application developers to develop how they see fit for applications on the PC.
This was not the original plan. The PC was cloned against IBM's wishes by two teams of engineers: one reverse engineered the IBM BIOS and wrote a detailed specification for it, and the second team created a completely new BIOS from that spec. This was achieved by Phoenix on behalf of Compaq, who produced the first IBM clones.
Quote:
Such why we see Microsoft today, one of the leading suppliers of I.T. Solutions.
We see Microsoft as a success because IBM never thought anyone would clone the PC, so they didn't make their licence with MS exclusive.
Whoops.
Quote:
Its going to be intresting to see how apple handels the CISC cpus compaired to there original RISC cpus.
CISC vs RISC is not the big deal it used to be. In terms of instruction sets, the PowerPC family has significant advantages over IA32. For instance, instructions are of a uniform length and the stack counter uses a different counting mechanism, which makes PowerPC code more resistant to some common IA32 buffer overflow exploits. This was a deliberate design decision by Moto and IBM when they designed the PowerPC line initially.
On the other hand, the PowerPC family have too many instructions to be considered truly RISC. For starters, it has a square-root function, which isn't even present on most other chips! Add in Altivec/VMX and a bunch of other bits and bobs, and it's not fully RISC-like.
By the same token, Intel and AMD chips share their internal designs with original RISC design approaches. All that happens is that a small part of the chip breaks down IA32 instructions into an internal, RISC-like microcode. To the compiler it looks like the direct descendant of an 8088; in reality it's more closely related to a MIPS or Alpha chip.
In terms of porting software, Apple have a two-part strategy. For developers who've been using XCode and writing to Cocoa, it will be pretty easy: They tell XCode to produce a "Universal Binary", a single application file which will run on either PowerPC or Intel processors. No need to ship separate versions. Doubleclicking on the same icon will have the same effect. You could drag and drop the same app from a G5 iMac to a P4 iMac and it'll run right away.
For other applications, which do not have universal binaries, Apple have a dynamic runtime instruction set translator called Rosetta. The technology is similar to JIT Java Virtual Machines: the program will transform PowerPC machine code into x86 machine code on-the-fly, optimising based on run time usage. This is not ideal, as PowerPC chips have a lot more registers than any IA32 chip in production, but doing it at runtime makes things easier. In his keynote speech Steve Jobs ran a PowerPC copy of Photoshop on a P4 system using Rosetta, it ran just fine.
Quote:
But from the news sources i have been reading, this wouldnt be the first time mac has run on x86. Reports from apple indicate that they have been running cross compatiablity with there OS over the last 5 years over different computer aritechtures. Now talk about a good hardware/software abstraction layer.
Actually the technology goes back in further to at least the mid-90s, when the forerunner of OS X (NeXTSTEP) was ported to PC from its original Moto 68k line. Ever since then NeXTSTEP technology, which underlies OS X, has remained completely portable, so long as you code to the API. This behaviour was maintained, and Apple apparently decided it was worth keeping against just such a day.