top | item 22334900

Apple's long processor journey

162 points| AndrewDucker | 6 years ago |liam-on-linux.livejournal.com | reply

83 comments

order
[+] perl4ever|6 years ago|reply
BeOS seemed really nice at the time. I'm not sure if it would have worked out better in the long run, but it sounded great.

I always had the sense that consumer focused computers should be engineered with real-time capabilities, and instead, they ended up being based on time-sharing systems which seems like it hampers UI and media processing. For decades, and especially presently, I get so frustrated with lags and hiccups no matter how fast the CPU and storage are.

[+] pvg|6 years ago|reply
worked out better in the long run

The bigger obstacle is that it would not have worked at all in the short run - it was closer to a technology demonstrator than a complete OS. It's often presented as some sort of key decision between similar options, perhaps because Jean-Louis Gassée was also a former Apple exec and remains a well-known commentator. But I don't think it was anything like that, Apple already had plenty of its own half-finished OS tech.

[+] thelittleone|6 years ago|reply
I share that frustration example opening MacBook in public after closing it with a video playing and mashing the Touch Bar mute key.

Another example open MacBook start typing account password, but 8 or so characters in, the OS wakes up and deletes everything you’ve entered already so have to start again.

[+] Flow|6 years ago|reply
I feel the same. I fondly remember doing hour-long raytracing on the Amiga and having set the priority to something low I never noticed the rendering going on.

On the Mac, it seems no matter what I set the priorities of the involved processes, long compiles makes it impossible to game at the same time.

[+] bangboombang|6 years ago|reply
I think not being a real multi-user OS would have lead to trouble sooner or later, if it wouldn't have felt so unfinished in the first place. This was at the dawn of the internet, so you didn't really think about privilege separation on a desktop OS.
[+] smallstepforman|6 years ago|reply
Responding before the horde of Jobs fanboys claim the underlying OS didn’t matter. They like to forget that NeXT alone didn’t matter, nor did PowerPC Mac’s or the initial scroll wheel iPod’s all under Jobs stewardship. The company was saved by the following:

- transition to x86, and Bootcamp fallback.

- iPhone, with decent touch interface and native (non Java) API and open AppStore

- iPad at right time.

Without this trifecta, Apple would be extinct like SGI, Sun, and the others.

BeOS was what the geeks wanted. It was modern, multi core, C++ based, and with the backing of a big company, would have seriously dominated the desktop computing landscape. I’d be willing to state that Apple would have had a bigger market share with BeOS rather than NeXT.

[+] gok|6 years ago|reply
Perhaps better titled "the Mac's long journey", since it's only about one Apple platform and not really about processors. And even then it seems to end around 2006.
[+] lproven|6 years ago|reply
Hi, original author here.

Yes, I'm talking about Apple Macs, specifically. I am not aware of any other Apple product line that has transitioned from any one processor architecture to another different one while maintaining any form of software compatibility; are you?

Non-computers don't matter. Nobody cares if a laser printer has the same CPU as the previous generation of laser printer, so long as it still prints and there's a driver. Nobody cares if a new iPod has a different CPU, because iPods didn't run apps.

The iOS line has never made a CPU transition, so there's nothing to write about. It's ARM as it's always been. 32-bit to 64-bit is no big deal; I did a FOSDEM talk on this theme a fortnight ago: https://news.ycombinator.com/item?id=22265615

Only Apple's Mac made a journey like this, so there's nothing else to talk about. The Apple IIGS had a different CPU but was backwards-compatible; no transition involved.

It ends around 2008 because by then Apple was making 64-bit dual-core x86 machines with 64-bit UEFI and they still are. That was their last transition so far. There's nothing more to say.

[+] classichasclass|6 years ago|reply
This is a little unfair. Yes, the notionally "normal" state of the system, at least from the view of the nanokernel, is to be running 68K code. However, by the days of 8.5, most of the OS was native, with the remaining legacy being all those obnoxious UPPs. In fact, porting the classic Mac OS to PowerPC by then was actually the low-effort move while Apple management scrounged around to figure out what to do after the demise of Copland.
[+] lproven|6 years ago|reply
Hi. Original blog post author here.

Not really, no.

I was there and used and supported these machines throughout.

There was a CDEV available at the time. I can't find it any more. It placed an "indicator light" in your menu bar, which glowed red when the OS was executing 68K code and green for PowerPC code. I installed it on all the machines I could.

It sat there red 99% of the time. Occasionally it flashed green briefly. Only a very few very-CPU-intensive apps made it stay green: applying large Photoshop filters, for example.

Even by MacOS 9.2.2 in my normal usage, browsing the web, doing email and spreadsheets and chat, and writing, it stayed red most of the time. PowerPC-native browsers such as WAMCOM call OS code all the time, and the OS code mostly stayed 68K.

As for it being the low-effort move, I specifically addressed this point.

[+] trimbo|6 years ago|reply
I know this is about Mac's transitions and call me sentimental but I'm a little sad there was no mention of the 6502 and 65816.
[+] jdswain|6 years ago|reply
And quite a bit of MacOS was ported back to the IIgs, most notably QuickDraw. The IIgs had ADB before the Mac, and colour QuickDraw years before the Mac had colour graphics.

At the time it looks like the 65816 was deliberately speed limited so as to not overshadow the Mac. Mac was 8MHz, IIgs was 2.8MHz, the 65816 eventually got to 14MHz+, if Apple released an 8MHz IIgs it would have compared very well against the Mac. Woz is even quoted as saying that.

