Porting is the modification or translation of software to run natively on a different computer and/or operating system than it presently runs on.[1] This is distinct from emulation, which is the use of hardware or software to run software that was originally coded for a different hardware or software platform.[2]
Porting at Apple[]
Apple II[]
Software for the vintage Apple II series was written for the aging 6502 processor and generally not ported to the Mac.[3] Institutions such as schools that wanted to continue using Apple II software would opt to use the Apple IIe Card to run such software with hardware emulation in a Mac with an LC slot.[4]
Classic Mac OS and PowerPC[]
Early Macintosh software was often written in a low-level manner for 68k processors, sometimes with machine code for the sake of performance. This made porting of classic Mac OS software to PowerPC processors more challenging in the early to mid 1990s, necessitating the use of software emulation of the 68k during the transition. CodeWarrior became a popular choice for software engineers as it was significantly faster than Apple's own existing Macintosh Programmer's Workshop in porting code to take advantage of PowerPC acceleration. Software that could run on both 68k and PowerPC processors were known as "fat binaries".[5]
Mac OS X and Intel[]
In 2000, Apple Computer introduced Carbon as a transitional API that was backwards compatible to Mac OS 8.1 during the development of Mac OS X to allow developers to port their existing classic Mac OS applications more rapidly to Mac OS X.[6] In 2003, Apple introduced Xcode as their integrated development environment (IDE) of choice.[7] When Apple announced its transition to Intel processors in 2005, a simple checkbox in Xcode 2.1 allowed developers to select whether to compile software for PowerPC, Intel, or both in a Universal binary. This, combined with PowerPC emulation by Rosetta, facilitated Apple's transition to Intel processors ahead of schedule.[8]
macOS and Apple Silicon[]
The Carbon API was phased out in favor of the Cocoa with the completion of the transition from 32 to 64-bit software support in macOS Catalina (10.15).[9] This allowed software to be recompiled quickly with Xcode during the transition from Intel processors to Apple Silicon, starting with macOS Big Sur (11) in 2020.[10]
References[]
- ↑ Porting at the Free On-Line Dictionary Of Computing. 1995-01-06.
- ↑ Emulation at the Free On-Line Dictionary Of Computing. 2003-05-22.
- ↑ Apple's Technology Transitions by Martin Pilkington. 2019-12-03.
- ↑ Today in Apple history: New card runs Apple II software on Macs by Luke Dormehl, Cult of Mac. 2021-03-01.
- ↑ Macintosh Development: Porting to the Power Macintosh by Scott McGuire, MIT Information Systems. 2003-11-18.
- ↑ Mac OS X: An act of desperation that formed the foundation for the modern Mac by Jason Snell, Macworld. 2021-03-24.
- ↑ Apple Introduces Xcode, the Fastest Way to Create Mac OS X Applications, Apple Computer. 2003-06-23.
- ↑ WWDC 2005 - Apple to Move to Intel Processors in 2006 by Anand Lai Shimpi, AnandTech. 2005-06-06.
- ↑ Review: macOS Catalina Cuts Ties With the Past While Ushering in the Future by Stephen Hackett, 512 Pixels. 2019-10-07.
- ↑ Building a Universal macOS Binary, Apple Developer. Accessed 2021-06-26.