What's the alternative? OS/2 had nice features; it got crushed. BeOS had some nice features; it got crushed. (Yes, I'm aware that they're probably still around in some OSS version.) Plan9 keeps being mentioned, but do regular users understand it? (Is there a "this is why we do things, and this is why that's good" written for people who haven't written their own compiler?)
Are people working on experimental new OSs to "fix problems" in existing systems, or have we gone way past the point of no return? Is there any work on new microprocessor architecture? How much stuff in my modern OS is there because of legacy 8086 stuff?
I think, but I'm not sure, that the length of time it's taken people to get (for one example) IPv6 rolled out shows that change is not likely.
> Plan9 keeps being mentioned, but do regular users understand it? (Is there a "this is why we do things, and this is why that's good" written for people who haven't written their own compiler?)
This will give you a good overview of the basic design decisions in the system and their rationale, for further details on how Plan 9 deal with issues from toolchain design to authentication and security see the rest of the papers: http://doc.cat-v.org/plan_9/4th_edition/papers/
They are a wonderful read even if you never touch Plan 9, they are full of insights, ideas and criticisms of existing approaches, and many even include discussion on how to apply them to existing nix systems (sadly most of this has gone almost completely ignored by the nix community).
>> Plan9 keeps being mentioned, but do regular users
understand it? (Is there a "this is why we do things,
and this is why that's good" written for people who
haven't written their own compiler?)
> Yes, you can start with the main Plan 9 paper:
http://doc.cat-v.org/plan_9/4th_edition/papers/9
So, he asks about regular, ipad-toting, angry-birds-playing, how-do-I-turn-on-my-printer users and you link to a technical paper containing buzzwords such as "compilers", "internet gateways", "distributed systems", "POSIX", and "remote procedure calls". Do you see the problem with this?
The problem is that he thought the "regular users" referred to people who use the operating system itself rather than your iPad users.
Do your regular iPad users understand Unix, iOS, BeOS, or OS/2? No, they don't. They understand point and click interfaces on top of them. The operating system is irrelevant to people who want to Play Angry birds. Users who can't turn on their printer are irrelevant to a discussion on the merits of one operating system over another. The user interface on top the system and its programs is a separate topic.
As a programmer, I can make my programs do whatever I please. If I want to autosave all of my documents, I can write an Emacs script to save after every hundred keypresses. If I want greater security, I can write a tool to encrypt my files and network traffic, and a firewall to prevent unwanted connections. If I want to sync my files over the net, I can write a dropbox-clone. If I want to get better battery life, I can set my disk to spin down, reduce my screen brightness, or disable wireless. I am also more likely to know about existing versions of these specialized tools, because it's me and my friends who build them.
But as an "iPad user", I don't know any of that. If the feature isn't included in the OS, "turtles all the way down" and enabled by default, then I will never even know that such a thing is possible (and even if I did, wouldn't know how to get it).
So it's really exactly for the non-expert users that OS development is so important. Everyone else (and by that I mean the minority), is informed enough to figure these things out no matter what OS you give them.
Actually, he asked about people who haven't written their own compiler. I believe there's a large middle ground between people who've written their own compiler, and the users you're describing.
What's the alternative? OS/2 had nice features; it got crushed. BeOS had some nice features; it got crushed. (Yes, I'm aware that they're probably still around in some OSS version.) Plan9 keeps being mentioned, but do regular users understand it? (Is there a "this is why we do things, and this is why that's good" written for people who haven't written their own compiler?)
Are people working on experimental new OSs to "fix problems" in existing systems, or have we gone way past the point of no return? Is there any work on new microprocessor architecture? How much stuff in my modern OS is there because of legacy 8086 stuff?
I think, but I'm not sure, that the length of time it's taken people to get (for one example) IPv6 rolled out shows that change is not likely.
Plan9 LiveCD and installer: (http://cm.bell-labs.com/plan9/download.html)
Haiku: (http://haiku-os.org/)