views:

296

answers:

3

Imagine that a large player is undertaking the construction of a new operating system, where backward compatibility requirements are limited to:

  • Run existing applications written in (or compiled to) JavaScript which are presented in HTML5 and styled with CSS3

  • Plug and play support for printers, external storage, and optical drives

  • Degrade gracefully when disconnected from the internet

  • Sufficient process quotas to support safely permitting tasks to run in the background, including timers

What specific features from existing research operating systems (such as Plan 9) would you like to see enter the mainstream through this channel? Please limit your suggestions to things that have been implemented, and provide a link to the implementation (or at least search terms).

From the Plan 9 docs:

Plan 9 began in the late 1980’s as an attempt to have it both ways: to build a system that was centrally administered and cost-effective using cheap modern microcomputers as its computing elements.

Netbooks qualify as cheap modern microcomputers, and The Cloud qualifies as centrally administered. There is an opportunity to implement the features (in DDaviesBrackett's words) that we want netbooks to have other than by extending a 1970's time-sharing OS; the research operating systems may have proved the value of alternatives by example.


From the Plan 9 FAQ:

Subject: What are its key ideas?

Plan 9 exploits, as far as possible, three basic technical ideas: first, all the system objects present themselves as named files that are manipulated by read/write operations; second, all these files may exist either locally or remotely, and respond to a standard protocol; third, the file system name space - the set of objects visible to a program - is dynamically and individually adjustable for each of the programs running on a particular machine. The first two of these ideas were foreshadowed in Unix and to a lesser extent in other systems, while the third is new: it allows a new engineering solution to the problems of distributed computing and graphics. Plan 9's approach means that application programs don't need to know where they are running; where, and on what kind of machine, to run a Plan 9 program is an economic decision that doesn't affect the construction of the application itself.

Does that not appear to be an excellent fit for the netbook/Cloud domain?

+3  A: 

None.

I'd prefer for a new consumer OS, especially one targeted at Netbooks, to be very very good at doing the things that we already want OSes to be able to do rather than having time spent on features that are, by their nature, experimental.

(Of course, I'd be totally un-bothered by features I wasn't forced to use to develop on the platform; other people's toys are welcome as long as they don't make my job harder.)

DDaviesBrackett
+1 for the response. Is it unrealistic for me to think of Plan 9 as a seasoned, rather than experimental, research operating system? The Plan 9 programmer's manual was published in 1995.
Thomas L Holaday
no, I don't think that's unreasonable at all. I suppose my comment starts off unnecessarily harsh - I didn't mean to shut down what really is a great question.
DDaviesBrackett
A: 

I really think that Google might look into Plan9 for inspiration actually. Hearsay (the Internet) claims that several of those that initially developed UNIX and then later scrapped it for a better design (Plan9) are employed by Google. Google is also hosting its own version of Inferno, but I am not sure whether this is any central part of their plan. Further "evidence" could be that the plan9 authorization system (p9auth) for Linux was published by a Google researcher. The third "evidence" would be that Google claim that Chrome OS will have a novel security architecture. The authorization seems to me to be one of the GREATEST parts of the Plan9 that can be included right now (/net would also be nice but there is no working code for that yet). The idea that a program that needs root access only gets limited access to the parts that are determined by the authorization server is definitely a great step forward compared to the now prevalent user/superuser/root division in Linux, where "a man in the middle" attacks can (theoretically) be done by gaining (full, as opposed to limited by the authorization server) root access via a bug in a program granted root.

Jens Staal
Looks like those Plan9 guys are busy with Go/Issue9.
Wei Hu
A: 

What operating system features I would advocate for Chrome OS?

Here my wish list as a Plan 9/Inferno fan:

  • Resources (ip stack, graphics, etc) as file systems.
  • Network transparent file system (ie., 9P).
  • Private per-process namespaces.
  • Factotum-like auth system (ie., no root user).
  • Pure UTF-8 everywhere.
  • Extremely lightweight processes.
  • Automatic snapshot and de-duplicating storage (ala venti+fossil).

And I guess many others, but this would be enough to make me quite happy.

This is not a 'OS feature' per see, but I would love to have a GUI with mouse-chording.

uriel