X RISC CISC: the history of Intel Macs
70In the past, much was discussed about the advantages and disadvantages of the PowerPC processors for the x86 chips. The main stronghold of the PowerPC chips were the Macs (with all the mysticism involved), while the PCs were the territory of the x86 chips. Therefore, the discussions about the Macs and PCs not only revolved around the OS X and software for the platform, but also the differences between the two processor families, often sliding into the old argument x RISC CISC.
In short, the CISC philosophy, employed in the first x86 chips, based on the idea of producing chips capable of performing a large number of instructions, making it easier for developers and compilers. The RISC philosophy, on the other hand, is based on the use of simple instructions that are executed by the processor quickly and can be combined to perform the functions of more complex instructions.
The fight started in the 1970s, when the chips were very simple and the designers were forced to follow a line or another. At the time, RISC processors were generally more efficient, while the CISC were simpler to program, since performed more functions directly.
However, over time the improvement in manufacturing techniques made possible the development of more complex chips, which made the distinction even less clear. All Intel processors from the Pentium Pro and all from the AMD K6 running internally simple instructions (such as RISC), but have instruction decoders dedicated to maintain compatibility with the x86 instruction. Much work has gone into the development of more efficient decoders, which made the process very fast, eliminating almost all the overhead.
Contrary to what many had predicted, instead of gradually migrate to a set of simple instructions, the processors are gaining new instructions over time (SSE, 3DNow, SSE2, SSE3, etc.) that take advantage of the superscalar architecture current chips.
This trend of increased complexity has also reached the RISC chips in the PowerPC family, which began to incorporate more internal components and an increasing number of new instructions, which eliminates many of the arguments with respect to simplicity.
The x86 chips continued to be higher (due to low compatibility and use of instruction decoders) but the performance per clock cycle and efficiency came not to be so different, invalidating much of the practical arguments. The very question of development is no longer a problem, since the compilers have to take charge of the heavy lifting, leaving the developer free to worry about the functions of the chosen language, not the processor.
The PowerPC platform began in 1991 as a result of an alliance between IBM, Apple and Motorola (the AIM alliance) around common interests. At the time, Apple has used the Motorola 68000 processors (the Performa line) and needed a more scalable platform. IBM had in its hands a very powerful platform (Power architecture) and needed a market for processors, while Motorola had experience in chip production for the domestic market and factories to produce them in volume. With the alliance, the three envisioned the possibility of creating a new platform for personal computers, able to cope with the PCs and the dual Intel / Microsoft.
At first, the PowerPC platform was seen as a real alternative to PCs and went on to win versions of OS / 2, Solaris and even Windows NT. However, the highest price of the machines and the lack of software meant that they were not widely used.
On the other hand, Apple could quickly migrate to MacOS and software for the new platform and began to reap the rewards of success with the Power Macs and later models. The migration has enabled her to become a prime example of the use of an alternative processor architecture was feasible, since Macs often outnumber the PCs of the time in performance.
The PowerPC chips were not ugly compared to x86 chips equivalent, surprising in many situations. In many ways, they have evolved in a way very similar to chips from Intel and AMD, incorporating multi-stage pipeline (the IBM G5 uses 21 stages for floating-point units, rather than an Athlon 64), sophisticated branch prediction circuitry , caches, new instructions (the set Altivec) and so on. Collectively, the changes improved the performance per clock and allowed the chips reach operating frequencies competitive, keeping the race on.
The big problem with the PowerPC platform was not in the design of chips, but the difficulties of IBM and Motorola in maintaining the necessary investments to launch new versions of the chips and move to more advanced techniques of production.
After many years of crisis, Motorola finally separate the chip division (giving rise to Freescale, which specializes in producing chips for embedded systems) and IBM chose to engage in the production of specialized chips (for consoles, servers and other niches), leaving the production of chips for desktops in the background. As a result, the PowerPC chips ended up parking in 90 nanometers, which ultimately benefit the competitiveness of the chips, compared to 65 nm processors from Intel and AMD.
The pressure was becoming greater, until in 2005, Apple surprised the world announcing the migration of the PowerPC platform to the x86 platform, a complicated metamorphosis, which was completed in record time.
The last chip used on PowerPC Macs was the IBM PowerPC 970FX (used in several versions of the Power Mac G5 and iMac G5) and the first x86 chip is the Core Duo (the direct ancestor of the Core 2 Duo, released in 2005). The 970FX was a single-core chip with 58 million transistors, and only 512 KB of L2 cache, which was produced using a technique of 90 nm and had an area of 66 mm ². Core Duo on the other hand, had two cores, 2 MB L2 cache and 151 million transistors, but due to the technique of 65 nm was not as large, with 90 mm ².
Although the 970FX has some advantages in terms of architecture, the two cores and larger cache ended up making a difference, allowing the Core Duo performance is considerably higher, a difference that only increased with the launch of Core 2 Duo chips and later. To complete the Core chip platform offered a performance per watt considerably higher than the 970FX (partly due to the architecture, partly due to the technique of production) which ended up sealing the deal.
If IBM had been able to launch versions of 65 and 45 nm chip in time, could have kept the chip competitive by adding more cache, more cores and other enhancements, but the 90 nm competition became impossible. The PowerPC platform continued to be used in consoles (including Wii and PS3), but in personal computers can say that x RISC CISC war ended with a technical knockout.
In 2007 IBM launched the Power6, a dual-core version of the chip, produced using a technique of 65 nm, which was used in some IBM server lines (such as the 520 Express) running Linux or IAX, but he failed to be used in personal computers.
Returning to the transition from Apple, the old problem of compatibility with applications compiled for the old platform has been partially addressed by Rosetta, a dynamic translation of instructions that allows you to run your applications directly compiled for the PowerPC. In summary, the Rosseta works by examining binary code, converting PowerPC instructions into x86 instructions, generating a new code that is then executed. The operating principle is the same as a compiler, with the difference that it converts the binary code into binary code and works in real time.
The Rosseta turned out to be a very transparent solution to the problem of compatibility and the edges for stability have been trimmed with updates to OS X. As in any conversion process, there is a loss of performance (many applications run with only 20 or 25% of native performance), but this is masked by the fact that current Intel Macs are significantly faster than older models based on the G4 or G5. For those who had a G4 iMac and migrated to a MacBook with Core 2 Duo, for example, the performance of applications running across the Rosseta was not much different from that offered by older hardware.
At first, the Rosseta was combined with the use of Universal Binaries, which were hybrid versions of the executables, containing compiled code for both platforms, which could be implemented in both G4 and G5 and the Intel Macs. Over time, however, applications have to be launched exclusively in x86 version, accelerating the obsolescence of the PowerPC Macs.
By adopting the use of Intel processors and chipsets, Apple has made Mac very similar to PCs in terms of hardware, except for two small details. The first is that instead of using the good old BIOS, such as PC cards, motherboards used by Apple use EFI (Extensible Firmware Interface), a system developed by Intel (originally for use in servers based on Itanium ), which offers a modular, more elegant and extensible than a monolithic BIOS.
EFI is combined with the use of a TPM chip (Trusted Platform Module) that includes security features that are verified by MacOS X, preventing the system from being used outside of Apple hardware. This allowed them to keep the competitive advantage related to the use of the system, despite the migration to the Intel platform.
EFI includes a layer of compatibility with the BIOS, which is used by Boot Camp to allow the installation of Windows XP, Vista or 7 dual-boot, very similar to what we have to use Windows and Linux on a PC. Boot Camp is available from the Mac OS X 10.5 (Leopard) and includes tools to repartition the hard drive and the necessary drivers, which are recorded on a CD. Performed the two steps, simply boot using the Windows DVD and install the drivers at the end of the process, just as you would on a PC.
The possibility of using Windows dual-boot is a competitive advantage for Apple, since it is the only legitimate way to have both systems on the same computer. In Windows, you can also run Linux on Macs, also in dual-boot with OS X.
Despite the use of EFI and TPM, it was not until emerge cracked versions of OS X, which can be installed on standard PCs. Because OS X is designed to run only on some specific configurations, hardware support is limited, yet it became a popular hack, with PCs running OS X is dubbed hackintosh.
You can check the compatibility list of hardware for each version of the system and the installation howtos http://www.osx86project.org/. When building a PC specifically for the task, the compatibility is not a big problem because you only need to choose from a list of motherboards with chipsets and supported a list of 3D cards compatible with OS X (netbooks based on the Diamondville platform with 945GSM chipset is also quite compatible), but trying to use the system on PCs configurations arbitrary results will vary.
Besides all the economic issues and product differentiation, the question of the drivers is one reason Apple has chosen to provide the OS X only in conjunction with its own hardware, rather than trying to compete directly with Windows, selling separately. This position allows them to focus on the development of drivers for some specific components, preventing wear and tear of trying to support all existing hardware (such as Linux).
Back to Hackintosh, the first "open" versions of OS X have been developed based on a development kit available from Apple at the time of the transition to Intel processors and continued with modified versions of OS X 10.4 and 10.5, resisting to changes Apple to impede the process.
Of course, both the distribution of modified versions as the use of non-Apple hardware is prohibited by the EULA, but that has not prevented the distribution of images patched through torrent sites and forums. Just do a quick search for "OSx86" or "Mac OS X patched" to find images of the system with the patches already applied. There are even live versions, for use on USB sticks.
PrintShare it! — Rate it: up down flag this hub









