Hacker Read top | best | new | newcomments | leaders | about | bookmarklet login

Perhaps I should expand the history, for those who don't know. In the early 80s, QNX was the first fully multitasking operating system available for the IBM PC architecture. It was small, efficient, real-time, and somewhat idiosyncratic. It was fully ten years ahead of its time.

At the same time, in another sphere, POSIX was shaping up as factor in the emerging Open Systems wars. It drove compatibility between big vendors like IBM and HP and Sun (over other idiosyncratic offerings, like Apollo).

Perhaps POSIX as a user response to corporate power had value, but there was also collateral damage. As I understand the story, Canadian colleges standardized on POSIX, and so a great little Canadian OS (QNX) was left out in the cold. They had to become like others to survive.

Conformity served to reduce innovation and developer choice.

Now fast forward to 2013, and leaving aside shared memory details, what is POSIX driving today? Don't forget that ultimately a non-POSIX OS killed them all. And don't forget that users have their own means of bubbling up new features and architectures in the Open Source projects. Their control is far beyond what users got out of POSIX in the Open Systems age.



sort by: page size:

Yes, but after the initial monoliths of mainframes, we had a golden era of operating systems, where all of the plumbing and infrastructure to run your applications was maintained by someone else (Microsoft, Apple, Commodore, Atari, SGI, Sun, Palm, Redhat, etc).

Now we've come full circle back to the bad old days where you need an entire team of dedicated people and arcane knowledge just to run your application software again.

I suspect that this will continue until we reach a point where the big players out of necessity come to an agreement for a kind of "distributed POSIX" (I mean in spirit, not actual POSIX). These are exciting times living on the edge of a paradigm shift, but also frustrating!


Massive respect for doing this but it saddens me to see that operating systems aren't thinking of anything new.

As Rob Pike said, operating systems research is dead.

FUCK POSIX.


Back when I toiled in trenches as an embedded systems developer, I always dreamed of being able to use a "big, proper" OS like QNX instead of whatever clumsy, barely-better-than-bare-metal RTOS I was using at the time. I remember QNX always having a decent presence at the embedded systems conference.

Instead of going unix-ish and using QNX we eventually went windows-ish and used Phar Lap ETS, which was quite nice and civilized.


New POSIX OSes won't take off in a meaningful way either (whatever 'meaningful' means). It's nothing to do with it being POSIX or not, it's just difficult to get traction for a new OS. Linux faced exactly the same issue when it was released.

But why do you need it to take off in a meaningful way? Open Source software doesn't need a particular market share to keep going, it just needs a certain absolute number of people (which differs depending on the software). Is having a small committed core of users not enough for you? If your research is truly useful then that number will grow over time.

Unless you're talking about a commercial OS, in which case Microsoft is your obstacle, not POSIX. Good luck with that.


It's perfectly fair. QnX had a fully functional desktop environment and a large chunk of functionality that experimental OS's like Plan9 popularized.

Whether or not Windows as designed to be like QnX is immaterial, the question is what would be the better OS to serve as the engine behind a computer interacting with its users and my vote definitely goes to a real time operating system using a micro kernel. Because in my opinion that's by far the best match for that workload.

Stability, speed of interaction driver isolation and so on are much much better when using something like QnX vs a monolith. And a GUI is a real time affair.


Fully agree on QNX: very elegant OS, unique concepts like "syscalls" via synchronous (!) messaging, real-time from the bottom up. We used it for a robot we build in the 90s. Everything from the low-level control to the image processing on some fine 386 boards with QNX-native networked IPC. Too bad that Blackberry was probably the death-spell for it.

Also agree on Mach, although somehow NeXT/Apple seem to have managed to make a very good modern OS out of it - with a lot of Mach cruft hidden in the basement. The original NeXTStep Kernel suffered seriously from memory leakage and instability. Unbelievable it became the basis of iOS much later.


But seriously what if modern OSes were as responsive and resilient as QNX?

Though after building a modern desktop recently, it does kind of feel like building a minimally viable desktop and mounting a secondary computer for graphics into it. At least when I think of the powering situation. So maybe a move towards a less is more/very modular OS could find some niches today. It would be awesome if graphics drivers were more like a standardized communications interface than a binary blob dependent upon oem good effort.


That sucks. I can imagine next generation operating systems improving on Unix technically (standing on the shoulders of giants, yo), but establishing standards a la POSIX will be extremely difficult. It's hard to fight against the interest of platform vendors to lock their users in.

Unfortunately the requirement of "one that runs all of their software" is the one that means that most new os's are posix/unix clones of some variety. There is too much human effort invested into the posix userspace for us to start from scratch. In fact even Microsoft seems to be struggling with this inspite of their entrenched position.

Considering the use-cases, multi-tasking operating systems are not necessarily going to escape the trend toward information appliances.

In my opinion, if the workstation does survive, than a posix style OS similar to the abandoned HeliOS will become necessary again at some point... as Moore's law is effectively dead, and a 15% context-switching overhead on existing threading and mailbox models is silly.

Would I want to write one from scratch?

https://www.youtube.com/watch?v=lITBGjNEp08

Have a great day, and remember to have fun =)


I think it would be much easier to just design another POSIX compatible OS and give users some incentive over Linux: stable ABI, stable API, software and hardware that just works out of the box and don't need configuration and maintenance.

Writing an OS is a herculean effort and it boggles my mind that people still choose to write boring POSIX systems with next to no innovative features knowing how much effort is involved. I don't think I could ever expend that much effort cloning the status quo.

I too miss the Cambrian explosion of OSs in the 90s. It felt like so much potential before it all became dominated by Windows and then the OS itself began to vanish with sealed devices like smartphones.

Would you rather have a NeXTCube instead of your Mac, or rather a BeBox? Run some networking servers on your Solaris machine and do visual rendering on your SGI? Ah, it was fun times.


Almost every OS that has offered C and POSIX has floundered without getting traction, too.

The number of operating systems that have succeeded in any real way is tiny, and probably not big enough to draw any conclusions from. None of the major players today got to where they are now by following the conventional wisdom of their day. I assume the next big OS (or three) will similarly succeed by breaking all the rules we thought we knew.


> Workplace OS is IBM's ultimate operating system prototype of the 1990s. It is the product of an exploratory research program in 1991 which yielded a design called the Grand Unifying Theory of Systems (GUTS), proposing to unify the world's systems as generalized personalities cohabitating concurrently upon a universally sophisticated platform of object-oriented frameworks upon one microkernel.

> With protracted development spanning four years and $2 billion (or 0.6% of IBM's revenue for that period), the project suffered development hell characterized by empire building, feature creep, and the second-system effect.


I'm not sure comparing an RTOS to a really old school monolithic kernal is fair. Windows wasn't designed to be like QnX. I really wish QnX was open source though and had a thriving community behind it.

I am beginning to think that while POSIX, Unix and X11 might have been innovative and very useful in the '70s and ' 80s, now they are really old and most of the computing landscape changed.

We need better operating systems metaphors.


The same could have been said 30 years ago for an open source OS.

Nah, we'd have another POSIX OS, only worse than Linux (probably). Plus they attract different kinds of mindshare.
next

Legal | privacy