The Temptation of OS X
Can OS X Seduce the Be Faithful?
Scot Hacker, 10/22/00The history of Be is heavily steeped in Apple culture. Be CEO Jean-Louis Gassée was a high-level Apple exec before leaving the mothership to create his own OS, and many of the primordial Be engineers were either ex-Apple patriots or 3rd-party MacOS developers. BeOS first ran on PowerPC hardware (in the form of the original BeBox) and later on PowerMacs and their clones. When Steve Jobs recaptured the reigns of the Apple empire, all of that changed. With one stroke, Jobs killed the clone makers and turned off the "info spigot" that allowed Be to keep BeOS harmoniously running on PowerPC hardware. These days, BeOS on PowerPC is pretty much a dead concern.
It's no secret that I've never been a big MacOS fan. While I appreciate Apple's aesthetics, I've always found MacOS slow, unstable, and unresponsive. The lack of a decent virtual memory system, basic memory protection, or even a command-line shell have kept me running x86-based operating systems throughout the years.
It is precisely this list of deeply seated and difficult-to-correct technical issues that inspired the development of BeOS to begin with. And, of course, it is the same list that has had Apple scrambling for a replacement OS for half a decade.
Ever since Apple first announced OS X, I've received letters from BeOS users asking what I thought about OS X, and whether I would keep using BeOS once it became available. My usual response has been along the lines of "Sounds great, can't wait to see it, but keep in mind that OS X will pretty much be the result of two 15-20 year old operating systems (NextStep and MacOS) glued together. I'm not worried about OS X outperforming BeOS, but I'll reserve my judgement until I've had a chance to play with it."
I now realize that this is not quite a fair assessment of the situation. One could just as easily complain that a new Maserati is based on century-old Ford technology, because both use internal combustion engines. The fact is that OS X is a new OS which just so happens to incorporate foundational principles of some older OSes. The same could be said of BeOS. The question could be better framed as: "Which OS includes more in the way of modern services and architectural principles - BeOS or OS X? Will OS X users get the same kind of super-responsive, cruft-free experience that BeOS offers?"
Cube Lust
Last week, one of my co-workers took ownership of a shiny new G4 Cube. To me, the fan-less computer is a sort of holy grail. For Apple to have packed one into such a small and fetching box is very attractive to me. An hour later, he had OS X beta installed, and we sat down to explore.While I hadn't liked the screenshots I'd seen of the Aqua interface, it made a much better impression in person. In fact, I'd go so far as to say it's one of the most beautiful user interfaces I've layed eyes on. "Downright lickable," as Simon put it. While sometimes slow by BeOS standards, the PDF-driven Quartz engine produces a gorgeous display quality, and the liberal use of drop-shadows and semi-transparent menus didn't seem as gimmicky in real-world use as I had expected them to. The OS X UI feels good. The command-line shell is there and fully functional, and I didn't find the controversial Dock as annoying as many Mac veterans do.
All of the promised fixes are there. Virtual memory that actually works, pre-emptive multitasking that lets you watch movies, listen to MP3s, and surf the web at the same time, protected memory that lets you crash your browser without killing the whole OS, etc. etc. In other words, MacOS may actually be catching up to BeOS, technologically speaking.
OS X 2000 = BeOS 1994
OS X includes many of the technological goodies that have been built into BeOS since the beginning. That's no surprise -- both OSes were created to address the same fundamental shortcomings in MacOS. But BeOS emerged onto the scene more than half a decade ago. Not only that, but BeOS has additional modern services that OS X does not have. Let's take a quick, admittedly biased look at some of the key technologies in OS X and BeOS, bullet-point style.- Protected memory. Both OSes seem to be equivalent here. When apps crash, the OS keeps humming. Just the way it should be.
- Virtual memory. It never ceased to amaze me that the old "user friendly" MacOS required novice users with low-memory machines to manually tweak application memory requirements. Welcome to the modern world.
- World-class networking. OS X includes a networking layer based on FreeBSD. BeOS engineers are currently replacing the native net_server with a new network stack largely derived from FreeBSD. Both should perform roughly on par with Linux/BSD, bringing two OSes with consumer-level ease-of-use to the Unix server market.
- Symmetric multiprocessing. OS X's Mach 3.0 kernel is fully SMP capable. But in order to take full advantage of multiple processors, services and applications must be decently multithreaded. I do not know how much effort Apple has put into multithreading their non-kernel apps and services, but I do know that BeOS is multithreaded from the lowest levels of the OS to the highest. Even the Be filesystem is pervasively multithreaded. All apps get at least two threads, and developers are actively encouraged to design fully multithreaded apps. As a result, BeOS utilizes 100% of up to eight processors, right out of the box. I have not yet seen references to OS X working with more than two processors, though I would imagine it's prepared to do so.
- POSIX-compliance. Both OSes are capable of running recompiled non-graphical Unix-style applications and utilities. Porting graphical Unix apps takes a lot more work, but both OSes include a Terminal application which interfaces with shells such as bash and tcsh. While both OSes includes a large set of bundled command-line utils, OS X also includes emacs and Apache, ready to go. BeOS does not (these are available as separate downloads for BeOS, however).
- Workspaces. This one is kind of shocking to me. After using BeOS and its 32 workspaces (independent desktops with independent resolutions and color depths) for years, I find it downright painful to use operating systems with a single desktop. We're talking about multitasking here -- not just from the OS perspective, but from the user perspective. I can't even begin to understand why Apple didn't prioritize the usability advantages of multiple workspaces.
- Filetyping. OS X has made some big improvements here, but filetyping in OS X still doesn't offer the level of flexibility and control found in BeOS.
- Multi-user. BeOS includes the underpinnings necessary for a full multi-user implementation, and some BeOS apps do respect permissions in the filesystem, but the OS itself is not yet multiuser. OS X will be completely multi-user from the get-go.
- Filesystem. Despite the many encroachments on BeOS territory by Windows, MacOS, and even Linux, Be's filesystem remains a crown jewel. 64-bit address sizes mean that BeOS has a theoretical maximum file size of 18,000 petabytes. Complete journaling means data on BFS volumes is safe when the power goes out -- pull the plug on a Be machine and the OS comes back up in 15 seconds. No ScanDisk, no rebuilding the desktop, no fschk. But most importantly, BFS functions like a database. I've spent a lot of electrons describing the many advantages of BFS attributes and won't rehash that here, but suffice to say that BeOS has it; Windows, Linux, and OS X do not.
- Dynamic driver and service loading. Both BeOS and OS X let you restart system services and load new device drivers without rebooting. Some reports point out that this doesn't always work perfectly in OS X (you can't hot-plug a CD-ROM drive on a PowerBook, for example), but I'll give Apple the benefit of the doubt and assume this will be working by release time.
- Boot times. I was amazed to see that OS X takes around 90 seconds to boot on a G4. BeOS still boots to full GUI in 15 seconds or less on average hardware.
- Display quality. Both operating systems offer fully anti-aliased font display. But the PDF-based Quartz engine in OS X is a thing of beauty, and Apple is definitely taking great advantage of it. I'm a fan of the way BeOS sometimes utilizes the alpha channel to offer subtle user feedback (when dragging ShowImage or Tracker selections, for example). The effect in OS X is similar, but more pervasive and elegant than in BeOS. General OS X responsiveness may not, however, be as good as it could be thanks to all the math required for transparency effects which some consider mere eye candy.
- Overall responsiveness. This one is pretty subjective and difficult to quantify, but Be's hallmark responsiveness under heavy multitasking loads is going to be a tough one to beat. OS X is definitely more responsive than previous versions of MacOS, but in my quick tour, OS X just didn't seem to have the snappiness of BeOS. This seems to be at least partially related to the computational requirements of Quartz. Scrolling around in a Finder window with hundreds of items is annoyingly slow, and another colleague reported that the OS X Music Player on his G4 iBook skips while other apps were being launched ... just like they did in OS 9. BeOS users don't suffer such slings and arrows. On top of that, OS X still draws outlines of windows as they're resized, rather than resizing the content in them dynamically, as you can do in BeOS (with Be's MediaPlayer, for example). I attribute these differences to the fact that Be pays religious attention to threading issues, in all aspects of the OS. In some ways, OS X is more responsive under load than its predecessors. In other realms, OS X is slower than OS 9. Apple doesn't seem to have caught up with Be on this front. See this Ars-Technica article for a detailed analysis of performance-related issues in OS X beta.
All of this is particularly interesting when viewed in light of the fact that Apple came -->this close<-- to buying Be before ultimately settling on NeXT. Few published analyses of that near-miss seem to have a clear understanding of what Apple would have gotten with a Be purchase, or why BeOS might actually have been worth Gassée's asking price.
I believe that if the Apple buy-out had gone through, OS X would have been out by now, and would be even better than it's looking today. But as tempting as it is to focus on what could have been, doing so is a pointless excercise in sentimentalism. It didn't happen, and now we have two operating systems with "the grace of the Mac, the power of Unix." In my estimation, one (BeOS) has moderately superior technological underpinnings. The other (OS X) is actually going to matter.
It Takes More Than Tech
There's more to OS success than great technology. It's about two things, folks: Great marketing and great solutions. Neither Be nor their partners have ever succeeded in getting a noteworthy marketing campaign off the ground. Beyond the trade show circuit and the Free BeOS campaign, scarcely a dime has been spent on getting BeOS under the noses of the masses -- a fact I can't meditate on for more than 30 seconds without breaking out in hives.Without marketing, solutions compelling enough to generate millions of new BeOS users have -- for the most part -- failed to emerge. As things stand, BeOS is the most pleasant operating environment I know of. But it just doesn't offer the array of compelling solutions it needs to be taken seriously by major market segments.
All of that is behind us now; the time has passed and Be is primarily an appliance OS vendor working directly with OEMs rather than end users. BeOS itself is still being actively worked on by Be, and 3rd-party applications continue to appear. But there's no question that OS X will emerge onto the market with a large base of apps mature enough for use in professional settings, and that it will continue to enjoy a momentum greater than BeOS has mustered over the past five years.
While Apple's OS X will be attractive to geeks like me, it will also come with great marketing and great solutions. Viewed in light of their similarities, OS X could well become the BeOS that never was. While BeOS users struggle to support developers and/or convince companies to port their products, dozens of big-name development houses have already signed on to bring their products to OS X. Apple will likely advertise OS X as broadly as they do their hardware. Windows and Linux users will no longer be able to look down their noses at MacOS, and may even change horses in countable numbers. From where I sit, things look very good for OS X.
Do I find OS X personally interesting? Damn right I do. Could I conceivably be seduced away from BeOS? Quite possibly. Operating systems are not religions, and I'm a BeOS jock because I like the technology better than anything out there, not because of blind loyalty. If Apple can offer similar technology, but in conjunction with a thriving marketplace and a large suite of mature apps, I could very well end up with a sexy little cube on my desk six months from now. Then I can spend my time haranguing Apple to bring the remaining bits and pieces up to par with what BeOS is today, and has been for years.