Also, the Mac IIfx had two 10MHz 6502 based I/O processors to offload work from the main CPU.

[+] lproven|6 years ago|reply
Hi. Author of the piece here.

The reason I skipped it is addressed in an earlier comment: there was no code transition. The 65C816 ran 6502 code natively. Yes there was a bit of native code, but if Apple had run the CPU at full speed, and devoted real effort to the IIGS, it would have killed the Mac off. It is, sadly, for the best that they didn't.

I speak as someone who never owned or used an Apple ][. I was born in Britain. When the Apple ][ was new, it cost as much as a car in Europe. My first and second computers were Sinclairs, and my 3rd was an Amstrad (who bought Sinclair).

The Apple ][ may have been the first home computer under US$1000 but in the UK that was a very large amount of money. Sinclair made the first home computers for under GBP 100, a far more important cost barrier for us.

[+] cable2600|6 years ago|reply
Didn't IBM have OS/2 Warp for PowerPC CHRP systems coming out that later turned into vaporware? It was supposed to use X86 emulation to run DOS, 16 bit Windows, and OS/2 programs on the PowerPC Macs.

Don't forget Linux for PowerMacs. Apple once had MKLinux available.

[+] kylek|6 years ago|reply
I cut my linux-teeth on PowerMacs. OS X was going to be based on unix, so I thought I'd get a jump start on this new fangled stuff (I was 11 -- "It's a UNIX system...I know this!"). I remember an issue of Mac Addict arrived with a copy of LinuxPPC and an app that, through something that felt like witchcraft at the time, would let you boot into linux directly from Mac OS.

(Also, some random OS/2-powerpc history- https://www.os2museum.com/wp/os2-history/os2-warp-powerpc-ed... )

[+] ThenAsNow|6 years ago|reply
> Didn't IBM have OS/2 Warp for PowerPC CHRP systems coming out that later turned into vaporware?

It was developed, and pre-release versions were available to developers, but the whole "Workplace OS" initiative and OS/2-PowerPC was killed when it was obvious it wasn't going to meet with commercial success. Memory is fuzzy as to the specific sequence of events, but it's of a piece with the Pink/Taligent failures as well. I also recall performance not being too great. By the time Warp 4 was released, I think the IBM Personal Systems/PC hardware business had already signed a major OEM deal with Microsoft for Windows 95 and NT.

I know I saw at least one book sitting on a major retail bookstore shelf that was geared toward developers on the OS/2-PowerPC platform (sadly, after the platform was already dead).

Some of us in the early 90s had big hopes for CHRP and PowerPC, outside of the Mac universe.

In addition to the pretty good writeup at the link posted by kylek, some others (including CD images):

https://archive.org/details/os2-powerpc

http://www.edm2.com/index.php/OS/2_for_the_PowerPC:_The_Deve...

[+] ajdlinux|6 years ago|reply
Upstream Linux continues to support Power Macs today.
[+] throwaway3157|6 years ago|reply
I was thinking today that we need more computer archeology, and then I read this short post on macOS & professor history I was unaware of. We need more of this!
[+] dcolkitt|6 years ago|reply
David Friedman has an interesting book Legal Systems Very Different From Our Own. It's basically what it sounds like, a survey of legal systems from distant past and foreign civilization that evolved in very separate conditions from what we know.

I think, it'd be interesting if a technically minded person wrote an equivalent work Computer Systems Very Different From Our Own. By necessity most of it would probably be confined to retro-computing. But I think it'd be a pretty worthwhile endeavor.

Not because those computers are likely to be better designed than our current systems. If anything quite the opposite. Like Friedman's legal systems, most of them probably have glaring pitfalls relative to modern state of the art. But it's a useful exercise to think about very distant points in the design space, and how and why those decisions were made.

Even if the comparison point is clearly inferior, by virtue of being very exotic it helps us better understand the tradeoffs we make in our everyday incremental designs.

[+] kenips|6 years ago|reply
Thanks for this. It’s a great read. Looking for part II on more of OS X‘s evolution (64 bit, Intel, DriverKit, etc).
[+] therealmarv|6 years ago|reply
I hope to see AMD in this list soon. Apple is not using the best desktop and laptop processors nowadays.
[+] scarface74|6 years ago|reply
The best laptop processor would be an Apple designed ARM chip.
[+] why_only_15|6 years ago|reply
mac on arm is in the works apparently and is probably significantly more power efficient than AMD
[+] michelb|6 years ago|reply
Some new AMD Ryzen processor identifiers seem to be present in the latest MacOS beta..Really curious..
[+] dehrmann|6 years ago|reply
As Apple's rumored to be eyeing ARM for Macs, how impractical is it to make a more power efficient x86 CPU (like an Atom 2), or is x86 the 737 of CPU architectures?
[+] msoad|6 years ago|reply
I simply can’t scroll on this website

Safari iOS

[+] gumby|6 years ago|reply
I read it in reader mode, but I am on an ipad which perhaps has a different safari from the iphone.
[+] Brave-Steak|6 years ago|reply
What was the reasoning for transitioning from Pascal to C?
[+] Dalrymple|6 years ago|reply
Pure Pascal is not really suitable as an operating system implementation language. The obvious design choices are to:

1. Transition to C completely.

2. Extend Pascal (like HP did - HP called their resulting language MODCAL).

3. Support in-line C code in the Pascal compiler.

4. Support in-line assembly in the Pascal compiler.

For superior library support and other reasons, Apple made the right choice here.