> Oh, and most of the Plan 9 tools were first made
> available to use outside the Plan 9 OS through
> Russ Cox's plan9 in user space effort
> (http://swtch.com/plan9port/). And there's the
> virtualisation project vx32 that includes Plan 9
> as an example. Not sure how they fit into a
> holistic view. They're more like pragmatic
> ways forward when you can't (or don't want
> to) run a stand alone OS.

I'm probably not the best person to try to present the holistic
view, but I will anyway.  To understand where Plan 9 came
from, we first have to understand how UNIX developed.  In the
late '80s, UNIX was about 20 years old and had not aged too
gracefully.  In particular, as Sun said, the network had become
the computer, and UNIX networking was kind of bolted onto
the side of the system.  Similarly, graphical interaction had
become ubiquitous well after UNIX had originally been designed.
The way I like to describe it is that the Bell Labs guys at this
time decided to take 20 years of UNIX experience and start
over again and do it right, applying that experience.  The
result was Plan 9.

There are 5 main approaches to having the Plan 9 experience.
First, the "real" Plan 9 experience requires a network of machines
including file servers, CPU servers, and terminals.  Of course,
the original Plan 9 systems ran natively on bare hardware,
and it still happily runs on a lot of hardware.  The biggest
problem with just grabbing a bunch of random hardware
and running Plan 9 on it is the problem of drivers for random
PC hardware.  But a lot of us do run Plan 9 on bare hardware
and it's a refreshing experience after years of UNIces.  I
should also point out that Plan 9 has from the very beginning
been built around running on a variety of hardware and
today runs on everything from tiny gumstix machines to
Blue Gene/P.

The second major approach is running Plan 9 on simulators
and virtual machines.  Most of us have had varying degrees
of success running Plan 9 "networks" on instances of qemu
or vmware or xen or...  This is a pretty good way to mitigate
the hardware support issues.  It's also a nice way to set up
and test distributed things while sitting with a single laptop
in a hotel room.

If you have a real Plan 9 cpu server, but don't have a
Plan 9 terminal for accessing it, you can use the application
drawterm.  It is an interesting modification of the Plan 9
kernel running as an X11 application.  Unlike a real terminal,
it doesn't run any Plan 9 applications locally on the terminal,
but it does give you an interface to a real Plan 9 system.

Over time, many people who at one time used Plan 9 as
their main systems, were pulled away and found themselves
back on UNIX-like systems.  For a period of time, there were
several projects that implemented Plan 9 inspired tools for
UNIX and X11.  This is where P9P (aka Plan 9 from User Space)
comes in.  Russ Cox ported the bulk of the Plan 9 application
set to UNIX-based systems.  With these, you can have a user
environment that looks a lot like Plan 9, complete acme and
sam.

Later, Russ also developed the vx32 virtualization and the
implementation of Plan 9 on it.  This is 9vx which allows you
to run an instance of Plan 9 as user application.  9vx is
essentially a port of the Plan 9 kernel to the vx32 platform.
It's great as it allows you to run a "real" Plan 9 terminal as
an application on a more traditional system.  You can run it
stand-alone with the root taken from your host system, or
you can run it as a terminal that takes its root from a Plan 9
file server.

As I sit here at IWP9, I am typing this in acme in 9vx running
on FreeBSD, using the rio port in P9P for my window manager.
Because I'm away from my home network, I'm running 9vx
with the the root on my local machine.  When I'm at home, I
use 9vx booting with its root taken from a real Plan 9 file
server.  I also run it on qemu fairly often.  The bottom line
is that there are quite a variety of ways to work with Plan 9
and they are all useful in their own ways.

I've been too long-winded as it is, so I'll stop now.  Hopefully,
I haven't said anything that's too far off base.

BLS

Reply via email to