Nov. 24th, 2009

liam_on_linux: (Default)
[A rewritten mailing-list post, I'm afraid, but I've not written anything here for ages and I thought it was time...]

Apple's then CEO Gil Amelio was considering buying former Apple VP Jean-Louis Gassée's company Be, for BeOS, or Apple co-founder Steve Jobs' company NeXT Computer, for OpenStep, the successor to NeXTstep.

They went with NeXT. BeOS was excellent - small, fast, efficient, modern, streamlined, and ran on Apple kit. The company was small, with some excellent engineers. The snag is, Gassée wanted a lot more for it than Apple was offering. [EDIT -fixed spelling of JLG's name, and added a rider:] Although this was bad - terminal - news for Be, it was probably all for the best for Apple. BeOS was a great OS, but if Apple had moved to it, its 3rd party developers probably would not have, for the most part, and it would have killed the company. Apple needed a follow-on for classic MacOS, it needed it urgently and it needed to be a blinder. BeOS did not have one crucial advantage that NeXTstep offered, and as such, it would not have had the same appeal, the devs probably would not have fallen in love with the new Apple OS, and Apple would have withered and died. What didn't BeOS have that NeXTstep had? Well...

NeXT was going cost a packet anyway - it was doing better and had some big names on board. Some were working for it, including several people who worked on the Mac in the early days, including, of course, Jobs himself. It also had some serious clients, including CERN - where Tim Berners-Lee developed the WorldWideWeb on a NeXTstation, and corporate clients such as the Union Bank of Switzerland (UBS). NeXT's OS was also beautiful, sophisticated & very hi-tech - but didn't run on Macs, nor even on the Mac's PowerPC processors. It offered 2 major advantages over Be, though: #1, getting Steve Jobs back, and #2, one of the great strengths of NeXTstep was its world-class, industry-leading development tools. Be had nothing to rival these.

Amelio went with NeXT. If the Mac had to move to a new OS, then all Mac developers would have to learn to code for the new OS. Mac devs were pretty wedded to their platform, as were Mac users. And transitioning to a whole new OS, Apple really needed to get the devs on board.

Classic MacOS's dev tools were nothing special and quite hard work. Be was moving its dev tools over to GCC but whereas this was good, it was nothing amazing. But NeXT's Objective-C and Interface Builder were in a whole different league. Getting the Mac 3rd party devs to move to NeXTstep would be vastly easier than to BeOS, as NeXT's dev tools were almost universally recognised as among the best in the industry.

So that's what Amelio did, and history has proved him right.

Technologically: Mac OS X is not really BSD underneath, no.Many Free-S/W types have seized on this because it's a simplification they understand and like but it is inaccurate.

NeXTstep was built on 3 main technologies:
- the Mach microkernel from Carnegie-Mellon University
- part of BSD UNIX - the 4.4-Lite edition released from the University of California at Berkeley - but *not* the kernel
- the display subsystem, written entirely from scratch by NeXT, based around Display PostScript based on Adobe's PostScript page description language

Apple took this and updated it.

- Mach 2 was replaced with Mach 3
- the BSD 4.4 userland was updated with a lot of code from FreeBSD
- Display PostScript was replaced with Quartz, based instead around the PDF page description language - which is in essence a simpler, cleaner, more open version of PostScript aimed at screen rendering

But it is a mistake to say that Mac OS X is BSD underneath, even though a lot of ignorant Linuxites say it because they don't know their history, don't know anything about Mach and don't know what a userland is.

Many supercars have engines in licensed or bought from Ford or Audi or some other consumer car maker; it does not make a €200,000 Kônigsegg a Ford.

The Mac OS X kernel is called xnu. It is based on the Mach 3.0 microkernel from CMU with a big in-kernel Unix-compatibility module which is derived from FreeBSD. Above this is a userland, mainly derived from FreeBSD as well.

This does not mean that Mac OS X is a form of BSD; it is not. It uses a different kernel, a different config file system and a different display layer.

But Mac OS X is the latest version of OpenStep which was the latest version of NeXTstep. Everything in Mac OS X is based on NeXT technologies, pretty much - it inherits very little from classic MacOS. A descendant of the HFS+ filesystem and a completely rewritten Quicktime are about the only significant survivors. The desktop & "Finder" was rewritten to look more like a classic Mac, with desktop icons, nested folders, aliases, a global menu bar, etc. - but it's NeXT's Workspace Manager with a facelift, it shares no code with the classic MacOS Finder.

Most of Apple's other technological frameworks - OpenTransport, OpenDoc, Input Sprockets, QuickDraw, CyberDog, etc. - are all gone. Even Apple network protocols like AppleTalk are deprecated and disappearing now.

BeOS, on the other hand, had no input into OS X at all that I am aware of. When Apple did not buy Be, that sealed the smaller company's doom. Damned shame, but these things happen.

A final version of BeOS 6 did hit the market as Zeta, which changed hands a couple of times then disappeared. A ground-up open-source reimplementation called Haiku is getting some interest now as it approaches version 1.0.

Most of the Be engineers ended up at Palm, whose S/W division was spun off as PalmSource and later bought by Access Linux Solutions in China. PalmSource used them and the tech to produce PalmOS 6.0, a very clever new product - looked like classic PalmOS, ran PalmOS apps, but unlike PalmOS, was fully multitasking, with rich colour and multimedia support and was Internet-aware and -capable. Alas, no H/W vendors licensed it and it died.

ALP threw away the Be code, rewrote another new PalmOS, based around Linux instead, but although very clever - it looked like PalmOS & ran its apps - it was too little too late. Palm kept flogging the original, 68000-native, non-multitasking PalmOS 5 'til its all-new, radically-different, non-backwardly-compatible, Internet-centric Linux-based WebOS was ready for the new Prê phones.

The Prê is the iPhone's only really serious rival at the moment - both are significantly ahead of Google's Android - so Palm may yet win its gamble.

Be, BeOS and its technologies and code are dead and gone, though. Haiku - which shares no code, but looks & works similarly - are the only descendants.

July 2025

S M T W T F S
  1234 5
6789101112
13141516171819
20212223242526
2728293031  

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Aug. 9th, 2025 10:39 pm
Powered by Dreamwidth Studios