Was BeOS worse than NeXTSTEP?
Was BeOS worse than NeXTSTEP?
I think the best answer is BeOS wasn't as complete as NeXT. Specifically it had a fairly poor network stack (it was being retooled around the time BeOS became part of palm, no idea if it was finished)
It lacked the kind of print support MacOS and NeXT had. It lacked the same caliber of internationalization. All fixable stuff but also all stuff requiring some investment.
It also remains to be seen how well BeOS would actually scale, it was an RTOS with a UI, it could absolutely do sexy stuff on low powered machines of the day, that doesn't mean it could run a 12core dual i7 machine well. Maybe it could, we really don't know.
Certainly not Xnu.
It was amazing technology. It is still the most reliable desktop I ever had. It could play more videos/music etc at once with my 32 megs on a dual 66 ppc than my macbook pro w/ 4 gigs on memory and some 2.8ish dual core processor does today. Anecdote-
I used to blow people ( including myself away ) by downloading large video and music files from the internet and then launching them and playing on a loop. I got up to play in the 20-30 range at once without any lack of responsiveness and with no stutter etc.
It felt better when you were using the GUI, and maybe this is all that matters to most users, but the implementation was significantly poorer compared to NeXTSTEP.
A real time OS has some advantages as a desktop OS, everything is instant and without lag, but the total throughput of the system is significantly lower. To make a stupid car analogy, a RTOS is a Ferrari while a conventional OS is a massive off-road vehicle. Personally I think a RTOS is the way to go for a desktop OS.
I sometimes don't understand people's hate for the playbook, it is a wonderful tablet. IMHO it is a much better tablet than kindle fire (which is inspired heavily by the playbook btw), with TAT integration and two extra cameras and an active bezel. I time and time again feel that Google should buy rim and integrate QNX and Android.
But there seem to be some other interesting examples, like QNX: http://en.wikipedia.org/wiki/List_of_real-time_operating_sys...
RTLinux is more widely used than RTAI or Xenomai, but it's a completely different model, it's more like a hypervisor. Again, it doesn't help. While the OS provides the serivices, applications must be programmed specifically to use it.
And how "fast" and "real time" a desktop feels usually has little to do with the technically real time (or lack of thereof) of the kernel.
That said, Plan 9 has an interesting implementation of real time capabilities: http://doc.cat-v.org/plan_9/real_time/
QNX is a still very popular realtime OS in the embedded world today. Btw, the OS run by the BlackBerry devices is QNX. Usually you'll find QNX in control systems like avionics.
BeOS was arguably less ready than NeXTSTEP, lacking a network stack and printing (as has been pointed out elsewhere), and had very few apps and very few users, whereas NeXT was already deployed and in use by a lot of people.
> and could have replaced MacOS the next day
Not at all. One of the main points that MacOS had to support Mac application. There is no way that Apple ever would have released a Mac operating system (be it Copland, Rhapsody or MacOS X) without a "yellow box" MacOS System 8 layer.
Didn't happen with NeXTSTEP either -- a lot of stuff, like QuickTime and Finder, had to be ported over first.
http://lowendmac.com/musings/boxes.shtml
Originally, Carbon was not in the plans at all (the yellow box corresponded to what is nowadays referred to as Cocoa). Adding that was a substantial additional task, but probably well worth it.
BeOS had a networking stack at the time; the problem was that it was notoriously buggy and incompatible with the standard POSIX APIs.
Be was working on a replacement to it when they were sold to Palm, known as BONE. You can find a bit of information about it here: http://wiki.bebits.com/page/WhatIsBone
At the time period we're talking about, it was clear that the writing was on the wall about the internet being the future, and the poor networking stack on Mac OS was going to be a major problem going forward. NeXT had a mature stack based on BSD; BeOS had an immature stack that was in dire need of being ripped up and rewritten.
On that front, NeXT's networking was a clear step forward, and Be's barely a step sideways.
I am not saying they made the wrong decision, quite the contrary I am saying they made the right one, but I was just adding some historical context to the discussion that many of us at the time thought Be was the better choice. History has proven that we where wrong, but none the less a lot of us thought Be fit the bill. I no longer hold that position given what the future became, but I would be lying if I said, I and many people saw the logic back then.
One of the major deficiencies in Apple's OS at the time was lack of real multi user capabilities; like Windows pre XP. NeXT, coming from BSD, had this built in but BeOS was pretty much a single user OS
Incidentally, up until version 7.6, the Mac OS was simply called "System", as in "System 6" and "System 7". (Systems 1-5 were rapidly iterated through and forgotten--even System 6 still ran on a Mac Plus). Mac OS 7.6 was the first version that was designed to run on clones, hence the change from generic "System" to "Mac OS".