

Plan 9 from Bell Labs (1995) [pdf] - zatkin
http://plan9.bell-labs.com/sys/doc/9.pdf

======
zatkin
The reason I am posting this is because I'm curious what the community thinks
about Plan 9. Is it a failure? Is it the successor to Linux? After reading
some of the text, I'm convinced it's a smarter approach to operating system
design.

~~~
cpach
”There is a lesson here for ambitious system architects: the most dangerous
enemy of a better solution is an existing codebase that is just good
enough.”[1]

In order to replace a popular system it’s often not enough to be 20% or 40%
better, you need to be like 300% better.

[1]
[http://www.catb.org/esr/writings/taoup/html/plan9.html](http://www.catb.org/esr/writings/taoup/html/plan9.html)

------
frozenport
It is not clear if the reliance on external resources is justifiable when
existing computing resources are cheap. For example, how do we stream a 4k
screen or perhaps _why_ would we stream a 4k screen? Does a Plan 9 system
require desktops wired to an infiniband?

While the distributed features in Plan 9 are inspiring, they were unsuited for
desktop of the 90s, or the laptop of 2000 or a tablet today. Recall how people
used to call Solaris _Slowaris_ , despite defenders saying that it was faster
if your computer actually had two processors.

~~~
soong
>how do we stream a 4k screen or perhaps why would we stream a 4k screen?

Exactly! Why would you? Plan9 networks typically consist of File/Auth/CPU
Servers and Terminals. Every machine boots from and has its rootfs on the File
Server. Your screen content will be computed locally unless you decide to run
a computationally intensive task on the cpu server. The content of this window
will then be computed on the cpu server.

>[...] distributed features in Plan 9 [...] were unsuited for desktop of the
90s, or the laptop of 2000 or a tablet today.

You can however run all servers on a single standalone machine (though this
somewhat defeats the purpose) without considerable performance loss, since all
syscalls are implemented as local and as network version and the appropriate
will be chosen.

From personal experience I can confirm that Plan9 run at very acceptable speed
on a 400MHz,64MB,100MBit machine which is less than your typical smartwatch
these days.

~~~
frozenport
When computing resources were expensive and local (no WiFi) distribution made
sense, now computing resources are comparably cheap to bandwidth. I don't see
a motivation for such a system, at the level of OS integration.

~~~
rakoo
I do see a lot of potential applications of the idea:

\- remote storage. Instead of having some files here, some files there, I'd
rather have all my files live somewhere (possibly my NAS at home, replicated
on some servers out there) and have my smartphone/laptop remotely fetch data
into it. Of course, with a local cache for frequently accessed files. 9P
allows that.

\- I'd like to proxy all my connexions through a machine I know and control.
9P allows that.

\- I'd like to print from anywhere to my printer. 9P allows that.

While it is easy to think Plan 9 is about having the CPU on a remote machine
and the display on the local machine, the true killer-feature of Plan 9 is 9P;
the protocol that _actually_ allows a user to say _everything is a file_.

