9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
* [9fans] Plan 9 from Bell Labs - Frequently Asked Questions [FAQ]
@ 2003-04-09 16:21 Steve Kotsopoulos
  2003-04-09 16:36 ` Russ Cox
  2003-04-12  3:38 ` Kenji Arisawa
  0 siblings, 2 replies; 19+ messages in thread
From: Steve Kotsopoulos @ 2003-04-09 16:21 UTC (permalink / raw)
  To: 9fans

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 26016 bytes --]

Archive-name: comp-os/plan9-faq
Last-modified: Mar 17, 2003
Posting-Frequency: monthly
URL: http://www.fywss.com/plan9/plan9faq.html

This document answers frequently asked questions about the fourth edition of
the Plan 9 operating system.

The following sections are new or modified recently:

   * Where can I get the stable and current branches of Plan 9?
   * How do I take a screenshot?
   * What is the Plan 9 equivalent of the Unix find command?
   * Where did the names for Plan 9 applications come from?

A hypertext version of this FAQ is available on my Plan 9 web page, URL
http://www.fywss.com/plan9/

Other sources of information include the newsgroup comp.os.plan9, which is
bidirectionally gatewayed to the 9fans mailing list (browse archives at
https://lists.cse.psu.edu/archives/9fans/ and
http://bio.cse.psu.edu/~schwartz/9fans/, or mail 9fans-request@cse.psu.edu
to subscribe) and of course the Plan 9 homepage at Bell Labs, URL
http://plan9.bell-labs.com/plan9dist/ and the Plan 9 wiki at
http://plan9.bell-labs.com/wiki/plan9/plan_9_wiki/index.html

If you'd like to discuss the Plan9 license, send mail to
plan9-license-discussions@plan9.bell-labs.com. Mailing to this list
subscribes you to the list.

Please forward any comments or suggestions regarding this FAQ to
steve@fywss.com
  ------------------------------------------------------------------------

Introduction:

   * What is Plan 9?
   * What is in the latest Plan9 release?
   * What is its relation to other operating systems?
   * What are its key ideas?
   * What are the advantages to this approach?

Hardware and Software:

   * What platforms does it run on?
   * Is anyone working on a port for my system?
   * Does it support symmetric multiprocessing?
   * What about applications and tools?
   * Is there a fortran compiler?
   * Where can I get more Plan 9 software?
   * Is it object-oriented?
   * What about application portability?
   * What resources does it need?
   * What GUIs does it support?
   * How do I cut and paste with a 2 button mouse?
   * Does Plan 9 have any Unix-like terminal emulators?
   * What character set does it use?
   * What about security and user authentication?
   * How does it communicate with other systems?
   * Is it suitable for real time control?

Installation and Administration:

   * What PC hardware works well with Plan 9?
   * How do I Install Plan 9?
   * Where can I get the stable and current branches of Plan 9?
   * It doesn't work for me, how should I troubleshoot?
   * How do I setup the VGA?
   * How do I take a screenshot?
   * What is the Plan 9 equivalent of the Unix find command?
   * How do I control the services that start at boot time?
   * How do I setup network services?
   * How do I shutdown my terminal/cpuserver system?
   * How do I reboot my system?

General Information:

   * Where did the name come from?
   * Where did the names for Plan 9 applications come from?
   * How can I Obtain Plan 9?
   * How can I get involved?
   * Where can I get more detailed technical information?
   * Can I emulate Plan 9 under Unix?
   * Is the cross product of two vectors a vector?
   * Are there any Plan 9 user groups?

  ------------------------------------------------------------------------

Introduction:

Subject: What is Plan 9?

Plan 9 is a new computer operating system and associated utilities. It was
built by the Computing Science Research Center of Lucent Technologies Bell
Laboratories, the same group that developed Unix, C, and C++.

Plan 9 is a distributed system. In the most general configuration, it uses
three kinds of components: terminals that sit on users' desks, file servers
that store permanent data, and other servers that provide faster CPUs, user
authentication, and network gateways. These components are connected by
various kinds of networks, including Ethernet, specially-built fiber
networks, ordinary modem connections, and ISDN. In typical use, users
interact with applications that run either on their terminals or on CPU
servers, and the applications get their data from the file servers. The
design, however, is highly configurable; it escapes from specific models of
networked workstations and central machine service.

Subject: What is in the latest Plan9 release?

The fourth release of Plan 9 provides a major overhaul of the system at
every level. From the underlying file system protocol, 9P, through the
kernel, libraries, and applications, almost everything has been modified
and, in many cases, redesigned or rewritten.

For more details, see the release notes at
http://plan9.bell-labs.com/sys/doc/release4.html

The new release is available for free download under an open source
agreement.

Subject: For History Buffs

The first edition of Plan 9 was released in 1993, and was only available to
universities.

In 1995 the second edition was available for purchase under a shrink-wrap
license.

On June 7, 2000, the third release was made available for free download
under an open source agreement. This was a significant step over previous
releases.

The third edition version of this FAQ is archived at
http://www.fywss.com/plan9/plan9v3faq.html

Subject: What is its relation to other operating systems?

Plan 9 is itself an operating system; it doesn't run as an application under
another system. It was written from the ground up and doesn't include other
people's code. Although the OS's interface to applications is strongly
influenced by the approach of Unix, it's not a replacement for Unix; it is a
new design.

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.

Subject: What are the advantages to this approach?

Plan 9's approach improves generality and modularity of application design
by encouraging servers that make any kind of information appear to users and
to applications just like collections of ordinary files. Here are a few
examples.

The Plan 9 window system (called rio) is small and clean in part because its
design is centered on providing a virtual keyboard, mouse, and screen to
each of the applications running under it, while using the real keyboard,
mouse, and screen supplied by the operating system. That is - besides
creating, deleting, and arranging the windows themselves - its job is be a
server for certain resources used by its clients. As a side benefit, this
approach means that the window system can run recursively in one of its
windows, or even on another machine.

Plan 9 users do Internet FTP by starting a local program that makes all the
files on any FTP server (anywhere on the Internet) appear to be local files.
Plan 9 PC users with a DOS/Windows partition on their disk can use the files
stored there. ISO 9660 CD-ROMs and tar and cpio tapes all behave as if they
were native file systems. The complete I/O behavior and performance of any
application can be monitored by running it under a server that sees all its
interactions. The debugger can examine a program on another machine even if
it is running on a different hardware architecture.

Another example is the approach to networks. In Plan 9, each network
presents itself as a set of files for connection creation, I/O, and control.
A common semantic core for the operations is agreed upon, together with a
general server for translating human-readable addresses to network-specific
ones. As a result, applications don't care which kind of network (TCP/IP,
ISDN, modem) they are using. In fact, applications don't even know whether
the network they are using is physically attached to the machine the
application is running on: the network interface files can be imported from
another machine.

Hardware and Software:

Subject: What platforms does it run on?

The Plan 9 kernel and applications are highly portable. Plan 9 runs on four
major machine architectures: Intel 386/486/Pentium, MIPS, Alpha, and
PowerPC. Data structures and protocols are designed for distributed
computing on machines of diverse design. Except for necessarily
machine-dependent parts of the kernel, the compilers, and a few libraries,
there is a single source representation for everything.

To find out whether Plan 9 supports your hardware, read The Various Ports
and Supported PC Hardware.

Subject: Is anyone working on a port for my system?

Perhaps ... let us know.

Subject: Does it support symmetric multiprocessing?

Yes. The SGI Challenge series of multiprocessors and multi processor
Pentiums are supported. Be warned that Intel-based SMP systems are
notoriously fickle in conforming to the Multiprocessor Specification and
often some head-scratching is required when things don't just work.

The system has been run on machines ranging from dual Pentium 90's up to
quad Xeon 400's and the 8 processor Pentium Pro Axil system. By default, as
it comes out the box, the release has SMP operation disabled by an option in
the plan9.ini config file.

Subject: What about applications and tools?

Plan 9 comes with its own compilers for C and other languages, together with
all the commands and program-development tools originally pioneered in the
Unix environment. It also provides newly designed software. Acid is a
programmable debugger that understands multiple-process programs, and the
programs it is debugging may be running on a hardware platform different
from its own. Acme is a new user interface in which any word on the screen
can be interpreted as a command by clicking on it, and any string can
specify a file to be displayed.

Subject: Is there a fortran compiler?

No, plan9 does not have a fortran compiler. If you have fortran programs you
want to run, you can try using the f2c (fortran to C) converter available at
ftp://netlib.bell-labs.com/netlib/f2c/

Subject: Where can I get more Plan 9 software?

     Charles Forsyth has the original and still the largest list of software
          http://www.caldo.demon.co.uk/plan9/soft/index.html
     Russ Cox has cd players, mp3 player and a wide variety of other small
     tools
          http://www.eecs.harvard.edu/~rsc/plan9.html
     Tad Hunt can help you balance your bank account, boot your laptop and
     listen to music
          http://csh-east.org/~tad/plan9/
     Nemo (Francisco Ballesteros) has a collection of drivers and utilities
          http://plan9.escet.urjc.es/usr/nemo/9.html
     Kenji Arisawa's ftp site
          ftp://plan9.aichi-u.ac.jp/
     Boyd Roberts writes rc scripts when not ranting on 9fans
          http://home.fr.inter.net/boyd/code/repo/
     There's a native Python port at
          http://home.fr.inter.net/boyd/code/plan9/pythonR3.tgz [based on
          Russ' port to 9P2000]

Subject: Is it object-oriented?

No, not in the conventional sense. It is written in a strict dialect of
ISO/ANSI C. In a wider sense, its general design of making all its `objects'
look like files to which one talks in a well-defined protocol shows a
related approach.

Subject: What about application portability?

Plan 9 comes with a library that makes it easy to import POSIX-conforming
applications. There is also a library that emulates the Berkeley socket
interface.

Subject: What resources does it need?

As might be expected, the answer depends on what you want to do. The kernel,
the window system, and the basic applications will run comfortably on a PC
with 8MB of memory.

On the other hand, the system can grow. The installation at Bell
Laboratories includes multiprocessor SGI Challenge and Pentium machines as
CPU servers, and a 350GB Sony WORM disk jukebox for the file server.

Subject: What GUIs does it support?

The standard interface doesn't use icons or drag-n-drop; Plan 9 people tend
to be text-oriented. But the window system, the editor, and the general feel
are very mousy, very point-and-click: Plan 9 windows are much more than a
bunch of glass TTYs. The system supports the graphics primitives and
libraries of basic software for building GUIs.
A screenshot is available at
http://plan9.bell-labs.com/plan9dist/screenshot.html

Subject: How do I cut and paste with a 2 button mouse?

Plan 9 really works well only with a three-button mouse. In the meantime,
Shift-Right-button will simulate a middle button, but that is inadequate for
Acme's chording.

Subject: Does Plan 9 have any Unix-like terminal emulators?

The Plan 9 window system doesn't obey any inline cursor controls, since none
of the native applications use cursor-addressing. All cursor control in rio,
acme and sam is via the mouse.

To see some excellent articles on this important and divisive user interface
issue read http://www.asktog.com/readerMail/1999-12ReaderMail.html.

If you want to get from Plan9 to Unix systems, you can run /bin/vt in one of
your windows, telnet/rlogin to Unix, and set the term/TERM variable
accordingly on the Unix end. See vt(1) for more details; note that vt(1) can
emulate a VT100 VT220 or ANSI terminal.

Subject: What character set does it use?

The character set is Unicode, the 16-bit set unified with the ISO 10646
standard for representing languages used throughout the world. The system
and its utilities support Unicode using a byte-stream representation (called
UTF-8) that is compatible with ASCII. On Plan 9, one may grep for Cyrillic
strings in a file with a Japanese name and see the results appear correctly
on the terminal.

Subject: What about security and user authentication?

Plan 9's authentication design is akin to that of MIT's Kerberos. Passwords
are never sent over networks; instead encrypted tickets are obtained from an
authentication server. It doesn't have the concept of `set UID' programs.
The file server doesn't run user programs, and except at its own console, it
doesn't allow access to protected files except by authenticated owners. The
concept of a special `root' user is gone.

Subject: How does it communicate with other systems?

The distribution includes a u9fs server that runs on Unix-compatible systems
and understands the native Plan 9 remote file protocol, so that file systems
of Unix machines may be imported into Plan 9. It also includes an
NFS-compatible server that runs on Plan 9, so that Plan 9 file systems may
be accessed from other systems that support NFS. It includes the full suite
of Internet protocols (telnet, rlogin, ftp).

Subject: Is it suitable for real time control?

No, it is not. It is a general purpose system, without an interrupt priority
scheme or real scheduler.

Installation and Administration:

Subject: What PC hardware works well with Plan 9?

If you don't want to spend time fiddling with and swapping PC hardware, you
may prefer to buy hardware that is in use within Bell Labs, see Supported PC
Hardware.

The biggest source of problems is getting the VGA configured on PC
terminals. For best performance and functionality, it is recommended that
you use a card that can run at 16 bits per pixel or greater, and with
hardware-accelerated graphics support; currently only the Mach64 and S3
Virge are supported to this extent. The best buy today seems to be the ATI
8Meg Xpert 98 cards.

For a cpuserver or fileserver any old card that can do CGA is fine.

Subject: How do I Install Plan 9?

The installation is designed to be run from a PC.
  1. Read "Supported PC hardware" to ensure your PC meets the requirements.
  2. Back up your system.
  3. Make sure you've backed up your system.
  4. Read "Installing the Plan 9 Distribution" at URL
     http://plan9.bell-labs.com/wiki/plan9/Installation_instructions/index.html
  5. See the Staying up to Date page for information on how to obtain the
     latest fixes.
  6. Here are some more questions that have been answered on the 9fans list:
     IP configuration
          ndb/cs will set the sysname if you setup an appropriate entry in
          /lib/ndb/local. You must specify an 'ether=' entry, and the
          address should be all lower case. If all goes well, ip/ipconfig
          will then configure IP.
     Name Service
          If you have having problems, first check that ndb/dns is running.
          It needs to be started in /rc/bin/termrc or /rc/bin/cpurc. Also
          note that only fully qualified names are supported, and there
          isn't a separate resolver.
     Binding and Mounting Devices
          Note that # is the shell comment character, so you must enclose it
          in single quotes. For example: bind -a '#R6' /dev
     Auth Server
          When booting a cpuserver without an auth server, if you give
          0.1.0.0 as the auth server address instead the cpu server's own
          address, you won't have to wait for it to timeout.

Subject: Where can I get the stable and current branches of Plan 9?

The stable releases are the ones in the CD images from the updates page.
If you pull often from replica, you get the equivalent of 'the current
brach'.

Subject: It doesn't work for me, how should I troubleshoot?

If you are having having SCSI problems, check your cables and terminators.
this is generally the single largest cause of weird SCSI problems. Active
terminators are best. If you run external cables you need to get high
quality ones. Also, don't crank of the speed on the card.

Subject: How do I setup the VGA?

If the VGA doesn't work, read the last couple sections (Setting Up and
Troubleshooting) of "Installing the Plan 9 Distribution"

You will have to find out more about the card so you can configure it. The
relevant manuals are: vga(3), vgadb(6), vga(8), and 9load(8).

If your VGA card is not supported, you could try
http://mapage.noos.fr/philippe.anel/ for Matrox G200 G400 and G450 drivers
by Philippe Anel

Put
debug=1
(1st line) in plan9.ini and try again. It may not be of much help but will
allow to ask a more specific question.

Subject: How do I take a screenshot?

It's simple, use utilities such as togif, topng, toppm for example:
togif < /dev/screen > screenshot.gif

Subject: What is the Plan 9 equivalent of the Unix find command?

The simplest equivalent is:
du -a . | grep foo
A useful variation is:
grep foo `{du -a . | awk '{print $2}'

Subject: How do I control the services that start at boot time?

This is controlled by shell scripts, that are roughly equivalent to the
/etc/rc files on Unix:
/rc/bin/termrc for terminals
/rc/bin/cpurc for cpu servers

See cpurc(8) for more details.

Subject: How do I setup network services?

For UDP services, you must start them up in the appropriate cpurc(8) file.
For TCP or IL services, you must use the listen(8) daemon.

Subject: How do I shutdown my terminal/cpuserver system?

If you booted from a real fileserver, you can just turn it off.

If you are using kfs, you must halt the disks manually by typing
disk/kfscmd halt
at a prompt and waiting for ``kfs: file system halted'' to appear on the
screen.

Not doing this means the disk might not be in a consistent state or modified
data might not have been written out yet; not halting the disk forces the
long wait at the ``kfs...'' when you boot the next time while kfs checks the
disk.

Subject: How do I reboot my system?

The system can be rebooted by typing ^T^Tr (two control-T's followed by
'r'). Cpu servers can be rebooted by typing ^P on the console. See the
cons(3) manual for more details.

General Information:

Subject: Where did the name come from?

It was chosen in the Bell Labs tradition of selecting names that make
marketeers wince. The developers also wished to pay homage to the famous
film, "Plan 9 From Outer Space".

Subject: Where did the names for Plan 9 applications come from?

The name of default user glenda was chosen from Ed Wood's film "Glen or
Glenda".
The original Unix editor was called ed, so Rob Pike called his first screen
editor jim, and the next one sam. Sam is actually short for Samantha.
8 1/2 is called that as it was Pike's 8 and a halfth windowing system - it
also happens to be a film by Fellini.
Alef (concurrent language) is named analagously to B and C, just choosing
from a new alphabet.
Acme is probably named after Wile E. Coyote's equipment supplier.
The Plan 9 shell is called "rc", because it ``runs commands''.
Mothra (Plan 9 web-browser in second release) is named after the Japanese
horror-movie monster. Tom Duff picked the name because Netscape's browser is
called Mozilla (a portmanteau of Mosaic (its progenitor) and Godzilla) and
mothra is its Plan 9 `competition.'

The hermeneutics of naming yields few insights. Things are named usually
because the name is nice (sam), or there is some private reference hard to
decode (8 1/2), or in honour (perhaps backhanded) of another system
(mothra), or an indication of expectation (Plan 9, Acme), or just because
(acid). None of the names tell you anything helpful.

Despite the lack of information, those who guess at reasons for naming
generate volumes of apocrypha. The real reason is usually, "because".

Subject: How can I Obtain Plan 9?

The Plan 9 release is available for free download at
http://plan9.bell-labs.com/plan9dist/download.html
It includes source of the kernel, libraries, and commands for all supported
architectures. It also includes complete binaries for the x86 architecture.

Subject: How can I get involved?

The best way to learn about the system is to write something that other
people in the Plan 9 user community could use, or to port the system to new
platforms.

Subject: Where can I get more detailed technical information?

The Bell Labs site plan9.bell-labs.com stores a wealth of information about
the system.
The manual pages are at http://plan9.bell-labs.com/sys/man/
For auxiliary documentation, see http://plan9.bell-labs.com/sys/doc/
A Plan 9 wiki is maintained by enthusiasts at
http://plan9.bell-labs.com/wiki/plan9/plan_9_wiki/index.html

Subject: Are there any Plan 9 user groups?

There is one in Austin, Texas. See
http://einstein.ssz.com/hangar18/index.html It's open to anyone, even if you
don't live in Austin.

Subject: Is the cross product of two vectors a vector?

No, it is not, and the fact that people treat it as one is the problem. The
*geometric object* that is the closest thing to the c.p. is a skew tensor
(practically the same as wedge product), which (only) in 3D has Cartesian
components that resemble those of a vector, *except* that this pseudo-vector
*flips* under reflection (unlike a genuine vector). Unfortunately,
physicists have been trained to express Maxwell's laws as a relationship
between a genuine vector (field) and a c.p., which means that that
expression of those laws *changes* under reflection, something that
physicists are *not* taught and which appears to have been overlooked in the
analysis of the (nonconservation of) parity experiment.
I had to quote Douglas Gwyn verbatim on this, because I have no *ucking clue
what he's talking about -- Steve

Subject: Can I emulate Plan 9 under Unix?

Ron Minnich has implemented private name spaces for Linux and FreeBSD. You
can get documentation and source code from
http://www.acl.lanl.gov/~rminnich/

Several Plan 9 inspired applications are available for Unix systems.

The sam editor is available from
ftp://netlib.bell-labs.com/netlib/research/sam.shar.gz

There is also a Windows 95/NT version of Sam, currently distributed in
binary form only, available from
ftp://netlib.bell-labs.com/netlib/research/sam.exe Comments and bug reports
can be sent to seanq@research.bell-labs.com

Wily is an acme lookalike by Gary Capell. See
http://www.cs.yorku.ca/~oz/wily/

Mark H. Wilkinson's 9libs package of Plan 9 emulation libraries for Unix is
probably the easiest-to-install distribution of sam and wily. You can get it
from http://www.netlib.org/research/9libs/

A free re-implementation of the rc shell is available from
http://www.star.le.ac.uk/~tjg/rc/

9wm is David Hogan's lightweight X window manager in the style of 8�/rio. It
was once available from ftp://ftp.cs.su.oz.au/dhog/9wm/ but is being moved
to a new home. Comments to dhog@plan9.bell-labs.com

9term is an 8� terminal emulator by Matty Farrow, matty@cs.su.oz.au,
available from ftp://ftp.cs.su.oz.au/matty/unicode/ In the same directory,
you'll find a collection of Unicode fonts that can be used with 9term, sam
and wily.

9menu is a simple program by Arnold Robbins, arnold@skeeve.com, that allows
you to create X menus from the shell, where each menu item will run a
command. 9menu is intended for use with 9wm, but can be used with any other
window manager. It is available from
ftp://ftp.freefriends.org/arnold/Source/9menu-1.5.shar.gz

Copyright � 1995 Lucent Technologies. All rights reserved.
--
Steve Kotsopoulos		steve@fywss.com


^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [9fans] Plan 9 from Bell Labs - Frequently Asked Questions [FAQ]
  2003-04-09 16:21 [9fans] Plan 9 from Bell Labs - Frequently Asked Questions [FAQ] Steve Kotsopoulos
@ 2003-04-09 16:36 ` Russ Cox
  2003-04-12  3:38 ` Kenji Arisawa
  1 sibling, 0 replies; 19+ messages in thread
From: Russ Cox @ 2003-04-09 16:36 UTC (permalink / raw)
  To: 9fans

> Subject: Is the cross product of two vectors a vector?
>
> No, it is not, and the fact that people treat it as one is the problem. The
> *geometric object* that is the closest thing to the c.p. is a skew tensor
> (practically the same as wedge product), which (only) in 3D has Cartesian
> components that resemble those of a vector, *except* that this pseudo-vector
> *flips* under reflection (unlike a genuine vector). Unfortunately,
> physicists have been trained to express Maxwell's laws as a relationship
> between a genuine vector (field) and a c.p., which means that that
> expression of those laws *changes* under reflection, something that
> physicists are *not* taught and which appears to have been overlooked in the
> analysis of the (nonconservation of) parity experiment.
> I had to quote Douglas Gwyn verbatim on this, because I have no *ucking clue
> what he's talking about -- Steve
^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [9fans] Plan 9 from Bell Labs - Frequently Asked Questions [FAQ]
  2003-04-09 16:21 [9fans] Plan 9 from Bell Labs - Frequently Asked Questions [FAQ] Steve Kotsopoulos
  2003-04-09 16:36 ` Russ Cox
@ 2003-04-12  3:38 ` Kenji Arisawa
  2003-04-12  3:52   ` Steve Kotsopoulos
  1 sibling, 1 reply; 19+ messages in thread
From: Kenji Arisawa @ 2003-04-12  3:38 UTC (permalink / raw)
  To: 9fans

Hello,

Please change
           ftp://plan9.aichi-u.ac.jp/
to
	http://plan9.aichi-u.ac.jp/netlib/


Thanks

Kenji Arisawa



^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [9fans] Plan 9 from Bell Labs - Frequently Asked Questions [FAQ]
  2003-04-12  3:38 ` Kenji Arisawa
@ 2003-04-12  3:52   ` Steve Kotsopoulos
  0 siblings, 0 replies; 19+ messages in thread
From: Steve Kotsopoulos @ 2003-04-12  3:52 UTC (permalink / raw)
  To: 9fans

done

	Steve

Kenji Arisawa wrote:
> Hello,
>
> Please change
>            ftp://plan9.aichi-u.ac.jp/
> to
> 	http://plan9.aichi-u.ac.jp/netlib/
>
>
> Thanks
>
> Kenji Arisawa


^ permalink raw reply	[flat|nested] 19+ messages in thread

* [9fans] Plan 9 from Bell Labs - Frequently Asked Questions [FAQ]
@ 2002-03-04  2:40 Steve Kotsopoulos
  0 siblings, 0 replies; 19+ messages in thread
From: Steve Kotsopoulos @ 2002-03-04  2:40 UTC (permalink / raw)
  To: 9fans

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 24039 bytes --]

Archive-name: comp-os/plan9-faq
Last-modified: Mar 3, 2002
Posting-Frequency: monthly
URL: http://www.fywss.com/plan9/plan9faq.html

This document answers frequently asked questions about the third edition of
the Plan 9 operating system.

The following sections are new or modified recently:

   * Where can I get more Plan 9 software?
   * Can I emulate Plan 9 under Unix?
   * How do I cut and paste with a 2 button mouse?

A hypertext version of this FAQ is available on my Plan 9 web page, URL
http://www.fywss.com/plan9/

Other sources of information include the newsgroup comp.os.plan9, which is
bidirectionally gatewayed to the 9fans mailing list (browse archives at
https://lists.cse.psu.edu/archives/9fans/ and
http://bio.cse.psu.edu/~schwartz/9fans/, or mail 9fans-request@cse.psu.edu
to subscribe) and of course the Plan 9 homepage at Bell Labs, URL
http://plan9.bell-labs.com/plan9dist/

If you'd like to discuss the Plan9 license, send mail to
plan9-license-discussions@plan9.bell-labs.com. Mailing to this list
subscribes you to the list.

Please forward any comments or suggestions regarding this FAQ to
steve@fywss.com
  ------------------------------------------------------------------------

Introduction:

   * What is Plan 9?
   * What is in the latest Plan9 release?
   * What is its relation to other operating systems?
   * What are its key ideas?
   * What are the advantages to this approach?

Hardware and Software:

   * What platforms does it run on?
   * Is anyone working on a port for my system?
   * Does it support symmetric multiprocessing?
   * What about applications and tools?
   * Is there a fortran compiler?
   * Where can I get more Plan 9 software?
   * Is it object-oriented?
   * What about application portability?
   * What resources does it need?
   * What GUIs does it support?
   * How do I cut and paste with a 2 button mouse?
   * Does Plan 9 have any Unix-like terminal emulators?
   * What character set does it use?
   * What about security and user authentication?
   * How does it communicate with other systems?
   * Is it suitable for real time control?

Installation and Administration:

   * What PC hardware works well with Plan 9?
   * How do I Install Plan 9?
   * It doesn't work for me, how should I troubleshoot?
   * How do I setup the VGA?
   * How do I control the services that start at boot time?
   * How do I setup network services?
   * How do I shutdown my terminal/cpuserver system?
   * How do I reboot my system?

General Information:

   * Where did the name come from?
   * How can I Obtain Plan 9?
   * How can I get involved?
   * Where can I get more detailed technical information?
   * Can I emulate Plan 9 under Unix?
   * Is the cross product of two vectors a vector?
   * Are there any Plan 9 user groups?

  ------------------------------------------------------------------------

Introduction:

Subject: What is Plan 9?

Plan 9 is a new computer operating system and associated utilities. It was
built by the Computing Science Research Center of Lucent Technologies Bell
Laboratories, the same group that developed Unix, C, and C++.

Plan 9 is a distributed system. In the most general configuration, it uses
three kinds of components: terminals that sit on users' desks, file servers
that store permanent data, and other servers that provide faster CPUs, user
authentication, and network gateways. These components are connected by
various kinds of networks, including Ethernet, specially-built fiber
networks, ordinary modem connections, and ISDN. In typical use, users
interact with applications that run either on their terminals or on CPU
servers, and the applications get their data from the file servers. The
design, however, is highly configurable; it escapes from specific models of
networked workstations and central machine service.

Subject: What is in the latest Plan9 release?

The press release for the third edition of Plan9 is at
http://www.bell-labs.com/news/2000/june/7/2.html

Among the changes in this release of Plan 9 are a revised kernel, which now
has the means to resolve ambiguous file names; an improved graphics
environment; an updated command set; and expanded libraries. The system's
creators also have installed "plumbing," a new mechanism for passing
messages between interactive programs, as part of the user interface.

The new release is available for free download under an open source
agreement. This is a significant step over previous releases.

If you'd like to browse the distribution packages before actually
installing, you'll need the tools available at
http://www.fywss.com/plan9/unix/

Subject: For History Buffs

The first edition of Plan 9 was released in 1993, and was only available to
universities.

In 1995 the second edition was available for purchase under a shrink-wrap
license.

The second edition version of this FAQ is archived at
http://www.fywss.com/plan9/plan9v2faq.html

Subject: What is its relation to other operating systems?

Plan 9 is itself an operating system; it doesn't run as an application under
another system. It was written from the ground up and doesn't include other
people's code. Although the OS's interface to applications is strongly
influenced by the approach of Unix, it's not a replacement for Unix; it is a
new design.

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.

Subject: What are the advantages to this approach?

Plan 9's approach improves generality and modularity of application design
by encouraging servers that make any kind of information appear to users and
to applications just like collections of ordinary files. Here are a few
examples.

The Plan 9 window system (called rio) is small and clean in part because its
design is centered on providing a virtual keyboard, mouse, and screen to
each of the applications running under it, while using the real keyboard,
mouse, and screen supplied by the operating system. That is - besides
creating, deleting, and arranging the windows themselves - its job is be a
server for certain resources used by its clients. As a side benefit, this
approach means that the window system can run recursively in one of its
windows, or even on another machine.

Plan 9 users do Internet FTP by starting a local program that makes all the
files on any FTP server (anywhere on the Internet) appear to be local files.
Plan 9 PC users with a DOS/Windows partition on their disk can use the files
stored there. ISO 9660 CD-ROMs and tar and cpio tapes all behave as if they
were native file systems. The complete I/O behavior and performance of any
application can be monitored by running it under a server that sees all its
interactions. The debugger can examine a program on another machine even if
it is running on a different hardware architecture.

Another example is the approach to networks. In Plan 9, each network
presents itself as a set of files for connection creation, I/O, and control.
A common semantic core for the operations is agreed upon, together with a
general server for translating human-readable addresses to network-specific
ones. As a result, applications don't care which kind of network (TCP/IP,
ISDN, modem) they are using. In fact, applications don't even know whether
the network they are using is physically attached to the machine the
application is running on: the network interface files can be imported from
another machine.

Hardware and Software:

Subject: What platforms does it run on?

The Plan 9 kernel and applications are highly portable. Plan 9 runs on four
major machine architectures: Intel 386/486/Pentium, MIPS, Alpha, and
PowerPC. Data structures and protocols are designed for distributed
computing on machines of diverse design. Except for necessarily
machine-dependent parts of the kernel, the compilers, and a few libraries,
there is a single source representation for everything.

To find out whether Plan 9 supports your hardware, read The Various Ports
and Supported PC Hardware.

Subject: Is anyone working on a port for my system?

Perhaps ... let us know.

Subject: Does it support symmetric multiprocessing?

Yes. The SGI Challenge series of multiprocessors and multi processor
Pentiums are supported. Be warned that Intel-based SMP systems are
notoriously fickle in conforming to the Multiprocessor Specification and
often some head-scratching is required when things don't just work.

The system has been run on machines ranging from dual Pentium 90's up to
quad Xeon 400's and the 8 processor Pentium Pro Axil system. By default, as
it comes out the box, the release has SMP operation disabled by an option in
the plan9.ini config file.

Subject: What about applications and tools?

Plan 9 comes with its own compilers for C and other languages, together with
all the commands and program-development tools originally pioneered in the
Unix environment. It also provides newly designed software. Acid is a
programmable debugger that understands multiple-process programs, and the
programs it is debugging may be running on a hardware platform different
from its own. Acme is a new user interface in which any word on the screen
can be interpreted as a command by clicking on it, and any string can
specify a file to be displayed.

Subject: Is there a fortran compiler?

No, plan9 does not have a fortran compiler. If you have fortran programs you
want to run, you can try using the f2c (fortran to C) converter available at
ftp://netlib.bell-labs.com/netlib/f2c/

Subject: Where can I get more Plan 9 software?

     Charles Forsyth has the original and still the longest list of software
          http://www.caldo.demon.co.uk/plan9/soft/index.html
     Russ Cox has cd players, mp3 player and a wide variety of other small
     tools
          http://www.eecs.harvard.edu/~rsc/plan9.html
     Tad Hunt can help you balance your bank account, boot your laptop and
     listen to music
          http://csh-east.org/~tad/plan9/
     Nemo (Francisco Ballesteros) has a collection of drivers and utilities
          http://plan9.escet.urjc.es/usr/nemo/9.html
     Kenji Arisawa's ftp site
          ftp://plan9.aichi-u.ac.jp/
     Boyd Roberts writes rc scripts when not ranting on 9fans
          http://home.fr.inter.net/boyd/code/repo/
     There's a native Python port at
          http://home.fr.inter.net/boyd/code/plan9/pythonR3.tgz [based on
          Russ' port to 9P2000]
     The wiki User-contributed Software page is useful too
          http://plan9.bell-labs.com/wiki/plan9/35/index.html

Subject: Is it object-oriented?

No, not in the conventional sense. It is written in a strict dialect of
ISO/ANSI C. In a wider sense, its general design of making all its `objects'
look like files to which one talks in a well-defined protocol shows a
related approach.

Subject: What about application portability?

Plan 9 comes with a library that makes it easy to import POSIX-conforming
applications. There is also a library that emulates the Berkeley socket
interface.

Subject: What resources does it need?

As might be expected, the answer depends on what you want to do. The kernel,
the window system, and the basic applications will run comfortably on a PC
with 8MB of memory.

On the other hand, the system can grow. The installation at Bell
Laboratories includes multiprocessor SGI Challenge and Pentium machines as
CPU servers, and a 350GB Sony WORM disk jukebox for the file server.

Subject: What GUIs does it support?

The standard interface doesn't use icons or drag-n-drop; Plan 9 people tend
to be text-oriented. But the window system, the editor, and the general feel
are very mousy, very point-and-click: Plan 9 windows are much more than a
bunch of glass TTYs. The system supports the graphics primitives and
libraries of basic software for building GUIs.
A screenshot is available at
http://plan9.bell-labs.com/plan9dist/screenshot.html

Subject: How do I cut and paste with a 2 button mouse?

Plan 9 really works well only with a three-button mouse. In the meantime,
Shift-Right-button will simulate a middle button, but that is inadequate for
Acme's chording.

Subject: Does Plan 9 have any Unix-like terminal emulators?

The Plan 9 window system doesn't obey any inline cursor controls, since none
of the native applications use cursor-addressing. All cursor control in rio,
acme and sam is via the mouse.

To see some excellent articles on this important and divisive user interface
issue read http://www.asktog.com/readerMail/1999-12ReaderMail.html.

If you want to get from Plan9 to Unix systems, you can run /bin/vt in one of
your windows, telnet/rlogin to Unix, and set the term/TERM variable
accordingly on the Unix end. See vt(1) for more details; note that vt(1) can
emulate a VT100 VT220 or ANSI terminal.

Subject: What character set does it use?

The character set is Unicode, the 16-bit set unified with the ISO 10646
standard for representing languages used throughout the world. The system
and its utilities support Unicode using a byte-stream representation (called
UTF-8) that is compatible with ASCII. On Plan 9, one may grep for Cyrillic
strings in a file with a Japanese name and see the results appear correctly
on the terminal.

Subject: What about security and user authentication?

Plan 9's authentication design is akin to that of MIT's Kerberos. Passwords
are never sent over networks; instead encrypted tickets are obtained from an
authentication server. It doesn't have the concept of `set UID' programs.
The file server doesn't run user programs, and except at its own console, it
doesn't allow access to protected files except by authenticated owners. The
concept of a special `root' user is gone.

Subject: How does it communicate with other systems?

The distribution includes a u9fs server that runs on Unix-compatible systems
and understands the native Plan 9 remote file protocol, so that file systems
of Unix machines may be imported into Plan 9. It also includes an
NFS-compatible server that runs on Plan 9, so that Plan 9 file systems may
be accessed from other systems that support NFS. It includes the full suite
of Internet protocols (telnet, rlogin, ftp).

Subject: Is it suitable for real time control?

No, it is not. It is a general purpose system, without an interrupt priority
scheme or real scheduler.

Installation and Administration:

Subject: What PC hardware works well with Plan 9?

If you don't want to spend time fiddling with and swapping PC hardware, you
may prefer to buy hardware that is in use within Bell Labs, see Supported PC
Hardware.

The biggest source of problems is getting the VGA configured on PC
terminals. For best performance and functionality, it is recommended that
you use a card that can run at 16 bits per pixel or greater, and with
hardware-accelerated graphics support; currently only the Mach64 and S3
Virge are supported to this extent. The best buy today seems to be the ATI
8Meg Xpert 98 cards.

For a cpuserver or fileserver any old card that can do CGA is fine.

Subject: How do I Install Plan 9?

The installation is designed to be run from a PC.
  1. Read "Supported PC hardware" to ensure your PC meets the requirements.
  2. Back up your system.
  3. Make sure you've backed up your system.
  4. Read "Installing the Plan 9 Distribution" at URL
     http://plan9.bell-labs.com/sys/doc/install.html
  5. Check the errata page at
     http://plan9.bell-labs.com/plan9dist/errata.html for problems and fixes
     found since the distribution was made.
  6. Here are some more questions that have been answered on the 9fans list:
     IP configuration
          ndb/cs will set the sysname if you setup an appropriate entry in
          /lib/ndb/local. You must specify an 'ether=' entry, and the
          address should be all lower case. If all goes well, ip/ipconfig
          will then configure IP.
     Name Service
          If you have having problems, first check that ndb/dns is running.
          It needs to be started in /rc/bin/termrc or /rc/bin/cpurc. Also
          note that only fully qualified names are supported, and there
          isn't a separate resolver.
     Binding and Mounting Devices
          Note that # is the shell comment character, so you must enclose it
          in single quotes. For example: bind -a '#R6' /dev
     Auth Server
          When booting a cpuserver without an auth server, if you give
          0.1.0.0 as the auth server address instead the cpu server's own
          address, you won't have to wait for it to timeout.

Subject: It doesn't work for me, how should I troubleshoot?

If you are having having SCSI problems, check your cables and terminators.
this is generally the single largest cause of weird SCSI problems. Active
terminators are best. If you run external cables you need to get high
quality ones. Also, don't crank of the speed on the card.

Subject: How do I setup the VGA?

If the VGA doesn't work, read the last couple sections (Setting Up and
Troubleshooting) of "Installing the Plan 9 Distribution"

You will have to find out more about the card so you can configure it. The
relevant manuals are: vga(3), vgadb(6), vga(8), and 9load(8).

If your VGA card is not supported, you could try
http://mapage.noos.fr/philippe.anel/ for Matrox G200 G400 and G450 drivers
by Philippe Anel or see http://plan9.bell-labs.com/wiki/plan9/39/index.html
for Riva TNT drivers by Nicholas Waples.

Put
debug=1
(1st line) in plan9.ini and try again. It may not be of much help but will
allow to ask a more specific question.

Subject: How do I control the services that start at boot time?

This is controlled by shell scripts, that are roughly equivalent to the
/etc/rc files on Unix:
/rc/bin/termrc for terminals
/rc/bin/cpurc for cpu servers

See cpurc(8) for more details.

Subject: How do I setup network services?

For UDP services, you must start them up in the appropriate cpurc(8) file.
For TCP or IL services, you must use the listen(8) daemon.

Subject: How do I shutdown my terminal/cpuserver system?

If you booted from a real fileserver, you can just turn it off.

If you are using kfs, you must halt the disks manually by typing
disk/kfscmd halt
at a prompt and waiting for ``kfs: file system halted'' to appear on the
screen.

Not doing this means the disk might not be in a consistent state or modified
data might not have been written out yet; not halting the disk forces the
long wait at the ``kfs...'' when you boot the next time while kfs checks the
disk.

Subject: How do I reboot my system?

The system can be rebooted by typing ^T^Tr (two control-T's followed by
'r'). Cpu servers can be rebooted by typing ^P on the console. See the
cons(3) manual for more details.

General Information:

Subject: Where did the name come from?

It was chosen in the Bell Labs tradition of selecting names that make
marketeers wince. The developers also wished to pay homage to the famous
film, "Plan 9 From Outer Space".

Subject: How can I Obtain Plan 9?

The Plan 9 release is available for free download at
http://plan9.bell-labs.com/plan9dist/download.html
It includes source of the kernel, libraries, and commands for all supported
architectures. It also includes complete binaries for the x86 architecture.

Subject: How can I get involved?

The best way to learn about the system is to write something that other
people in the Plan 9 user community could use, or to port the system to new
platforms.

Subject: Where can I get more detailed technical information?

The Bell Labs site plan9.bell-labs.com stores a wealth of information about
the system.
The manual pages are at http://plan9.bell-labs.com/sys/man/
For auxiliary documentation, see http://plan9.bell-labs.com/sys/doc/
A Plan 9 wiki is maintained by enthusiasts at
http://plan9.bell-labs.com/wiki/plan9/1/

Subject: Are there any Plan 9 user groups?

There is one in Austin, Texas. See
http://einstein.ssz.com/hangar18/index.html It's open to anyone, even if you
don't live in Austin.

Subject: Is the cross product of two vectors a vector?

No, it is not, and the fact that people treat it as one is the problem. The
*geometric object* that is the closest thing to the c.p. is a skew tensor
(practically the same as wedge product), which (only) in 3D has Cartesian
components that resemble those of a vector, *except* that this pseudo-vector
*flips* under reflection (unlike a genuine vector). Unfortunately,
physicists have been trained to express Maxwell's laws as a relationship
between a genuine vector (field) and a c.p., which means that that
expression of those laws *changes* under reflection, something that
physicists are *not* taught and which appears to have been overlooked in the
analysis of the (nonconservation of) parity experiment.
I had to quote Douglas Gwyn verbatim on this, because I have no *ucking clue
what he's talking about -- Steve

Subject: Can I emulate Plan 9 under Unix?

Ron Minnich has implemented private name spaces for Linux and FreeBSD. You
can get documentation and source code from
http://www.acl.lanl.gov/~rminnich/

Several Plan 9 inspired applications are available for Unix systems.

The sam editor is available from
ftp://netlib.bell-labs.com/netlib/research/sam.shar.gz

There is also a Windows 95/NT version of Sam, currently distributed in
binary form only, available from
ftp://netlib.bell-labs.com/netlib/research/sam.exe Comments and bug reports
can be sent to seanq@research.bell-labs.com

Wily is an acme lookalike by Gary Capell. See
http://www.cs.yorku.ca/~oz/wily/

Mark H. Wilkinson's 9libs package of Plan 9 emulation libraries for Unix is
probably the easiest-to-install distribution of sam and wily. You can get it
from http://www.netlib.org/research/9libs/

A free re-implementation of the rc shell is available from
http://www.star.le.ac.uk/~tjg/rc/

9wm is David Hogan's lightweight X window manager in the style of 8½/rio. It
was once available from ftp://ftp.cs.su.oz.au/dhog/9wm/ but is being moved
to a new home. Comments to dhog@plan9.bell-labs.com

9term is an 8½ terminal emulator by Matty Farrow, matty@cs.su.oz.au,
available from ftp://ftp.cs.su.oz.au/matty/unicode/ In the same directory,
you'll find a collection of Unicode fonts that can be used with 9term, sam
and wily.

9menu is a simple program by Arnold Robbins, arnold@skeeve.com, that allows
you to create X menus from the shell, where each menu item will run a
command. 9menu is intended for use with 9wm, but can be used with any other
window manager. It is available from
ftp://ftp.freefriends.org/arnold/Source/9menu-1.5.shar.gz

Copyright © 1995 Lucent Technologies. All rights reserved.
-- 
Steve Kotsopoulos		steve@fywss.com


^ permalink raw reply	[flat|nested] 19+ messages in thread

* [9fans] Plan 9 from Bell Labs - Frequently Asked Questions [FAQ]
@ 2002-02-01  5:24 Steve Kotsopoulos
  0 siblings, 0 replies; 19+ messages in thread
From: Steve Kotsopoulos @ 2002-02-01  5:24 UTC (permalink / raw)
  To: 9fans

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 23828 bytes --]

Archive-name: comp-os/plan9-faq
Last-modified: Jan 31, 2002
Posting-Frequency: monthly
URL: http://www.fywss.com/plan9/plan9faq.html

This document answers frequently asked questions about the third edition of
the Plan 9 operating system.

The following sections are new or modified recently:

   * How do I cut and paste with a 2 button mouse?
   * Are there any Plan 9 user groups?
   * Is the cross product of two vectors a vector?

A hypertext version of this FAQ is available on my Plan 9 web page, URL
http://www.fywss.com/plan9/

Other sources of information include the newsgroup comp.os.plan9, which is
bidirectionally gatewayed to the 9fans mailing list (browse archives at
https://lists.cse.psu.edu/archives/9fans/ and
http://bio.cse.psu.edu/~schwartz/9fans/, or mail 9fans-request@cse.psu.edu
to subscribe) and of course the Plan 9 homepage at Bell Labs, URL
http://plan9.bell-labs.com/plan9dist/

If you'd like to discuss the Plan9 license, send mail to
plan9-license-discussions@plan9.bell-labs.com. Mailing to this list
subscribes you to the list.

Please forward any comments or suggestions regarding this FAQ to
steve@fywss.com
  ------------------------------------------------------------------------

Introduction:

   * What is Plan 9?
   * What is in the latest Plan9 release?
   * What is its relation to other operating systems?
   * What are its key ideas?
   * What are the advantages to this approach?

Hardware and Software:

   * What platforms does it run on?
   * Is anyone working on a port for my system?
   * Does it support symmetric multiprocessing?
   * What about applications and tools?
   * Is there a fortran compiler?
   * Where can I get more Plan 9 software?
   * Is it object-oriented?
   * What about application portability?
   * What resources does it need?
   * What GUIs does it support?
   * How do I cut and paste with a 2 button mouse?
   * Does Plan 9 have any Unix-like terminal emulators?
   * What character set does it use?
   * What about security and user authentication?
   * How does it communicate with other systems?
   * Is it suitable for real time control?

Installation and Administration:

   * What PC hardware works well with Plan 9?
   * How do I Install Plan 9?
   * It doesn't work for me, how should I troubleshoot?
   * How do I setup the VGA?
   * How do I control the services that start at boot time?
   * How do I setup network services?
   * How do I shutdown my terminal/cpuserver system?
   * How do I reboot my system?

General Information:

   * Where did the name come from?
   * How can I Obtain Plan 9?
   * How can I get involved?
   * Where can I get more detailed technical information?
   * Can I emulate Plan 9 under Unix?
   * Is the cross product of two vectors a vector?
   * Are there any Plan 9 user groups?

  ------------------------------------------------------------------------

Introduction:

Subject: What is Plan 9?

Plan 9 is a new computer operating system and associated utilities. It was
built by the Computing Science Research Center of Lucent Technologies Bell
Laboratories, the same group that developed Unix, C, and C++.

Plan 9 is a distributed system. In the most general configuration, it uses
three kinds of components: terminals that sit on users' desks, file servers
that store permanent data, and other servers that provide faster CPUs, user
authentication, and network gateways. These components are connected by
various kinds of networks, including Ethernet, specially-built fiber
networks, ordinary modem connections, and ISDN. In typical use, users
interact with applications that run either on their terminals or on CPU
servers, and the applications get their data from the file servers. The
design, however, is highly configurable; it escapes from specific models of
networked workstations and central machine service.

Subject: What is in the latest Plan9 release?

The press release for the third edition of Plan9 is at
http://www.bell-labs.com/news/2000/june/7/2.html

Among the changes in this release of Plan 9 are a revised kernel, which now
has the means to resolve ambiguous file names; an improved graphics
environment; an updated command set; and expanded libraries. The system's
creators also have installed "plumbing," a new mechanism for passing
messages between interactive programs, as part of the user interface.

The new release is available for free download under an open source
agreement. This is a significant step over previous releases.

If you'd like to browse the distribution packages before actually
installing, you'll need the tools available at
http://www.fywss.com/plan9/unix/

Subject: For History Buffs

The first edition of Plan 9 was released in 1993, and was only available to
universities.

In 1995 the second edition was available for purchase under a shrink-wrap
license.

The second edition version of this FAQ is archived at
http://www.fywss.com/plan9/plan9v2faq.html

Subject: What is its relation to other operating systems?

Plan 9 is itself an operating system; it doesn't run as an application under
another system. It was written from the ground up and doesn't include other
people's code. Although the OS's interface to applications is strongly
influenced by the approach of Unix, it's not a replacement for Unix; it is a
new design.

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.

Subject: What are the advantages to this approach?

Plan 9's approach improves generality and modularity of application design
by encouraging servers that make any kind of information appear to users and
to applications just like collections of ordinary files. Here are a few
examples.

The Plan 9 window system (called rio) is small and clean in part because its
design is centered on providing a virtual keyboard, mouse, and screen to
each of the applications running under it, while using the real keyboard,
mouse, and screen supplied by the operating system. That is - besides
creating, deleting, and arranging the windows themselves - its job is be a
server for certain resources used by its clients. As a side benefit, this
approach means that the window system can run recursively in one of its
windows, or even on another machine.

Plan 9 users do Internet FTP by starting a local program that makes all the
files on any FTP server (anywhere on the Internet) appear to be local files.
Plan 9 PC users with a DOS/Windows partition on their disk can use the files
stored there. ISO 9660 CD-ROMs and tar and cpio tapes all behave as if they
were native file systems. The complete I/O behavior and performance of any
application can be monitored by running it under a server that sees all its
interactions. The debugger can examine a program on another machine even if
it is running on a different hardware architecture.

Another example is the approach to networks. In Plan 9, each network
presents itself as a set of files for connection creation, I/O, and control.
A common semantic core for the operations is agreed upon, together with a
general server for translating human-readable addresses to network-specific
ones. As a result, applications don't care which kind of network (TCP/IP,
ISDN, modem) they are using. In fact, applications don't even know whether
the network they are using is physically attached to the machine the
application is running on: the network interface files can be imported from
another machine.

Hardware and Software:

Subject: What platforms does it run on?

The Plan 9 kernel and applications are highly portable. Plan 9 runs on four
major machine architectures: Intel 386/486/Pentium, MIPS, Alpha, and
PowerPC. Data structures and protocols are designed for distributed
computing on machines of diverse design. Except for necessarily
machine-dependent parts of the kernel, the compilers, and a few libraries,
there is a single source representation for everything.

To find out whether Plan 9 supports your hardware, read The Various Ports
and Supported PC Hardware.

Subject: Is anyone working on a port for my system?

Perhaps ... let us know.

Subject: Does it support symmetric multiprocessing?

Yes. The SGI Challenge series of multiprocessors and multi processor
Pentiums are supported. Be warned that Intel-based SMP systems are
notoriously fickle in conforming to the Multiprocessor Specification and
often some head-scratching is required when things don't just work.

The system has been run on machines ranging from dual Pentium 90's up to
quad Xeon 400's and the 8 processor Pentium Pro Axil system. By default, as
it comes out the box, the release has SMP operation disabled by an option in
the plan9.ini config file.

Subject: What about applications and tools?

Plan 9 comes with its own compilers for C and other languages, together with
all the commands and program-development tools originally pioneered in the
Unix environment. It also provides newly designed software. Acid is a
programmable debugger that understands multiple-process programs, and the
programs it is debugging may be running on a hardware platform different
from its own. Acme is a new user interface in which any word on the screen
can be interpreted as a command by clicking on it, and any string can
specify a file to be displayed.

Subject: Is there a fortran compiler?

No, plan9 does not have a fortran compiler. If you have fortran programs you
want to run, you can try using the f2c (fortran to C) converter available at
ftp://netlib.bell-labs.com/netlib/f2c/

Subject: Where can I get more Plan 9 software?

     Charles Forsyth has the original and still the longest list of software
          http://www.caldo.demon.co.uk/plan9/soft/index.html
     Russ Cox has cd players, mp3 player and a wide variety of other small
     tools
          http://www.eecs.harvard.edu/~rsc/plan9.html
     Tad Hunt can help you balance your bank account, boot your laptop and
     listen to music
          http://csh-east.org/~tad/plan9/
     Nemo (Francisco Ballesteros) has a collection of drivers and utilities
          http://plan9.escet.urjc.es/usr/nemo/9.html
     Kenji Arisawa's ftp site
          ftp://plan9.aichi-u.ac.jp/
     Boyd Roberts writes rc scripts when not ranting on 9fans
          http://mapage.noos.fr/~repo/
     There's a Python port at
          http://csociety-ftp.ecn.purdue.edu/pub/plan9/python/
     The wiki User-contributed Software page is useful too
          http://plan9.bell-labs.com/wiki/plan9/35/index.html

Subject: Is it object-oriented?

No, not in the conventional sense. It is written in a strict dialect of
ISO/ANSI C. In a wider sense, its general design of making all its `objects'
look like files to which one talks in a well-defined protocol shows a
related approach.

Subject: What about application portability?

Plan 9 comes with a library that makes it easy to import POSIX-conforming
applications. There is also a library that emulates the Berkeley socket
interface.

Subject: What resources does it need?

As might be expected, the answer depends on what you want to do. The kernel,
the window system, and the basic applications will run comfortably on a PC
with 8MB of memory.

On the other hand, the system can grow. The installation at Bell
Laboratories includes multiprocessor SGI Challenge and Pentium machines as
CPU servers, and a 350GB Sony WORM disk jukebox for the file server.

Subject: What GUIs does it support?

The standard interface doesn't use icons or drag-n-drop; Plan 9 people tend
to be text-oriented. But the window system, the editor, and the general feel
are very mousy, very point-and-click: Plan 9 windows are much more than a
bunch of glass TTYs. The system supports the graphics primitives and
libraries of basic software for building GUIs.
A screenshot is available at
http://plan9.bell-labs.com/plan9dist/screenshot.html

Subject: How do I cut and paste with a 2 button mouse?

Plan 9 really works well only with a three-button mouse. In the meantime,
Shift-Right-button will simulate a middle button, but that is inadequate for
Acme's chording.

Subject: Does Plan 9 have any Unix-like terminal emulators?

The Plan 9 window system doesn't obey any inline cursor controls, since none
of the native applications use cursor-addressing. All cursor control in rio,
acme and sam is via the mouse.

To see some excellent articles on this important and divisive user interface
issue read http://www.asktog.com/readerMail/1999-12ReaderMail.html.

If you want to get from Plan9 to Unix systems, you can run /bin/vt in one of
your windows, telnet/rlogin to Unix, and set the term/TERM variable
accordingly on the Unix end. See vt(1) for more details; note that vt(1) can
emulate a VT100 VT220 or ANSI terminal.

Subject: What character set does it use?

The character set is Unicode, the 16-bit set unified with the ISO 10646
standard for representing languages used throughout the world. The system
and its utilities support Unicode using a byte-stream representation (called
UTF-8) that is compatible with ASCII. On Plan 9, one may grep for Cyrillic
strings in a file with a Japanese name and see the results appear correctly
on the terminal.

Subject: What about security and user authentication?

Plan 9's authentication design is akin to that of MIT's Kerberos. Passwords
are never sent over networks; instead encrypted tickets are obtained from an
authentication server. It doesn't have the concept of `set UID' programs.
The file server doesn't run user programs, and except at its own console, it
doesn't allow access to protected files except by authenticated owners. The
concept of a special `root' user is gone.

Subject: How does it communicate with other systems?

The distribution includes a u9fs server that runs on Unix-compatible systems
and understands the native Plan 9 remote file protocol, so that file systems
of Unix machines may be imported into Plan 9. It also includes an
NFS-compatible server that runs on Plan 9, so that Plan 9 file systems may
be accessed from other systems that support NFS. It includes the full suite
of Internet protocols (telnet, rlogin, ftp).

Subject: Is it suitable for real time control?

No, it is not. It is a general purpose system, without an interrupt priority
scheme or real scheduler.

Installation and Administration:

Subject: What PC hardware works well with Plan 9?

If you don't want to spend time fiddling with and swapping PC hardware, you
may prefer to buy hardware that is in use within Bell Labs, see Supported PC
Hardware.

The biggest source of problems is getting the VGA configured on PC
terminals. For best performance and functionality, it is recommended that
you use a card that can run at 16 bits per pixel or greater, and with
hardware-accelerated graphics support; currently only the Mach64 and S3
Virge are supported to this extent. The best buy today seems to be the ATI
8Meg Xpert 98 cards.

For a cpuserver or fileserver any old card that can do CGA is fine.

Subject: How do I Install Plan 9?

The installation is designed to be run from a PC.
  1. Read "Supported PC hardware" to ensure your PC meets the requirements.
  2. Back up your system.
  3. Make sure you've backed up your system.
  4. Read "Installing the Plan 9 Distribution" at URL
     http://plan9.bell-labs.com/sys/doc/install.html
  5. Check the errata page at
     http://plan9.bell-labs.com/plan9dist/errata.html for problems and fixes
     found since the distribution was made.
  6. Here are some more questions that have been answered on the 9fans list:
     IP configuration
          ndb/cs will set the sysname if you setup an appropriate entry in
          /lib/ndb/local. You must specify an 'ether=' entry, and the
          address should be all lower case. If all goes well, ip/ipconfig
          will then configure IP.
     Name Service
          If you have having problems, first check that ndb/dns is running.
          It needs to be started in /rc/bin/termrc or /rc/bin/cpurc. Also
          note that only fully qualified names are supported, and there
          isn't a separate resolver.
     Binding and Mounting Devices
          Note that # is the shell comment character, so you must enclose it
          in single quotes. For example: bind -a '#R6' /dev
     Auth Server
          When booting a cpuserver without an auth server, if you give
          0.1.0.0 as the auth server address instead the cpu server's own
          address, you won't have to wait for it to timeout.

Subject: It doesn't work for me, how should I troubleshoot?

If you are having having SCSI problems, check your cables and terminators.
this is generally the single largest cause of weird SCSI problems. Active
terminators are best. If you run external cables you need to get high
quality ones. Also, don't crank of the speed on the card.

Subject: How do I setup the VGA?

If the VGA doesn't work, read the last couple sections (Setting Up and
Troubleshooting) of "Installing the Plan 9 Distribution"

You will have to find out more about the card so you can configure it. The
relevant manuals are: vga(3), vgadb(6), vga(8), and 9load(8).

If your VGA card is not supported, you could try
http://mapage.noos.fr/philippe.anel/ for Matrox G200 G400 and G450 drivers
by Philippe Anel or see http://plan9.bell-labs.com/wiki/plan9/39/index.html
for Riva TNT drivers by Nicholas Waples.

Put
debug=1
(1st line) in plan9.ini and try again. It may not be of much help but will
allow to ask a more specific question.

Subject: How do I control the services that start at boot time?

This is controlled by shell scripts, that are roughly equivalent to the
/etc/rc files on Unix:
/rc/bin/termrc for terminals
/rc/bin/cpurc for cpu servers

See cpurc(8) for more details.

Subject: How do I setup network services?

For UDP services, you must start them up in the appropriate cpurc(8) file.
For TCP or IL services, you must use the listen(8) daemon.

Subject: How do I shutdown my terminal/cpuserver system?

If you booted from a real fileserver, you can just turn it off.

If you are using kfs, you must halt the disks manually by typing
disk/kfscmd halt
at a prompt and waiting for ``kfs: file system halted'' to appear on the
screen.

Not doing this means the disk might not be in a consistent state or modified
data might not have been written out yet; not halting the disk forces the
long wait at the ``kfs...'' when you boot the next time while kfs checks the
disk.

Subject: How do I reboot my system?

The system can be rebooted by typing ^T^Tr (two control-T's followed by
'r'). Cpu servers can be rebooted by typing ^P on the console. See the
cons(3) manual for more details.

General Information:

Subject: Where did the name come from?

It was chosen in the Bell Labs tradition of selecting names that make
marketeers wince. The developers also wished to pay homage to the famous
film, "Plan 9 From Outer Space".

Subject: How can I Obtain Plan 9?

The Plan 9 release is available for free download at
http://plan9.bell-labs.com/plan9dist/download.html
It includes source of the kernel, libraries, and commands for all supported
architectures. It also includes complete binaries for the x86 architecture.

Subject: How can I get involved?

The best way to learn about the system is to write something that other
people in the Plan 9 user community could use, or to port the system to new
platforms.

Subject: Where can I get more detailed technical information?

The Bell Labs site plan9.bell-labs.com stores a wealth of information about
the system.
The manual pages are at http://plan9.bell-labs.com/sys/man/
For auxiliary documentation, see http://plan9.bell-labs.com/sys/doc/
A Plan 9 wiki is maintained by enthusiasts at
http://plan9.bell-labs.com/wiki/plan9/1/

Subject: Are there any Plan 9 user groups?

There is one in Austin, Texas. See
http://einstein.ssz.com/hangar18/index.html It's open to anyone, even if you
don't live in Austin.

Subject: Is the cross product of two vectors a vector?

No, it is not, and the fact that people treat it as one is the problem. The
*geometric object* that is the closest thing to the c.p. is a skew tensor
(practically the same as wedge product), which (only) in 3D has Cartesian
components that resemble those of a vector, *except* that this pseudo-vector
*flips* under reflection (unlike a genuine vector). Unfortunately,
physicists have been trained to express Maxwell's laws as a relationship
between a genuine vector (field) and a c.p., which means that that
expression of those laws *changes* under reflection, something that
physicists are *not* taught and which appears to have been overlooked in the
analysis of the (nonconservation of) parity experiment.
I had to quote Douglas Gwyn verbatim on this, because I have no *ucking clue
what he's talking about -- Steve

Subject: Can I emulate Plan 9 under Unix?

Several Plan 9 inspired applications are available for Unix systems.

The sam editor is available from
ftp://netlib.bell-labs.com/netlib/research/sam.shar.gz

There is also a Windows 95/NT version of Sam, currently distributed in
binary form only, available from
ftp://netlib.bell-labs.com/netlib/research/sam.exe Comments and bug reports
can be sent to seanq@research.bell-labs.com

Wily is an acme lookalike by Gary Capell. See
http://www.cs.yorku.ca/~oz/wily/

Mark H. Wilkinson's 9libs package of Plan 9 emulation libraries for Unix is
probably the easiest-to-install distribution of sam and wily. You can get it
from http://www.netlib.org/research/9libs/

A free re-implementation of the rc shell is available from
http://www.star.le.ac.uk/~tjg/rc/

9wm is David Hogan's lightweight X window manager in the style of 8½/rio. It
was once available from ftp://ftp.cs.su.oz.au/dhog/9wm/ but is being moved
to a new home. Comments to dhog@plan9.bell-labs.com

9term is an 8½ terminal emulator by Matty Farrow, matty@cs.su.oz.au,
available from ftp://ftp.cs.su.oz.au/matty/unicode/ In the same directory,
you'll find a collection of Unicode fonts that can be used with 9term, sam
and wily.

9menu is a simple program by Arnold Robbins, arnold@skeeve.com, that allows
you to create X menus from the shell, where each menu item will run a
command. 9menu is intended for use with 9wm, but can be used with any other
window manager. It is available from
ftp://ftp.freefriends.org/arnold/Source/9menu-1.5.shar.gz

Copyright © 1995 Lucent Technologies. All rights reserved.
-- 
Steve Kotsopoulos		steve@fywss.com


^ permalink raw reply	[flat|nested] 19+ messages in thread

* [9fans] Plan 9 from Bell Labs - Frequently Asked Questions [FAQ]
@ 2002-01-05  4:53 Steve Kotsopoulos
  0 siblings, 0 replies; 19+ messages in thread
From: Steve Kotsopoulos @ 2002-01-05  4:53 UTC (permalink / raw)
  To: 9fans

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 22931 bytes --]

Archive-name: comp-os/plan9-faq
Last-modified: Jan  4, 2002
Posting-Frequency: monthly
URL: http://www.fywss.com/plan9/plan9faq.html

This document answers frequently asked questions about the third edition of
the Plan 9 operating system.

The following sections are new or modified recently:

   * How do I cut and paste with a 2 button mouse?
   * Are there any Plan 9 user groups?
   * Where can I get more Plan 9 software?
   * How do I setup the VGA?
   * How do I shutdown my terminal/cpuserver system?
   * How can I get more detailed technical information?

A hypertext version of this FAQ is available on my Plan 9 web page, URL
http://www.fywss.com/plan9/

Other sources of information include the newsgroup comp.os.plan9, which is
bidirectionally gatewayed to the 9fans mailing list (browse archives at
https://lists.cse.psu.edu/archives/9fans/ and
http://bio.cse.psu.edu/~schwartz/9fans/, or mail 9fans-request@cse.psu.edu
to subscribe) and of course the Plan 9 homepage at Bell Labs, URL
http://plan9.bell-labs.com/plan9dist/

If you'd like to discuss the Plan9 license, send mail to
plan9-license-discussions@plan9.bell-labs.com. Mailing to this list
subscribes you to the list.

Please forward any comments or suggestions regarding this FAQ to
steve@fywss.com
  ------------------------------------------------------------------------

Introduction:

   * What is Plan 9?
   * What is in the latest Plan9 release?
   * What is its relation to other operating systems?
   * What are its key ideas?
   * What are the advantages to this approach?

Hardware and Software:

   * What platforms does it run on?
   * Is anyone working on a port for my system?
   * Does it support symmetric multiprocessing?
   * What about applications and tools?
   * Is there a fortran compiler?
   * Where can I get more Plan 9 software?
   * Is it object-oriented?
   * What about application portability?
   * What resources does it need?
   * What GUIs does it support?
   * How do I cut and paste with a 2 button mouse?
   * Does Plan 9 have any Unix-like terminal emulators?
   * What character set does it use?
   * What about security and user authentication?
   * How does it communicate with other systems?
   * Is it suitable for real time control?

Installation and Administration:

   * What PC hardware works well with Plan 9?
   * How do I Install Plan 9?
   * It doesn't work for me, how should I troubleshoot?
   * How do I setup the VGA?
   * How do I control the services that start at boot time?
   * How do I setup network services?
   * How do I shutdown my terminal/cpuserver system?
   * How do I reboot my system?

General Information:

   * Where did the name come from?
   * How can I Obtain Plan 9?
   * How can I get involved?
   * How can I get more detailed technical information?
   * Can I emulate Plan 9 under Unix?
   * Are there any Plan 9 user groups?

  ------------------------------------------------------------------------

Introduction:

Subject: What is Plan 9?

Plan 9 is a new computer operating system and associated utilities. It was
built by the Computing Science Research Center of Lucent Technologies Bell
Laboratories, the same group that developed Unix, C, and C++.

Plan 9 is a distributed system. In the most general configuration, it uses
three kinds of components: terminals that sit on users' desks, file servers
that store permanent data, and other servers that provide faster CPUs, user
authentication, and network gateways. These components are connected by
various kinds of networks, including Ethernet, specially-built fiber
networks, ordinary modem connections, and ISDN. In typical use, users
interact with applications that run either on their terminals or on CPU
servers, and the applications get their data from the file servers. The
design, however, is highly configurable; it escapes from specific models of
networked workstations and central machine service.

Subject: What is in the latest Plan9 release?

The press release for the third edition of Plan9 is at
http://www.bell-labs.com/news/2000/june/7/2.html

Among the changes in this release of Plan 9 are a revised kernel, which now
has the means to resolve ambiguous file names; an improved graphics
environment; an updated command set; and expanded libraries. The system's
creators also have installed "plumbing," a new mechanism for passing
messages between interactive programs, as part of the user interface.

The new release is available for free download under an open source
agreement. This is a significant step over previous releases.

If you'd like to browse the distribution packages before actually
installing, you'll need the tools available at
http://www.fywss.com/plan9/unix/

Subject: For History Buffs

The first edition of Plan 9 was released in 1993, and was only available to
universities.

In 1995 the second edition was available for purchase under a shrink-wrap
license.

The second edition version of this FAQ is archived at
http://www.fywss.com/plan9/plan9v2faq.html

Subject: What is its relation to other operating systems?

Plan 9 is itself an operating system; it doesn't run as an application under
another system. It was written from the ground up and doesn't include other
people's code. Although the OS's interface to applications is strongly
influenced by the approach of Unix, it's not a replacement for Unix; it is a
new design.

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.

Subject: What are the advantages to this approach?

Plan 9's approach improves generality and modularity of application design
by encouraging servers that make any kind of information appear to users and
to applications just like collections of ordinary files. Here are a few
examples.

The Plan 9 window system (called rio) is small and clean in part because its
design is centered on providing a virtual keyboard, mouse, and screen to
each of the applications running under it, while using the real keyboard,
mouse, and screen supplied by the operating system. That is - besides
creating, deleting, and arranging the windows themselves - its job is be a
server for certain resources used by its clients. As a side benefit, this
approach means that the window system can run recursively in one of its
windows, or even on another machine.

Plan 9 users do Internet FTP by starting a local program that makes all the
files on any FTP server (anywhere on the Internet) appear to be local files.
Plan 9 PC users with a DOS/Windows partition on their disk can use the files
stored there. ISO 9660 CD-ROMs and tar and cpio tapes all behave as if they
were native file systems. The complete I/O behavior and performance of any
application can be monitored by running it under a server that sees all its
interactions. The debugger can examine a program on another machine even if
it is running on a different hardware architecture.

Another example is the approach to networks. In Plan 9, each network
presents itself as a set of files for connection creation, I/O, and control.
A common semantic core for the operations is agreed upon, together with a
general server for translating human-readable addresses to network-specific
ones. As a result, applications don't care which kind of network (TCP/IP,
ISDN, modem) they are using. In fact, applications don't even know whether
the network they are using is physically attached to the machine the
application is running on: the network interface files can be imported from
another machine.

Hardware and Software:

Subject: What platforms does it run on?

The Plan 9 kernel and applications are highly portable. Plan 9 runs on four
major machine architectures: Intel 386/486/Pentium, MIPS, Alpha, and
PowerPC. Data structures and protocols are designed for distributed
computing on machines of diverse design. Except for necessarily
machine-dependent parts of the kernel, the compilers, and a few libraries,
there is a single source representation for everything.

To find out whether Plan 9 supports your hardware, read The Various Ports
and Supported PC Hardware.

Subject: Is anyone working on a port for my system?

Perhaps ... let us know.

Subject: Does it support symmetric multiprocessing?

Yes. The SGI Challenge series of multiprocessors and multi processor
Pentiums are supported. Be warned that Intel-based SMP systems are
notoriously fickle in conforming to the Multiprocessor Specification and
often some head-scratching is required when things don't just work.

The system has been run on machines ranging from dual Pentium 90's up to
quad Xeon 400's and the 8 processor Pentium Pro Axil system. By default, as
it comes out the box, the release has SMP operation disabled by an option in
the plan9.ini config file.

Subject: What about applications and tools?

Plan 9 comes with its own compilers for C and other languages, together with
all the commands and program-development tools originally pioneered in the
Unix environment. It also provides newly designed software. Acid is a
programmable debugger that understands multiple-process programs, and the
programs it is debugging may be running on a hardware platform different
from its own. Acme is a new user interface in which any word on the screen
can be interpreted as a command by clicking on it, and any string can
specify a file to be displayed.

Subject: Is there a fortran compiler?

No, plan9 does not have a fortran compiler. If you have fortran programs you
want to run, you can try using the f2c (fortran to C) converter available at
ftp://netlib.bell-labs.com/netlib/f2c/

Subject: Where can I get more Plan 9 software?

     Charles Forsyth has the original and still the longest list of software
          http://www.caldo.demon.co.uk/plan9/soft/index.html
     Russ Cox has cd players, mp3 player and a wide variety of other small
     tools
          http://www.eecs.harvard.edu/~rsc/plan9.html
     Tad Hunt can help you balance your bank account, boot your laptop and
     listen to music
          http://csh-east.org/~tad/plan9/
     Nemo (Francisco Ballesteros) has a collection of drivers and utilities
          http://plan9.escet.urjc.es/usr/nemo/9.html
     Kenji Arisawa's ftp site
          ftp://plan9.aichi-u.ac.jp/
     Boyd Roberts writes rc scripts when not ranting on 9fans
          http://mapage.noos.fr/~repo/
     There's a Python port at
          http://csociety-ftp.ecn.purdue.edu/pub/plan9/python/
     The wiki User-contributed Software page is useful too
          http://plan9.bell-labs.com/wiki/plan9/35/index.html

Subject: Is it object-oriented?

No, not in the conventional sense. It is written in a strict dialect of
ISO/ANSI C. In a wider sense, its general design of making all its `objects'
look like files to which one talks in a well-defined protocol shows a
related approach.

Subject: What about application portability?

Plan 9 comes with a library that makes it easy to import POSIX-conforming
applications. There is also a library that emulates the Berkeley socket
interface.

Subject: What resources does it need?

As might be expected, the answer depends on what you want to do. The kernel,
the window system, and the basic applications will run comfortably on a PC
with 8MB of memory.

On the other hand, the system can grow. The installation at Bell
Laboratories includes multiprocessor SGI Challenge and Pentium machines as
CPU servers, and a 350GB Sony WORM disk jukebox for the file server.

Subject: What GUIs does it support?

The standard interface doesn't use icons or drag-n-drop; Plan 9 people tend
to be text-oriented. But the window system, the editor, and the general feel
are very mousy, very point-and-click: Plan 9 windows are much more than a
bunch of glass TTYs. The system supports the graphics primitives and
libraries of basic software for building GUIs.
A screenshot is available at
http://plan9.bell-labs.com/plan9dist/screenshot.html

Subject: How do I cut and paste with a 2 button mouse?

Plan 9 really works well only with a three-button mouse. In the meantime,
Shift-Right-button will simulate a middle button, but that is inadequate for
Acme's chording.

Subject: Does Plan 9 have any Unix-like terminal emulators?

The Plan 9 window system doesn't obey any inline cursor controls, since none
of the native applications use cursor-addressing. All cursor control in rio,
acme and sam is via the mouse.

To see some excellent articles on this important and divisive user interface
issue read http://www.asktog.com/readerMail/1999-12ReaderMail.html.

If you want to get from Plan9 to Unix systems, you can run /bin/vt in one of
your windows, telnet/rlogin to Unix, and set the term/TERM variable
accordingly on the Unix end. See vt(1) for more details; note that vt(1) can
emulate a VT100 VT220 or ANSI terminal.

Subject: What character set does it use?

The character set is Unicode, the 16-bit set unified with the ISO 10646
standard for representing languages used throughout the world. The system
and its utilities support Unicode using a byte-stream representation (called
UTF-8) that is compatible with ASCII. On Plan 9, one may grep for Cyrillic
strings in a file with a Japanese name and see the results appear correctly
on the terminal.

Subject: What about security and user authentication?

Plan 9's authentication design is akin to that of MIT's Kerberos. Passwords
are never sent over networks; instead encrypted tickets are obtained from an
authentication server. It doesn't have the concept of `set UID' programs.
The file server doesn't run user programs, and except at its own console, it
doesn't allow access to protected files except by authenticated owners. The
concept of a special `root' user is gone.

Subject: How does it communicate with other systems?

The distribution includes a u9fs server that runs on Unix-compatible systems
and understands the native Plan 9 remote file protocol, so that file systems
of Unix machines may be imported into Plan 9. It also includes an
NFS-compatible server that runs on Plan 9, so that Plan 9 file systems may
be accessed from other systems that support NFS. It includes the full suite
of Internet protocols (telnet, rlogin, ftp).

Subject: Is it suitable for real time control?

No, it is not. It is a general purpose system, without an interrupt priority
scheme or real scheduler.

Installation and Administration:

Subject: What PC hardware works well with Plan 9?

If you don't want to spend time fiddling with and swapping PC hardware, you
may prefer to buy hardware that is in use within Bell Labs, see Supported PC
Hardware.

The biggest source of problems is getting the VGA configured on PC
terminals. For best performance and functionality, it is recommended that
you use a card that can run at 16 bits per pixel or greater, and with
hardware-accelerated graphics support; currently only the Mach64 and S3
Virge are supported to this extent. The best buy today seems to be the ATI
8Meg Xpert 98 cards.

For a cpuserver or fileserver any old card that can do CGA is fine.

Subject: How do I Install Plan 9?

The installation is designed to be run from a PC.
  1. Read "Supported PC hardware" to ensure your PC meets the requirements.
  2. Back up your system.
  3. Make sure you've backed up your system.
  4. Read "Installing the Plan 9 Distribution" at URL
     http://plan9.bell-labs.com/sys/doc/install.html
  5. Check the errata page at
     http://plan9.bell-labs.com/plan9dist/errata.html for problems and fixes
     found since the distribution was made.
  6. Here are some more questions that have been answered on the 9fans list:
     IP configuration
          ndb/cs will set the sysname if you setup an appropriate entry in
          /lib/ndb/local. You must specify an 'ether=' entry, and the
          address should be all lower case. If all goes well, ip/ipconfig
          will then configure IP.
     Name Service
          If you have having problems, first check that ndb/dns is running.
          It needs to be started in /rc/bin/termrc or /rc/bin/cpurc. Also
          note that only fully qualified names are supported, and there
          isn't a separate resolver.
     Binding and Mounting Devices
          Note that # is the shell comment character, so you must enclose it
          in single quotes. For example: bind -a '#R6' /dev
     Auth Server
          When booting a cpuserver without an auth server, if you give
          0.1.0.0 as the auth server address instead the cpu server's own
          address, you won't have to wait for it to timeout.

Subject: It doesn't work for me, how should I troubleshoot?

If you are having having SCSI problems, check your cables and terminators.
this is generally the single largest cause of weird SCSI problems. Active
terminators are best. If you run external cables you need to get high
quality ones. Also, don't crank of the speed on the card.

Subject: How do I setup the VGA?

If the VGA doesn't work, read the last couple sections (Setting Up and
Troubleshooting) of "Installing the Plan 9 Distribution"

You will have to find out more about the card so you can configure it. The
relevant manuals are: vga(3), vgadb(6), vga(8), and 9load(8).

If your VGA card is not supported, you could try
http://mapage.noos.fr/philippe.anel/ for Matrox G200 G400 and G450 drivers
by Philippe Anel or see http://plan9.bell-labs.com/wiki/plan9/39/index.html
for Riva TNT drivers by Nicholas Waples.

Put
debug=1
(1st line) in plan9.ini and try again. It may not be of much help but will
allow to ask a more specific question.

Subject: How do I control the services that start at boot time?

This is controlled by shell scripts, that are roughly equivalent to the
/etc/rc files on Unix:
/rc/bin/termrc for terminals
/rc/bin/cpurc for cpu servers

See cpurc(8) for more details.

Subject: How do I setup network services?

For UDP services, you must start them up in the appropriate cpurc(8) file.
For TCP or IL services, you must use the listen(8) daemon.

Subject: How do I shutdown my terminal/cpuserver system?

If you booted from a real fileserver, you can just turn it off.

If you are using kfs, you must halt the disks manually by typing
disk/kfscmd halt
at a prompt and waiting for ``kfs: file system halted'' to appear on the
screen.

Not doing this means the disk might not be in a consistent state or modified
data might not have been written out yet; not halting the disk forces the
long wait at the ``kfs...'' when you boot the next time while kfs checks the
disk.

Subject: How do I reboot my system?

The system can be rebooted by typing ^T^Tr (two control-T's followed by
'r'). Cpu servers can be rebooted by typing ^P on the console. See the
cons(3) manual for more details.

General Information:

Subject: Where did the name come from?

It was chosen in the Bell Labs tradition of selecting names that make
marketeers wince. The developers also wished to pay homage to the famous
film, "Plan 9 From Outer Space".

Subject: How can I Obtain Plan 9?

The Plan 9 release is available for free download at
http://plan9.bell-labs.com/plan9dist/download.html
It includes source of the kernel, libraries, and commands for all supported
architectures. It also includes complete binaries for the x86 architecture.

Subject: How can I get involved?

The best way to learn about the system is to write something that other
people in the Plan 9 user community could use, or to port the system to new
platforms.

If anyone would like their projects listed here, let me know. This should
help prevent duplication of effort, and increase involvment from the 'net
community.

Subject: How can I get more detailed technical information?

The Bell Labs site plan9.bell-labs.com stores a wealth of information about
the system.
The manual pages are at http://plan9.bell-labs.com/sys/man/
For auxiliary documentation, see http://plan9.bell-labs.com/sys/doc/
A Plan 9 wiki is maintained by enthusiasts at
http://plan9.bell-labs.com/wiki/plan9/1/

Subject: Are there any Plan 9 user groups?

There is one in Austin, Texas. See
http://einstein.ssz.com/hangar18/index.html It's open to anyone, even if you
don't live in Austin.

Subject: Can I emulate Plan 9 under Unix?

Several Plan 9 inspired applications are available for Unix systems.

The sam editor is available from
ftp://netlib.bell-labs.com/netlib/research/sam.shar.gz

There is also a Windows 95/NT version of Sam, currently distributed in
binary form only, available from
ftp://netlib.bell-labs.com/netlib/research/sam.exe Comments and bug reports
can be sent to seanq@research.bell-labs.com

A free re-implementation of the rc shell is available from
ftp://ftp.white.toronto.edu/pub/rc/

Wily is an acme lookalike by Gary Capell. See
http://www.cs.yorku.ca/~oz/wily/

9wm is David Hogan's lightweight X window manager in the style of 8�. It is
available from ftp://ftp.cs.su.oz.au/dhog/9wm/ Comments to dhog@cs.su.oz.au

9term is an 8� terminal emulator by Matty Farrow, matty@cs.su.oz.au,
available from ftp://ftp.cs.su.oz.au/matty/unicode/ In the same directory,
you'll find a collection of Unicode fonts that can be used with 9term, sam
and wily.

9menu is a simple program by Arnold Robbins, arnold@skeeve.com, that allows
you to create X menus from the shell, where each menu item will run a
command. 9menu is intended for use with 9wm, but can be used with any other
window manager. It is available from
ftp://ftp.freefriends.org/arnold/Source/9menu-1.5.shar.gz

Copyright � 1995 Lucent Technologies. All rights reserved.
--
Steve Kotsopoulos		steve@fywss.com


^ permalink raw reply	[flat|nested] 19+ messages in thread

* [9fans] Plan 9 from Bell Labs - Frequently Asked Questions [FAQ]
@ 2001-11-05 15:10 Steve Kotsopoulos
  0 siblings, 0 replies; 19+ messages in thread
From: Steve Kotsopoulos @ 2001-11-05 15:10 UTC (permalink / raw)
  To: 9fans

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 22144 bytes --]

Archive-name: comp-os/plan9-faq
Last-modified: Oct 3, 2001
Posting-Frequency: monthly
URL: http://www.fywss.com/plan9/plan9faq.html

This document answers frequently asked questions about the third edition of
the Plan 9 operating system.

The following sections are new or modified recently:

   * Where can I get more Plan 9 software?
   * How do I setup the VGA?
   * How do I shutdown my terminal/cpuserver system?
   * How can I get more detailed technical information?

A hypertext version of this FAQ is available on my Plan 9 web page, URL
http://www.fywss.com/plan9/

Other sources of information include the newsgroup comp.os.plan9, which is
bidirectionally gatewayed to the 9fans mailing list (browse archives at
http://lists.cse.psu.edu/archives/9fans/, or mail 9fans-request@cse.psu.edu
to subscribe) and of course the Plan 9 homepage at Bell Labs, URL
http://plan9.bell-labs.com/plan9dist/

Please forward any comments or suggestions regarding this FAQ to
steve@fywss.com
  ------------------------------------------------------------------------

Introduction:

   * What is Plan 9?
   * What is in the latest Plan9 release?
   * What is its relation to other operating systems?
   * What are its key ideas?
   * What are the advantages to this approach?

Hardware and Software:

   * What platforms does it run on?
   * Is anyone working on a port for my system?
   * Does it support symmetric multiprocessing?
   * What about applications and tools?
   * Is there a fortran compiler?
   * Where can I get more Plan 9 software?
   * Is it object-oriented?
   * What about application portability?
   * What resources does it need?
   * What GUIs does it support?
   * Does Plan 9 have any Unix-like terminal emulators?
   * What character set does it use?
   * What about security and user authentication?
   * How does it communicate with other systems?
   * Is it suitable for real time control?

Installation and Administration:

   * What PC hardware works well with Plan 9?
   * How do I Install Plan 9?
   * It doesn't work for me, how should I troubleshoot?
   * How do I setup the VGA?
   * How do I control the services that start at boot time?
   * How do I setup network services?
   * How do I shutdown my terminal/cpuserver system?
   * How do I reboot my system?

General Information:

   * Where did the name come from?
   * How can I Obtain Plan 9?
   * How can I get involved?
   * How can I get more detailed technical information?
   * Can I emulate Plan 9 under Unix?

  ------------------------------------------------------------------------

Introduction:

Subject: What is Plan 9?

Plan 9 is a new computer operating system and associated utilities. It was
built by the Computing Science Research Center of Lucent Technologies Bell
Laboratories, the same group that developed Unix, C, and C++.

Plan 9 is a distributed system. In the most general configuration, it uses
three kinds of components: terminals that sit on users' desks, file servers
that store permanent data, and other servers that provide faster CPUs, user
authentication, and network gateways. These components are connected by
various kinds of networks, including Ethernet, specially-built fiber
networks, ordinary modem connections, and ISDN. In typical use, users
interact with applications that run either on their terminals or on CPU
servers, and the applications get their data from the file servers. The
design, however, is highly configurable; it escapes from specific models of
networked workstations and central machine service.

Subject: What is in the latest Plan9 release?

The press release for the third edition of Plan9 is at
http://www.bell-labs.com/news/2000/june/7/2.html

Among the changes in this release of Plan 9 are a revised kernel, which now
has the means to resolve ambiguous file names; an improved graphics
environment; an updated command set; and expanded libraries. The system's
creators also have installed "plumbing," a new mechanism for passing
messages between interactive programs, as part of the user interface.

The new release is available for free download under an open source
agreement. This is a significant step over previous releases.

If you'd like to browse the distribution packages before actually
installing, you'll need the tools available at
http://www.fywss.com/plan9/unix/

Subject: For History Buffs

The first edition of Plan 9 was released in 1993, and was only available to
universities.

In 1995 the second edition was available for purchase under a shrink-wrap
license.

The second edition version of this FAQ is archived at
http://www.fywss.com/plan9/plan9v2faq.html

Subject: What is its relation to other operating systems?

Plan 9 is itself an operating system; it doesn't run as an application under
another system. It was written from the ground up and doesn't include other
people's code. Although the OS's interface to applications is strongly
influenced by the approach of Unix, it's not a replacement for Unix; it is a
new design.

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.

Subject: What are the advantages to this approach?

Plan 9's approach improves generality and modularity of application design
by encouraging servers that make any kind of information appear to users and
to applications just like collections of ordinary files. Here are a few
examples.

The Plan 9 window system (called rio) is small and clean in part because its
design is centered on providing a virtual keyboard, mouse, and screen to
each of the applications running under it, while using the real keyboard,
mouse, and screen supplied by the operating system. That is - besides
creating, deleting, and arranging the windows themselves - its job is be a
server for certain resources used by its clients. As a side benefit, this
approach means that the window system can run recursively in one of its
windows, or even on another machine.

Plan 9 users do Internet FTP by starting a local program that makes all the
files on any FTP server (anywhere on the Internet) appear to be local files.
Plan 9 PC users with a DOS/Windows partition on their disk can use the files
stored there. ISO 9660 CD-ROMs and tar and cpio tapes all behave as if they
were native file systems. The complete I/O behavior and performance of any
application can be monitored by running it under a server that sees all its
interactions. The debugger can examine a program on another machine even if
it is running on a different hardware architecture.

Another example is the approach to networks. In Plan 9, each network
presents itself as a set of files for connection creation, I/O, and control.
A common semantic core for the operations is agreed upon, together with a
general server for translating human-readable addresses to network-specific
ones. As a result, applications don't care which kind of network (TCP/IP,
ISDN, modem) they are using. In fact, applications don't even know whether
the network they are using is physically attached to the machine the
application is running on: the network interface files can be imported from
another machine.

Hardware and Software:

Subject: What platforms does it run on?

The Plan 9 kernel and applications are highly portable. Plan 9 runs on four
major machine architectures: Intel 386/486/Pentium, MIPS, Alpha, and
PowerPC. Data structures and protocols are designed for distributed
computing on machines of diverse design. Except for necessarily
machine-dependent parts of the kernel, the compilers, and a few libraries,
there is a single source representation for everything.

To find out whether Plan 9 supports your hardware, read The Various Ports
and Supported PC Hardware.

Subject: Is anyone working on a port for my system?

Perhaps ... let us know.

Subject: Does it support symmetric multiprocessing?

Yes. The SGI Challenge series of multiprocessors and multi processor
Pentiums are supported. Be warned that Intel-based SMP systems are
notoriously fickle in conforming to the Multiprocessor Specification and
often some head-scratching is required when things don't just work.

The system has been run on machines ranging from dual Pentium 90's up to
quad Xeon 400's and the 8 processor Pentium Pro Axil system. By default, as
it comes out the box, the release has SMP operation disabled by an option in
the plan9.ini config file.

Subject: What about applications and tools?

Plan 9 comes with its own compilers for C and other languages, together with
all the commands and program-development tools originally pioneered in the
Unix environment. It also provides newly designed software. Acid is a
programmable debugger that understands multiple-process programs, and the
programs it is debugging may be running on a hardware platform different
from its own. Acme is a new user interface in which any word on the screen
can be interpreted as a command by clicking on it, and any string can
specify a file to be displayed.

Subject: Is there a fortran compiler?

No, plan9 does not have a fortran compiler. If you have fortran programs you
want to run, you can try using the f2c (fortran to C) converter available at
ftp://netlib.bell-labs.com/netlib/f2c/

Subject: Where can I get more Plan 9 software?

     Charles Forsyth has the original and still the longest list of software
          http://www.caldo.demon.co.uk/plan9/soft/index.html
     Russ Cox has cd players, mp3 player and a wide variety of other small
     tools
          http://www.eecs.harvard.edu/~rsc/plan9.html
     Tad Hunt can help you balance your bank account, boot your laptop and
     listen to music
          http://csh-east.org/~tad/plan9/
     Nemo (Francisco Ballesteros) has a collection of drivers and utilities
          http://plan9.escet.urjc.es/usr/nemo/9.html
     Kenji Arisawa's ftp site
          ftp://plan9.aichi-u.ac.jp/
     Boyd Roberts writes rc scripts when not ranting on 9fans
          http://mapage.noos.fr/~repo/
     There's a Python port at
          http://csociety-ftp.ecn.purdue.edu/pub/plan9/python/
     The wiki User-contributed Software page is useful too
          http://plan9.bell-labs.com/wiki/plan9/35/index.html

Subject: Is it object-oriented?

No, not in the conventional sense. It is written in a strict dialect of
ISO/ANSI C. In a wider sense, its general design of making all its `objects'
look like files to which one talks in a well-defined protocol shows a
related approach.

Subject: What about application portability?

Plan 9 comes with a library that makes it easy to import POSIX-conforming
applications. There is also a library that emulates the Berkeley socket
interface.

Subject: What resources does it need?

As might be expected, the answer depends on what you want to do. The kernel,
the window system, and the basic applications will run comfortably on a PC
with 8MB of memory.

On the other hand, the system can grow. The installation at Bell
Laboratories includes multiprocessor SGI Challenge and Pentium machines as
CPU servers, and a 350GB Sony WORM disk jukebox for the file server.

Subject: What GUIs does it support?

The standard interface doesn't use icons or drag-n-drop; Plan 9 people tend
to be text-oriented. But the window system, the editor, and the general feel
are very mousy, very point-and-click: Plan 9 windows are much more than a
bunch of glass TTYs. The system supports the graphics primitives and
libraries of basic software for building GUIs.
A screenshot is available at
http://plan9.bell-labs.com/plan9dist/screenshot.html

Subject: Does Plan 9 have any Unix-like terminal emulators?

The Plan 9 window system doesn't obey any inline cursor controls, since none
of the native applications use cursor-addressing. All cursor control in rio,
acme and sam is via the mouse.

To see some excellent articles on this important and divisive user interface
issue read http://www.asktog.com/readerMail/1999-12ReaderMail.html.

If you want to get from Plan9 to Unix systems, you can run /bin/vt in one of
your windows, telnet/rlogin to Unix, and set the term/TERM variable
accordingly on the Unix end. See vt(1) for more details; note that vt(1) can
emulate a VT100 VT220 or ANSI terminal.

Subject: What character set does it use?

The character set is Unicode, the 16-bit set unified with the ISO 10646
standard for representing languages used throughout the world. The system
and its utilities support Unicode using a byte-stream representation (called
UTF-8) that is compatible with ASCII. On Plan 9, one may grep for Cyrillic
strings in a file with a Japanese name and see the results appear correctly
on the terminal.

Subject: What about security and user authentication?

Plan 9's authentication design is akin to that of MIT's Kerberos. Passwords
are never sent over networks; instead encrypted tickets are obtained from an
authentication server. It doesn't have the concept of `set UID' programs.
The file server doesn't run user programs, and except at its own console, it
doesn't allow access to protected files except by authenticated owners. The
concept of a special `root' user is gone.

Subject: How does it communicate with other systems?

The distribution includes a u9fs server that runs on Unix-compatible systems
and understands the native Plan 9 remote file protocol, so that file systems
of Unix machines may be imported into Plan 9. It also includes an
NFS-compatible server that runs on Plan 9, so that Plan 9 file systems may
be accessed from other systems that support NFS. It includes the full suite
of Internet protocols (telnet, rlogin, ftp).

Subject: Is it suitable for real time control?

No, it is not. It is a general purpose system, without an interrupt priority
scheme or real scheduler.

Installation and Administration:

Subject: What PC hardware works well with Plan 9?

If you don't want to spend time fiddling with and swapping PC hardware, you
may prefer to buy hardware that is in use within Bell Labs, see Supported PC
Hardware.

The biggest source of problems is getting the VGA configured on PC
terminals. For best performance and functionality, it is recommended that
you use a card that can run at 16 bits per pixel or greater, and with
hardware-accelerated graphics support; currently only the Mach64 and S3
Virge are supported to this extent. The best buy today seems to be the ATI
8Meg Xpert 98 cards.

For a cpuserver or fileserver any old card that can do CGA is fine.

Subject: How do I Install Plan 9?

The installation is designed to be run from a PC.
  1. Read "Supported PC hardware" to ensure your PC meets the requirements.
  2. Back up your system.
  3. Make sure you've backed up your system.
  4. Read "Installing the Plan 9 Distribution" at URL
     http://plan9.bell-labs.com/sys/doc/install.html
  5. Check the errata page at
     http://plan9.bell-labs.com/plan9dist/errata.html for problems and fixes
     found since the distribution was made.
  6. Here are some more questions that have been answered on the 9fans list:
     IP configuration
          ndb/cs will set the sysname if you setup an appropriate entry in
          /lib/ndb/local. You must specify an 'ether=' entry, and the
          address should be all lower case. If all goes well, ip/ipconfig
          will then configure IP.
     Name Service
          If you have having problems, first check that ndb/dns is running.
          It needs to be started in /rc/bin/termrc or /rc/bin/cpurc. Also
          note that only fully qualified names are supported, and there
          isn't a separate resolver.
     Binding and Mounting Devices
          Note that # is the shell comment character, so you must enclose it
          in single quotes. For example: bind -a '#R6' /dev
     Auth Server
          When booting a cpuserver without an auth server, if you give
          0.1.0.0 as the auth server address instead the cpu server's own
          address, you won't have to wait for it to timeout.

Subject: It doesn't work for me, how should I troubleshoot?

If you are having having SCSI problems, check your cables and terminators.
this is generally the single largest cause of weird SCSI problems. Active
terminators are best. If you run external cables you need to get high
quality ones. Also, don't crank of the speed on the card.

Subject: How do I setup the VGA?

If the VGA doesn't work, read the last couple sections (Setting Up and
Troubleshooting) of "Installing the Plan 9 Distribution"

You will have to find out more about the card so you can configure it. The
relevant manuals are: vga(3), vgadb(6), vga(8), and 9load(8).

If your VGA card is not supported, you could try
http://mapage.noos.fr/philippe.anel/ for Matrox G200 G400 and G450 drivers
by Philippe Anel or see http://plan9.bell-labs.com/wiki/plan9/39/index.html
for Riva TNT drivers by Nicholas Waples.

Put
debug=1
(1st line) in plan9.ini and try again. It may not be of much help but will
allow to ask a more specific question.

Subject: How do I control the services that start at boot time?

This is controlled by shell scripts, that are roughly equivalent to the
/etc/rc files on Unix:
/rc/bin/termrc for terminals
/rc/bin/cpurc for cpu servers

See cpurc(8) for more details.

Subject: How do I setup network services?

For UDP services, you must start them up in the appropriate cpurc(8) file.
For TCP or IL services, you must use the listen(8) daemon.

Subject: How do I shutdown my terminal/cpuserver system?

If you booted from a real fileserver, you can just turn it off.

If you are using kfs, you must halt the disks manually by typing
disk/kfscmd halt
at a prompt and waiting for ``kfs: file system halted'' to appear on the
screen.

Not doing this means the disk might not be in a consistent state or modified
data might not have been written out yet; not halting the disk forces the
long wait at the ``kfs...'' when you boot the next time while kfs checks the
disk.

Subject: How do I reboot my system?

The system can be rebooted by typing ^T^Tr (two control-T's followed by
'r'). Cpu servers can be rebooted by typing ^P on the console. See the
cons(3) manual for more details.

General Information:

Subject: Where did the name come from?

It was chosen in the Bell Labs tradition of selecting names that make
marketeers wince. The developers also wished to pay homage to the famous
film, "Plan 9 From Outer Space".

Subject: How can I Obtain Plan 9?

The Plan 9 release is available for free download at
http://plan9.bell-labs.com/plan9dist/download.html
It includes source of the kernel, libraries, and commands for all supported
architectures. It also includes complete binaries for the x86 architecture.

Subject: How can I get involved?

The best way to learn about the system is to write something that other
people in the Plan 9 user community could use, or to port the system to new
platforms.

If anyone would like their projects listed here, let me know. This should
help prevent duplication of effort, and increase involvment from the 'net
community.

Subject: How can I get more detailed technical information?

The Bell Labs site plan9.bell-labs.com stores a wealth of information about
the system.
The manual pages are at http://plan9.bell-labs.com/sys/man/
For auxiliary documentation, see http://plan9.bell-labs.com/sys/doc/
A Plan 9 wiki is maintained by enthusiasts at
http://plan9.bell-labs.com/wiki/plan9/1/

Subject: Can I emulate Plan 9 under Unix?

Several Plan 9 inspired applications are available for Unix systems.

The sam editor is available from
ftp://netlib.bell-labs.com/netlib/research/sam.shar.gz

There is also a Windows 95/NT version of Sam, currently distributed in
binary form only, available from
ftp://netlib.bell-labs.com/netlib/research/sam.exe Comments and bug reports
can be sent to seanq@research.bell-labs.com

A free re-implementation of the rc shell is available from
ftp://ftp.white.toronto.edu/pub/rc/

Wily is an acme lookalike by Gary Capell, gary@cs.su.oz.au. See
http://www.cs.yorku.ca/~oz/wily/

9wm is David Hogan's lightweight X window manager in the style of 8�. It is
available from ftp://ftp.cs.su.oz.au/dhog/9wm/ Comments to dhog@cs.su.oz.au

9term is an 8� terminal emulator by Matty Farrow, matty@cs.su.oz.au,
available from ftp://ftp.cs.su.oz.au/matty/unicode/ In the same directory,
you'll find a collection of Unicode fonts that can be used with 9term, sam
and wily.

9menu is a simple program by Arnold Robbins, arnold@skeeve.com, that allows
you to create X menus from the shell, where each menu item will run a
command. 9menu is intended for use with 9wm, but can be used with any other
window manager. It is available from
ftp://ftp.freefriends.org/arnold/Source/9menu-1.5.shar.gz

Copyright � 1995 Lucent Technologies. All rights reserved.
--
Steve Kotsopoulos		steve@fywss.com


^ permalink raw reply	[flat|nested] 19+ messages in thread

* [9fans] Plan 9 from Bell Labs - Frequently Asked Questions [FAQ]
@ 2001-10-04 12:41 Steve Kotsopoulos
  0 siblings, 0 replies; 19+ messages in thread
From: Steve Kotsopoulos @ 2001-10-04 12:41 UTC (permalink / raw)
  To: 9fans

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 22310 bytes --]

Archive-name: comp-os/plan9-faq
Last-modified: Oct 3, 2001
Posting-Frequency: monthly
URL: http://www.fywss.com/plan9/plan9faq.html

This document answers frequently asked questions about the third edition of
the Plan 9 operating system. It is currently being updated for the new
release, so you may encounter broken links and other oddities.

The following sections are new or modified recently:

   * Where can I get more Plan 9 software?
   * How do I setup the VGA?
   * How do I shutdown my terminal/cpuserver system?
   * How can I get more detailed technical information?

A hypertext version of this FAQ is available on my Plan 9 web page, URL
http://www.fywss.com/plan9/

Other sources of information include the newsgroup comp.os.plan9, which is
bidirectionally gatewayed to the 9fans mailing list (browse archives at
http://lists.cse.psu.edu/archives/9fans/, or mail 9fans-request@cse.psu.edu
to subscribe) and of course the Plan 9 homepage at Bell Labs, URL
http://plan9.bell-labs.com/plan9dist/

Please forward any comments or suggestions regarding this FAQ to
steve@fywss.com
  ------------------------------------------------------------------------

Introduction:

   * What is Plan 9?
   * What is in the latest Plan9 release?
   * What is its relation to other operating systems?
   * What are its key ideas?
   * What are the advantages to this approach?

Hardware and Software:

   * What platforms does it run on?
   * Is anyone working on a port for my system?
   * Does it support symmetric multiprocessing?
   * What about applications and tools?
   * Is there a fortran compiler?
   * Where can I get more Plan 9 software?
   * Is it object-oriented?
   * What about application portability?
   * What resources does it need?
   * What GUIs does it support?
   * Does Plan 9 have any Unix-like terminal emulators?
   * What character set does it use?
   * What about security and user authentication?
   * How does it communicate with other systems?
   * Is it suitable for real time control?

Installation and Administration:

   * What PC hardware works well with Plan 9?
   * How do I Install Plan 9?
   * It doesn't work for me, how should I troubleshoot?
   * How do I setup the VGA?
   * How do I control the services that start at boot time?
   * How do I setup network services?
   * How do I shutdown my terminal/cpuserver system?
   * How do I reboot my system?

General Information:

   * Where did the name come from?
   * How can I Obtain Plan 9?
   * How can I get involved?
   * How can I get more detailed technical information?
   * Can I emulate Plan 9 under Unix?

  ------------------------------------------------------------------------

Introduction:

Subject: What is Plan 9?

Plan 9 is a new computer operating system and associated utilities. It was
built by the Computing Science Research Center of Lucent Technologies Bell
Laboratories, the same group that developed Unix, C, and C++.

Plan 9 is a distributed system. In the most general configuration, it uses
three kinds of components: terminals that sit on users' desks, file servers
that store permanent data, and other servers that provide faster CPUs, user
authentication, and network gateways. These components are connected by
various kinds of networks, including Ethernet, specially-built fiber
networks, ordinary modem connections, and ISDN. In typical use, users
interact with applications that run either on their terminals or on CPU
servers, and the applications get their data from the file servers. The
design, however, is highly configurable; it escapes from specific models of
networked workstations and central machine service.

Subject: What is in the latest Plan9 release?

The press release for the third edition of Plan9 is at
http://www.bell-labs.com/news/2000/june/7/2.html

Among the changes in this release of Plan 9 are a revised kernel, which now
has the means to resolve ambiguous file names; an improved graphics
environment; an updated command set; and expanded libraries. The system's
creators also have installed "plumbing," a new mechanism for passing
messages between interactive programs, as part of the user interface.

The new release is available for free download under an open source
agreement. This is a significant step over previous releases.

If you'd like to browse the distribution packages before actually
installing, you'll need the tools available at
http://www.fywss.com/plan9/unix/

Subject: For History Buffs

The first edition of Plan 9 was released in 1993, and was only available to
universities.

In 1995 the second edition was available for purchase under a shrink-wrap
license.

The second edition version of this FAQ is archived at
http://www.fywss.com/plan9/plan9v2faq.html

Subject: What is its relation to other operating systems?

Plan 9 is itself an operating system; it doesn't run as an application under
another system. It was written from the ground up and doesn't include other
people's code. Although the OS's interface to applications is strongly
influenced by the approach of Unix, it's not a replacement for Unix; it is a
new design.

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.

Subject: What are the advantages to this approach?

Plan 9's approach improves generality and modularity of application design
by encouraging servers that make any kind of information appear to users and
to applications just like collections of ordinary files. Here are a few
examples.

The Plan 9 window system (called rio) is small and clean in part because its
design is centered on providing a virtual keyboard, mouse, and screen to
each of the applications running under it, while using the real keyboard,
mouse, and screen supplied by the operating system. That is - besides
creating, deleting, and arranging the windows themselves - its job is be a
server for certain resources used by its clients. As a side benefit, this
approach means that the window system can run recursively in one of its
windows, or even on another machine.

Plan 9 users do Internet FTP by starting a local program that makes all the
files on any FTP server (anywhere on the Internet) appear to be local files.
Plan 9 PC users with a DOS/Windows partition on their disk can use the files
stored there. ISO 9660 CD-ROMs and tar and cpio tapes all behave as if they
were native file systems. The complete I/O behavior and performance of any
application can be monitored by running it under a server that sees all its
interactions. The debugger can examine a program on another machine even if
it is running on a different hardware architecture.

Another example is the approach to networks. In Plan 9, each network
presents itself as a set of files for connection creation, I/O, and control.
A common semantic core for the operations is agreed upon, together with a
general server for translating human-readable addresses to network-specific
ones. As a result, applications don't care which kind of network (TCP/IP,
ISDN, modem) they are using. In fact, applications don't even know whether
the network they are using is physically attached to the machine the
application is running on: the network interface files can be imported from
another machine.

Hardware and Software:

Subject: What platforms does it run on?

The Plan 9 kernel and applications are highly portable. Plan 9 runs on four
major machine architectures: Intel 386/486/Pentium, MIPS, Alpha, and
PowerPC. Data structures and protocols are designed for distributed
computing on machines of diverse design. Except for necessarily
machine-dependent parts of the kernel, the compilers, and a few libraries,
there is a single source representation for everything.

To find out whether Plan 9 supports your hardware, read The Various Ports
and Supported PC Hardware.

Subject: Is anyone working on a port for my system?

Perhaps ... let us know.

Subject: Does it support symmetric multiprocessing?

Yes. The SGI Challenge series of multiprocessors and multi processor
Pentiums are supported. Be warned that Intel-based SMP systems are
notoriously fickle in conforming to the Multiprocessor Specification and
often some head-scratching is required when things don't just work.

The system has been run on machines ranging from dual Pentium 90's up to
quad Xeon 400's and the 8 processor Pentium Pro Axil system. By default, as
it comes out the box, the release has SMP operation disabled by an option in
the plan9.ini config file.

Subject: What about applications and tools?

Plan 9 comes with its own compilers for C and other languages, together with
all the commands and program-development tools originally pioneered in the
Unix environment. It also provides newly designed software. Acid is a
programmable debugger that understands multiple-process programs, and the
programs it is debugging may be running on a hardware platform different
from its own. Acme is a new user interface in which any word on the screen
can be interpreted as a command by clicking on it, and any string can
specify a file to be displayed.

Subject: Is there a fortran compiler?

No, plan9 does not have a fortran compiler. If you have fortran programs you
want to run, you can try using the f2c (fortran to C) converter available at
ftp://netlib.bell-labs.com/netlib/f2c/

Subject: Where can I get more Plan 9 software?

     Charles Forsyth has the original and still the longest list of software
          http://www.caldo.demon.co.uk/plan9/soft/index.html
     Russ Cox has cd players, mp3 player and a wide variety of other small
     tools
          http://www.eecs.harvard.edu/~rsc/plan9.html
     Tad Hunt can help you balance your bank account, boot your laptop and
     listen to music
          http://csh-east.org/~tad/plan9/
     Nemo (Francisco Ballesteros) has a collection of drivers and utilities
          http://plan9.escet.urjc.es/usr/nemo/9.html
     Kenji Arisawa's ftp site
          ftp://plan9.aichi-u.ac.jp/
     Boyd Roberts writes rc scripts when not ranting on 9fans
          http://mapage.noos.fr/~repo/
     There's a Python port at
          http://csociety-ftp.ecn.purdue.edu/pub/plan9/python/
     The wiki User-contributed Software page is useful too
          http://plan9.bell-labs.com/wiki/plan9/35/index.html

Subject: Is it object-oriented?

No, not in the conventional sense. It is written in a strict dialect of
ISO/ANSI C. In a wider sense, its general design of making all its `objects'
look like files to which one talks in a well-defined protocol shows a
related approach.

Subject: What about application portability?

Plan 9 comes with a library that makes it easy to import POSIX-conforming
applications. There is also a library that emulates the Berkeley socket
interface.

Subject: What resources does it need?

As might be expected, the answer depends on what you want to do. The kernel,
the window system, and the basic applications will run comfortably on a PC
with 8MB of memory.

On the other hand, the system can grow. The installation at Bell
Laboratories includes multiprocessor SGI Challenge and Pentium machines as
CPU servers, and a 350GB Sony WORM disk jukebox for the file server.

Subject: What GUIs does it support?

The standard interface doesn't use icons or drag-n-drop; Plan 9 people tend
to be text-oriented. But the window system, the editor, and the general feel
are very mousy, very point-and-click: Plan 9 windows are much more than a
bunch of glass TTYs. The system supports the graphics primitives and
libraries of basic software for building GUIs.
A screenshot is available at
http://plan9.bell-labs.com/plan9dist/screenshot.html

Subject: Does Plan 9 have any Unix-like terminal emulators?

The Plan 9 window system doesn't obey any inline cursor controls, since none
of the native applications use cursor-addressing. All cursor control in rio,
acme and sam is via the mouse.

To see some excellent articles on this important and divisive user interface
issue read http://www.asktog.com/readerMail/1999-12ReaderMail.html.

If you want to get from Plan9 to Unix systems, you can run /bin/vt in one of
your windows, telnet/rlogin to Unix, and set the term/TERM variable
accordingly on the Unix end. See vt(1) for more details; note that vt(1) can
emulate a VT100 VT220 or ANSI terminal.

Subject: What character set does it use?

The character set is Unicode, the 16-bit set unified with the ISO 10646
standard for representing languages used throughout the world. The system
and its utilities support Unicode using a byte-stream representation (called
UTF-8) that is compatible with ASCII. On Plan 9, one may grep for Cyrillic
strings in a file with a Japanese name and see the results appear correctly
on the terminal.

Subject: What about security and user authentication?

Plan 9's authentication design is akin to that of MIT's Kerberos. Passwords
are never sent over networks; instead encrypted tickets are obtained from an
authentication server. It doesn't have the concept of `set UID' programs.
The file server doesn't run user programs, and except at its own console, it
doesn't allow access to protected files except by authenticated owners. The
concept of a special `root' user is gone.

Subject: How does it communicate with other systems?

The distribution includes a u9fs server that runs on Unix-compatible systems
and understands the native Plan 9 remote file protocol, so that file systems
of Unix machines may be imported into Plan 9. It also includes an
NFS-compatible server that runs on Plan 9, so that Plan 9 file systems may
be accessed from other systems that support NFS. It includes the full suite
of Internet protocols (telnet, rlogin, ftp).

Subject: Is it suitable for real time control?

No, it is not. It is a general purpose system, without an interrupt priority
scheme or real scheduler.

Installation and Administration:

Subject: What PC hardware works well with Plan 9?

If you don't want to spend time fiddling with and swapping PC hardware, you
may prefer to buy hardware that is in use within Bell Labs, see Supported PC
Hardware.

The biggest source of problems is getting the VGA configured on PC
terminals. For best performance and functionality, it is recommended that
you use a card that can run at 16 bits per pixel or greater, and with
hardware-accelerated graphics support; currently only the Mach64 and S3
Virge are supported to this extent. The best buy today seems to be the ATI
8Meg Xpert 98 cards.

For a cpuserver or fileserver any old card that can do CGA is fine.

Subject: How do I Install Plan 9?

The installation is designed to be run from a PC.
  1. Read "Supported PC hardware" to ensure your PC meets the requirements.
  2. Back up your system.
  3. Make sure you've backed up your system.
  4. Read "Installing the Plan 9 Distribution" at URL
     http://plan9.bell-labs.com/sys/doc/install.html
  5. Check the errata page at
     http://plan9.bell-labs.com/plan9dist/errata.html for problems and fixes
     found since the distribution was made.
  6. Here are some more questions that have been answered on the 9fans list:
     IP configuration
          ndb/cs will set the sysname if you setup an appropriate entry in
          /lib/ndb/local. You must specify an 'ether=' entry, and the
          address should be all lower case. If all goes well, ip/ipconfig
          will then configure IP.
     Name Service
          If you have having problems, first check that ndb/dns is running.
          It needs to be started in /rc/bin/termrc or /rc/bin/cpurc. Also
          note that only fully qualified names are supported, and there
          isn't a separate resolver.
     Binding and Mounting Devices
          Note that # is the shell comment character, so you must enclose it
          in single quotes. For example: bind -a '#R6' /dev
     Auth Server
          When booting a cpuserver without an auth server, if you give
          0.1.0.0 as the auth server address instead the cpu server's own
          address, you won't have to wait for it to timeout.

Subject: It doesn't work for me, how should I troubleshoot?

If you are having having SCSI problems, check your cables and terminators.
this is generally the single largest cause of weird SCSI problems. Active
terminators are best. If you run external cables you need to get high
quality ones. Also, don't crank of the speed on the card.

Subject: How do I setup the VGA?

If the VGA doesn't work, read the last couple sections (Setting Up and
Troubleshooting) of "Installing the Plan 9 Distribution"

You will have to find out more about the card so you can configure it. The
relevant manuals are: vga(3), vgadb(6), vga(8), and 9load(8).

If your VGA card is not supported, you could try
http://mapage.noos.fr/philippe.anel/ for Matrox G200 G400 and G450 drivers
by Philippe Anel or see http://plan9.bell-labs.com/wiki/plan9/39/index.html
for Riva TNT drivers by Nicholas Waples.

Put
debug=1
(1st line) in plan9.ini and try again. It may not be of much help but will
allow to ask a more specific question.

Subject: How do I control the services that start at boot time?

This is controlled by shell scripts, that are roughly equivalent to the
/etc/rc files on Unix:
/rc/bin/termrc for terminals
/rc/bin/cpurc for cpu servers

See cpurc(8) for more details.

Subject: How do I setup network services?

For UDP services, you must start them up in the appropriate cpurc(8) file.
For TCP or IL services, you must use the listen(8) daemon.

Subject: How do I shutdown my terminal/cpuserver system?

If you booted from a real fileserver, you can just turn it off.

If you are using kfs, you must halt the disks manually by typing
disk/kfscmd halt
at a prompt and waiting for ``kfs: file system halted'' to appear on the
screen.

Not doing this means the disk might not be in a consistent state or modified
data might not have been written out yet; not halting the disk forces the
long wait at the ``kfs...'' when you boot the next time while kfs checks the
disk.

Subject: How do I reboot my system?

The system can be rebooted by typing ^T^Tr (two control-T's followed by
'r'). Cpu servers can be rebooted by typing ^P on the console. See the
cons(3) manual for more details.

General Information:

Subject: Where did the name come from?

It was chosen in the Bell Labs tradition of selecting names that make
marketeers wince. The developers also wished to pay homage to the famous
film, "Plan 9 From Outer Space".

Subject: How can I Obtain Plan 9?

The Plan 9 release is available for free download at
http://plan9.bell-labs.com/plan9dist/download.html
It includes source of the kernel, libraries, and commands for all supported
architectures. It also includes complete binaries for the x86 architecture.

Subject: How can I get involved?

The best way to learn about the system is to write something that other
people in the Plan 9 user community could use, or to port the system to new
platforms.

If anyone would like their projects listed here, let me know. This should
help prevent duplication of effort, and increase involvment from the 'net
community.

Subject: How can I get more detailed technical information?

The Bell Labs site plan9.bell-labs.com stores a wealth of information about
the system.
The manual pages are at http://plan9.bell-labs.com/sys/man/
For auxiliary documentation, see http://plan9.bell-labs.com/sys/doc/
A Plan 9 wiki is maintained by enthusiasts at
http://plan9.bell-labs.com/wiki/plan9/1/

Subject: Can I emulate Plan 9 under Unix?

Several Plan 9 inspired applications are available for Unix systems.

The sam editor is available from
ftp://netlib.bell-labs.com/netlib/research/sam.shar.gz

There is also a Windows 95/NT version of Sam, currently distributed in
binary form only, available from
ftp://netlib.bell-labs.com/netlib/research/sam.exe Comments and bug reports
can be sent to seanq@research.bell-labs.com

A free re-implementation of the rc shell is available from
ftp://ftp.white.toronto.edu/pub/rc/

Wily is an acme lookalike by Gary Capell, gary@cs.su.oz.au. See
http://www.cs.yorku.ca/~oz/wily/

9wm is David Hogan's lightweight X window manager in the style of 8½. It is
available from ftp://ftp.cs.su.oz.au/dhog/9wm/ Comments to dhog@cs.su.oz.au

9term is an 8½ terminal emulator by Matty Farrow, matty@cs.su.oz.au,
available from ftp://ftp.cs.su.oz.au/matty/unicode/ In the same directory,
you'll find a collection of Unicode fonts that can be used with 9term, sam
and wily.

9menu is a simple program by Arnold Robbins, arnold@skeeve.com, that allows
you to create X menus from the shell, where each menu item will run a
command. 9menu is intended for use with 9wm, but can be used with any other
window manager. It is available from
ftp://ftp.freefriends.org/arnold/Source/9menu-1.5.shar.gz

Copyright © 1995 Lucent Technologies. All rights reserved.
-- 
Steve Kotsopoulos, P. Eng	Software Development Manager
steve@baltimore.com		Baltimore Technologies


^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [9fans] Plan 9 from Bell Labs - Frequently Asked Questions [FAQ]
       [not found] ` <20000608093850.L3828@cackle.proxima.alt.za>
@ 2000-06-12 10:27   ` Conway Yee
  0 siblings, 0 replies; 19+ messages in thread
From: Conway Yee @ 2000-06-12 10:27 UTC (permalink / raw)
  To: 9fans

>My vote is to leave it as is, simply because we're a reasonably stable
>readership (interactship?).

The readership may be larger than you think.  I am reading this
via USENET rather than subscribing to the mailing list.

Conway Yee


^ permalink raw reply	[flat|nested] 19+ messages in thread

* [9fans] Plan 9 from Bell Labs - Frequently Asked Questions [FAQ]
@ 2000-06-08  7:58 Lucio
  0 siblings, 0 replies; 19+ messages in thread
From: Lucio @ 2000-06-08  7:58 UTC (permalink / raw)


On Thu, Jun 08, 2000 at 02:32:03AM -0400, Scott Schwartz wrote:
>
> | Since the Reply-to: heading
> | (against NET convention, but it's probably OK) is munged to the list,
>
> I'll turn that off if the consensus is to do so.

My vote is to leave it as is, simply because we're a reasonably stable
readership (interactship?).

It's easier this way (this very message would have been caught out) and
the degree of personal interchange on the list is low enough and polite
enough that problems will be minimal if any at all.

On the other hand, NET convention is great to follow and makes it easier
for casual interaction, so if the mailing list is poised to grow, that
may be the route to follow.

++L




^ permalink raw reply	[flat|nested] 19+ messages in thread

* [9fans] Plan 9 from Bell Labs - Frequently Asked Questions [FAQ]
@ 2000-06-08  7:38 Lucio
  0 siblings, 0 replies; 19+ messages in thread
From: Lucio @ 2000-06-08  7:38 UTC (permalink / raw)


On Thu, Jun 08, 2000 at 02:32:03AM -0400, Scott Schwartz wrote:
>
> | Since the Reply-to: heading
> | (against NET convention, but it's probably OK) is munged to the list,
>
> I'll turn that off if the consensus is to do so.

My vote is to leave it as is, simply because we're a reasonably stable
readership (interactship?).

It's easier this way (this very message would have been caught out) and
the degree of personal interchange on the list is low enough and polite
enough that problems will be minimal if any at all.

On the other hand, NET convention is great to follow and makes it easier
for casual interaction, so if the mailing list is poised to grow, that
may be the route to follow.

++L




^ permalink raw reply	[flat|nested] 19+ messages in thread

* [9fans] Plan 9 from Bell Labs - Frequently Asked Questions [FAQ]
@ 2000-06-08  6:32 Scott
  0 siblings, 0 replies; 19+ messages in thread
From: Scott @ 2000-06-08  6:32 UTC (permalink / raw)


| Since the Reply-to: heading
| (against NET convention, but it's probably OK) is munged to the list,

I'll turn that off if the consensus is to do so.





^ permalink raw reply	[flat|nested] 19+ messages in thread

* [9fans] Plan 9 from Bell Labs - Frequently Asked Questions [FAQ]
@ 2000-06-08  5:28 Lucio
  0 siblings, 0 replies; 19+ messages in thread
From: Lucio @ 2000-06-08  5:28 UTC (permalink / raw)


On Wed, Jun 07, 2000 at 11:12:12PM -0400, jmk@plan9.bell-labs.com wrote:
>
> is everyone still getting duplicate messages on the mailing list?
> why is it only some messages?

I get a hint of the reason by saving the messages using "mutt".  Those of
which I get a single copy are saved under =9fans, the others are saved under
=<sender> where <sender> is the login ID of the originator.

Mutt and Elm are very similar in this respect.  Since the Reply-to: heading
(against NET convention, but it's probably OK) is munged to the list, and
the only other possibility is the format of the "From" header.  Mine is
Lucio De Re <lucio@proxima.alt.za> versus the option, say,
lucio@proxima.alt.za (Lucio De Re) which MUTT won't let me try :-)

Or perhaps a "sender" address?

Something triggers a different response in the mailing list or news to
gateway software.  Of course, the source itself may be an explanation.

++L




^ permalink raw reply	[flat|nested] 19+ messages in thread

* [9fans] Plan 9 from Bell Labs - Frequently Asked Questions [FAQ]
@ 2000-06-08  5:12 Lucio
  0 siblings, 0 replies; 19+ messages in thread
From: Lucio @ 2000-06-08  5:12 UTC (permalink / raw)


On Wed, Jun 07, 2000 at 11:12:12PM -0400, jmk@plan9.bell-labs.com wrote:
>
> is everyone still getting duplicate messages on the mailing list?
> why is it only some messages?

I get a hint of the reason by saving the messages using "mutt".  Those of
which I get a single copy are saved under =9fans, the others are saved under
=<sender> where <sender> is the login ID of the originator.

Mutt and Elm are very similar in this respect.  Since the Reply-to: heading
(against NET convention, but it's probably OK) is munged to the list, and
the only other possibility is the format of the "From" header.  Mine is
Lucio De Re <lucio@proxima.alt.za> versus the option, say,
lucio@proxima.alt.za (Lucio De Re) which MUTT won't let me try :-)

Or perhaps a "sender" address?

Something triggers a different response in the mailing list or news to
gateway software.  Of course, the source itself may be an explanation.

++L




^ permalink raw reply	[flat|nested] 19+ messages in thread

* [9fans] Plan 9 from Bell Labs - Frequently Asked Questions [FAQ]
@ 2000-06-08  3:46 Scott
  0 siblings, 0 replies; 19+ messages in thread
From: Scott @ 2000-06-08  3:46 UTC (permalink / raw)


jmk:
| is everyone still getting duplicate messages on the mailing list?
| why is it only some messages?

Unfortunately, yes.

For example,
  From: Christopher Nielsen <cnielsen@pobox.com>
  Subject: [9fans] ThinkPad 600X
  Message-ID: <Pine.BSF.4.21.0006071610050.33441-100000@cassandra.wayward-volvo.org>

This was mailed by the author to 9fans.  The usenet gateway at
bath.ac.uk forwarded it to usenet.  Then the usenet gateway at
bath.ac.uk forwarded the usenet posting to 9fans.






^ permalink raw reply	[flat|nested] 19+ messages in thread

* [9fans] Plan 9 from Bell Labs - Frequently Asked Questions [FAQ]
@ 2000-06-08  3:12 jmk
  0 siblings, 0 replies; 19+ messages in thread
From: jmk @ 2000-06-08  3:12 UTC (permalink / raw)


is everyone still getting duplicate messages on the mailing list?
why is it only some messages?




^ permalink raw reply	[flat|nested] 19+ messages in thread

* [9fans] Plan 9 from Bell Labs - Frequently Asked Questions [FAQ]
@ 2000-06-07 20:10 Steve
  0 siblings, 0 replies; 19+ messages in thread
From: Steve @ 2000-06-07 20:10 UTC (permalink / raw)


Archive-name: comp-os/plan9-faq
Last-modified: May 9, 2000
Posting-Frequency: monthly
URL: http://www.fywss.com/plan9/plan9faq.html
URL2: http://www.ecf.toronto.edu/plan9/plan9faq.html

This document answers frequently asked questions about the Plan 9 operating
system. Much of it was taken (with permission) from Dennis Ritchie's Plan 9
Q&A press release.

The following sections are new or modified recently:

   * What are Brazil and Inferno?

A hypertext version of this FAQ is available on my Plan 9 web page, URL
http://www.fywss.com/plan9/
Those pages are also available at http://www.ecf.toronto.edu/plan9/ if the
main site is down.

Other sources of information include the newsgroup comp.os.plan9, which is
bidirectionally gatewayed to the 9fans mailing list (mail
9fans-request@cse.psu.edu to subscribe or request archived messages) and of
course the Plan 9 homepage at Bell Labs, URL
http://plan9.bell-labs.com/plan9/index.html

Please forward any comments or suggestions regarding this FAQ to
steve@fywss.com
  ------------------------------------------------------------------------

Introduction:

   * What is Plan 9?
   * What are Brazil and Inferno?
   * What is its relation to other operating systems?
   * What are its key ideas?
   * What are the advantages to this approach?

Hardware and Software:

   * What platforms does it run on?
   * Is anyone working on a port for my system?
   * Does it support symmetric multiprocessing?
   * Is it object-oriented?
   * What about applications and tools?
   * What about application portability?
   * Is there a fortran compiler?
   * What resources does it need?
   * What GUIs does it support?
   * Does Plan 9 have any Unix-like terminal emulators?
   * What character set does it use?
   * What about security and user authentication?
   * How does it communicate with other systems?
   * Is it suitable for real time control?

Installation and Administration:

   * What PC hardware works well with Plan 9?
   * How do I Install Plan 9?
   * How can I install only part of the CDROM?
   * Will Plan 9 install on disks larger than 2 Gig?
   * Are there any known problems?
   * It doesn't work for me, how should I troubleshoot?
   * How do I setup the VGA?
   * How do I control the services that start at boot time?
   * How do I setup network services?
   * How do I upgrade from the old release of Plan 9?
   * How do I install Plan 9 on a standalone Sparc?
   * How do I install Plan 9 on a Next?
   * How do I setup a dual boot for Plan 9 and Windows95?
   * Can I install Plan 9 with less than 8Mb of ram?
   * How do I stop 8c/8l from running out of memory?
   * Are there any security concerns I should be aware of?
   * What is a boddle and what is it good for?
   * How do I setup PPP?
   * Where can I get unzip and gzip for Plan 9?
   * How do I use texinfo on Plan 9?
   * How do I reboot my system?
   * How do I tell if a file server is up?

General Information:

   * Where did the name come from?
   * How can I Obtain Plan 9?
   * How can I get involved?
   * How can I get more detailed technical information?
   * Can I emulate Plan 9 under Unix?

  ------------------------------------------------------------------------

Introduction:

Subject: What is Plan 9?

Plan 9 is a new computer operating system and associated utilities. It has
been built over the past several years by the Computing Science Research
Center of Lucent Technologies Bell Laboratories, the same group that
developed Unix, C, and C++.

Plan 9 is a distributed system. In the most general configuration, it uses
three kinds of components: terminals that sit on users' desks, file servers
that store permanent data, and other servers that provide faster CPUs, user
authentication, and network gateways. These components are connected by
various kinds of networks, including Ethernet, Datakit, specially-built
fiber networks, ordinary modem connections, and ISDN. In typical use, users
interact with applications that run either on their terminals or on CPU
servers, and the applications get their data from the file servers. The
design, however, is highly configurable; it escapes from specific models of
networked workstations and central machine service.

Subject: What are Brazil and Inferno?

Brazil is the next research project after Plan 9, and is strictly internal
to Bell Labs at this time. The kernel data paths have been re-architected to
take advantage of faster machines and networks.
A release of Brazil is currently being worked on, and is expected sometime
this summer.

Inferno is an operating system for delivering interactive media to its
users. It is intended to be used in a variety of emerging network
environments, for example in TV set-top boxes attached to cable systems,
advanced telephones, hand-held devices, and inexpensive networked computers,
but also in conjunction with traditional computing systems.
Inferno customer support has recently been taken up by Vita Nuova.
The research version of Inferno is still described on the Bell Labs server
at http://www.bell-labs.com/inferno/. It appears the free evaluation version
is not available any more.
The Inferno mailing list archive is at
http://www.isr.umd.edu/~doc/Inferno/Mail-list/

Subject: What is its relation to other operating systems?

Plan 9 is itself an operating system; it doesn't run as an application under
another system. It was written from the ground up and doesn't include other
people's code. Although the OS's interface to applications is strongly
influenced by the approach of Unix, it's not a replacement for Unix; it is a
new design.

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.

Subject: What are the advantages to this approach?

Plan 9's approach improves generality and modularity of application design
by encouraging servers that make any kind of information appear to users and
to applications just like collections of ordinary files. Here are a few
examples.

The Plan 9 window system (called 8€) is small and clean in part because its
design is centered on providing a virtual keyboard, mouse, and screen to
each of the applications running under it, while using the real keyboard,
mouse, and screen supplied by the operating system. That is - besides
creating, deleting, and arranging the windows themselves - its job is be a
server for certain resources used by its clients. As a side benefit, this
approach means that the window system can run recursively in one of its
windows, or even on another machine.

Plan 9 users do Internet FTP by starting a local program that makes all the
files on any FTP server (anywhere on the Internet) appear to be local files.
Plan 9 PC users with a DOS/Windows partition on their disk can use the files
stored there. ISO 9660 CD-ROMs and cpio tapes all behave as if they were
native file systems. The complete I/O behavior and performance of any
application can be monitored by running it under a server that sees all its
interactions. The debugger can examine a program on another machine even if
it is running on a different hardware architecture.

Another example is the approach to networks. In Plan 9, each network
presents itself as a set of files for connection creation, I/O, and control.
A common semantic core for the operations is agreed upon, together with a
general server for translating human-readable addresses to network-specific
ones. As a result, applications don't care which kind of network (TCP/IP,
ISDN, modem, Datakit) they are using. In fact, applications don't even know
whether the network they are using is physically attached to the machine the
application is running on: the network interface files can be imported from
another machine.

Hardware and Software:

Subject: What platforms does it run on?

The Plan 9 kernel and applications are highly portable. Plan 9 runs on four
major machine architectures: Intel 386/486/Pentium, MIPS, SPARC, and
Motorola 68020. Data structures and protocols are designed for distributed
computing on machines of diverse design. Except for necessarily
machine-dependent parts of the kernel, the compilers, and a few libraries,
there is a single source representation for everything.

The systems supported under each architecture are:
     386
          386, 486, Pentium and clones
          see the "What PC hardware works well with Plan 9?" section of this
          faq for more information on this popular topic
     MIPS
          MIPS Magnum 3000, 6280, SGI Power Series, Indigo, Challenge M;
     SPARC
          SLC (4/20) Sparcstation 2 (4/75) have been tested, Sparcstation 1
          (4/60), IPC (4/40), 1+ (4/65), ELC (4/25), and IPX (4/50) will
          probably work too;
     68020
          Gnot, 68040 NeXTstation.

More details are available in "The Various Ports" at URL
http://plan9.bell-labs.com/plan9/doc/port.html

Subject: Is anyone working on a port for my system?

Steve Kotsopoulos has a preliminary SGI Indy R4000 port, available from
ftp://ftp.ecf.toronto.edu/pub/plan9/steve/indy.bod Bug reports welcome at
steve@fywss.com. Charles Forsyth has found that the Indy R4600 will require
more extensive changes.

Both David Hogan and forsyth (separately) ported an older version of Plan 9
to the Sun-3/50 and 3/60. David Hogan got the new release working on
Sun-3/50 and 3/60s and forsyth has tidied it up for distribution. See
http://www.caldo.demon.co.uk/plan9/dist/sun3/sun3.bundle.gz

David Hogan is also working on a port to the DEC Alpha architecture. He will
announce it when it is ready.

Charles Forsyth is working on a Plan 9 Port to the BeBox, details are at
http://www.caldo.demon.co.uk/plan9/soft/bebox.html A PowerPC compiler suite
for Plan 9 has been implemented, see
http://www.caldo.demon.co.uk/plan9/soft/power.html for details.

Neither the Amiga nor Atari are supported.

The Decstation 2100 and 3100 are not supported, but Tad Hunt has started
working on a port. Step one was to make the plan9 mips toolset output little
endian code. His patches for vl(1) to make bootable pmax code are at
http://www.fywss.com/plan9/patches/vl
Queries to tad@elwood-low.csh.rit.edu

Subject: Does it support symmetric multiprocessing?

Yes. SGI Power series multiprocessors are supported both as CPU servers and
file servers. The newer SGI Challenge series of multiprocessors and dual
processor Pentiums are only supported by Brazil, not Plan 9.

Subject: Is it object-oriented?

No, not in the conventional sense. It is written in a strict dialect of
ISO/ANSI C. In a wider sense, its general design of making all its `objects'
look like files to which one talks in a well-defined protocol shows a
related approach.

Subject: What about applications and tools?

Plan 9 comes with its own compilers for C and other languages, together with
all the commands and program-development tools originally pioneered in the
Unix environment. It also provides newly designed software. Alef is a new
language that provides threads, inter-process and inter-machine
communication through typed channels, and abstract data types. Acid is a
programmable debugger that understands multiple-process programs, and the
programs it is debugging may be running on a hardware platform different
from its own. Acme is a new user interface in which any word on the screen
can be interpreted as a command by clicking on it, and any string can
specify a file to be displayed.

Subject: What about application portability?

Plan 9 comes with a library that makes it easy to import POSIX-conforming
applications. There is also a library that emulates the Berkeley socket
interface.

Subject: Is there a fortran compiler?

No, plan9 does not have a fortran compiler. If you have fortran programs you
want to run, you can try using the f2c (fortran to C) converter available at
ftp://netlib.bell-labs.com/netlib/f2c/

Subject: What resources does it need?

As might be expected, the answer depends on what you want to do. The kernel,
the window system, and the basic applications will run comfortably on a PC
with 8MB of memory. A single diskette can hold the kernel, window system,
editor, and basic Ethernet/Internet interface. A 4-diskette set holds a
system sufficient for simple program development (compiler, loader,
debugger, more utilities).

On the other hand, the system can grow. The installation at Bell
Laboratories includes multiprocessor SGI Power Series and Challenge machines
as CPU servers, and a 350GB Sony WORM disk jukebox for the file server.

Subject: What GUIs does it support?

The standard interface doesn't use icons or drag-n-drop; Plan 9 people tend
to be text-oriented. But the window system, the editor, and the general feel
are very mousy, very point-and-click: Plan 9 windows are much more than a
bunch of glass TTYs. The system supports the graphics primitives and
libraries of basic software for building GUIs, and if need arises, the X
window system has been ported to Plan 9. [Note: The X server only runs on
MIPS systems. No one at Bell Labs is working on the port, so they didn't
ship it with the CDROM]

Subject: Does Plan 9 have any Unix-like terminal emulators?

The Plan 9 window system doesn't obey any inline cursor controls, since none
of the native applications use cursor-addressing. If you want to get from
Plan9 to Unix systems, you can run /bin/hp in one of your windows,
telnet/rlogin to Unix, and set the term/TERM variable to hp2621 on the Unix
end. See hp(1) for more details.

Subject: What character set does it use?

The character set is Unicode, the 16-bit set unified with the ISO 10646
standard for representing languages used throughout the world. The system
and its utilities support Unicode using a byte-stream representation (called
UTF-8) that is compatible with ASCII. On Plan 9, one may grep for Cyrillic
strings in a file with a Japanese name and see the results appear correctly
on the terminal.

Subject: What about security and user authentication?

Plan 9's authentication design is akin to that of MIT's Kerberos. Passwords
are never sent over networks; instead encrypted tickets are obtained from an
authentication server. It doesn't have the concept of `set UID' programs.
The file server doesn't run user programs, and except at its own console, it
doesn't allow access to protected files except by authenticated owners. The
concept of a special `root' user is gone.

Subject: How does it communicate with other systems?

The distribution includes a u9fs server that runs on Unix-compatible systems
and understands the native Plan 9 remote file protocol, so that file systems
of Unix machines may be imported into Plan 9. It also includes an
NFS-compatible server that runs on Plan 9, so that Plan 9 file systems may
be accessed from other systems that support NFS. It includes the full suite
of Internet protocols (telnet, rlogin, ftp).

Subject: Is it suitable for real time control?

No, it is not. It is a general purpose system, without an interrupt priority
scheme or real scheduler.

Installation and Administration:

Subject: What PC hardware works well with Plan 9?

If you don't want to spend time fiddling with and swapping PC hardware, you
may prefer to buy hardware that is in use within Bell Labs. If so, have a
look at the "What We Use" document by jmk@plan9.bell-labs.com, at
http://www.fywss.com/plan9/clone.html

The general recommendation would be for a 486 PCI+ISA motherboard with I/O
on the motherboard that would take a DX4-100. SIS or Intel chipset should be
OK. If you can afford it, Intel cpus have larger primary caches and less
possibility of running into incompatibilities.

A condensed summary of the hardware that is known to work follows:
     Motherboards
          AMI Enterprise IV, ACER AP41. Many people run on stock PC-clones
          such as Dell, Gateway, Micron Millenias
     Pentium motherboards
          ASUS PCI/E-P54NP4, Gigabyte GA586-ID, Tyan Tempest S1462
     VGA cards/chips
          S3 80[15], S3 928, S3 864, S3 964, S3 Trio64, S3 Trio32, Tseng
          Labs ET4000, Tseng Labs ET4000/W32p, Tseng Labs ET4000/W32i,
          ARK2000pv, CL-GD542x, CL-GD543x, C&T65540, MACH32, MACH64.
     Monitors
          IDEK 8617, Viewsonic 17, Nokia 445X, Nanao Flexscan 6500 21"
          greyscale.
     SCSI Controllers
          Buslogic controllers have been the most trouble-free, due to their
          open policy on providing programming information. Adaptec 1542
          series, Ultrastor 14F ISA and a 34F VLB.
     SCSI CD-ROM
          2x Toshiba 3401, 4X Toshiba 3601B, NEC 74 and 3Xi, 4x Plextor
          4-Plex. The Toshiba and Plextor let you read the digital audio
          over the bus.
     Non-SCSI CD-ROM
          Mitsumi, Panasonic and Matsushita, attached to a Sound Blaster
          audio card, 4X Toshiba 5302B, Mitsumi FX400 and Teac 6x drive,
          attached to an ATAPI controller. Avoid Sanyo, it doesn't execute
          the drive diagnotics command properly.
     Audio
          Sound Blaster 16 or compatible (not the Sound Blaster Pro).
     Mouse
          PS/2 or serial, as long as it has 3 buttons.
     Ethernet Adapters
          3Com 3C509, 3C509B are recommended. The EISA 3C579 works, but
          isn't worth the extra cost. The PCMCIA 3C589, PCI 3C590 and PCI
          3C595 (fast ethernet) also work. AMD 79C970 based adapters seem to
          work fine. SMC (WD) series up to the Elite (and the Elite Ultra),
          some NE2000 compatibles (including an NE4100 PCMCIA card) and one
          Eagle NE3210 EISA card. The 3Com 3C503 does not work at all under
          load. The 3Com 3C595 is not supported.

If you have time for netnews, the OS/2 and Linux newsgroups probably have
some useful information.

Another useful web page on PC hardware (with a BSDi bias) is "PC Hardware
Hints and Kinks" at http://www.vix.com/vix/pc-hw/

Subject: How do I Install Plan 9?

The installation is designed to be run from a PC. Note that Plan 9 uses an
unallocated portion at the end of the disk, and you won't see this partition
with the FDISK program.
  1. Back up your system.
  2. Make sure you've backed up your system.
  3. Read "Installing the Plan 9 Distribution" at URL
     http://plan9.bell-labs.com/plan9/doc/install.html
  4. Check the errata page at http://plan9.bell-labs.com/plan9/errata.html
     for problems and fixes found since the distribution was frozen. More
     recent bugfixes are now distributed in boddle format from the update
     directory at ftp://plan9.bell-labs.com/plan9/update
  5. Here are some more questions that have been answered on the 9fans list:
     IP configuration
          ndb/cs will set the sysname if you setup an appropriate entry in
          /lib/ndb/local. You must specify an 'ether=' entry, and the
          address should be all lower case. If all goes well, ip/ipconfig
          will then configure IP.
     Mice
          If aux/mouse is having problems guessing the protocol, you can use
          the undocumented '-d type' option to help it out. Use 'aux/mouse
          -dC $mouseport' for a Logitech type C mouse, '-dW' for a Logitech
          type W mouse, or '-dM' for a Microsoft compatible mouse.
     Name Service
          If you have having problems, first check that ndb/dns is running.
          It needs to be started in /rc/bin/termrc or /rc/bin/cpurc. Also
          note that only fully qualified names are supported, and there
          isn't a separate resolver.
     Binding and Mounting Devices
          Note that # is the shell comment character, so you must enclose it
          in single quotes. For example: bind -a '#R6' /dev
     Auth Server
          When booting a cpuserver without an auth server, if you give
          0.1.0.0 as the auth server address instead the cpu server's own
          address, you won't have to wait for it to timeout.

Subject: How can I install only part of the CDROM?

The cdrom has about 375Meg of files on it, but if you are short on disk
space you can install with much less than that. Each of the toplevel
architecture-specific directories takes up over 40Meg, so if you only have
PC's you can save over 140Meg by simply not installing /mips, /sparc and
/68020. If you don't need the source in /sys/src (shame on you), you'll save
43Meg.

The pcdist disks at ftp://plan9.bell-labs.com/plan9/pcdist contain bugfixes
that are not on the CDROM, and some of the fixes are not yet available in
source form either. If you are installing on a pc, it is probably easiest to
install the pcdist first, and then merge in whatever you want from the
cdrom.

If you use mkfs to copy the cdrom, you can make sure you don't overwrite
files that were fixed on the pcdist. You can use the following steps to load
the entire cdrom except /mips, /sparc and /68020 on a standalone pc. First,
install the latest pcdist using the standard installation procedure. Next,
mount the cdrom [this assumes scsi cdrom at device 4]

 % 9660srv
 % disk/kfscmd allow
 % mkdir /n/cd
 % mount /srv/9660 /n/cd '#R4/cd4'

Use the following to copy the filesystem rooted at /n/cd (the cdrom) to
/n/kfs (the local PC filesystem), according to the proto file
/tmp/386allproto, and without overwriting any files that are on the pcdist.

 % /n/cd/386/bin/disk/mkfs -v -s /n/cd /tmp/386allproto

Where /tmp/386allproto is the following mkfs proto file:

acme
        +
adm
        +
cron
        +
lib
        +
mail
        +
mnt
        +
rc
        +
sys
        +
usr
        +
386
        +

Subject: Will Plan 9 install on disks larger than 2 Gig?

The Bell Labs distribution is getting old and will not install reliably on
[E]IDE disks >2GB (you might get lucky if your disk is <4GB, but no
guarantees).

Use a 2GB or smaller disk for now. Someday a patch might be available.

Subject: Are there any known problems?

New pcdist files are available via ftp from
plan9.bell-labs.com/plan9/pcdist. These should fix most problems people have
had with disk configurations. There are also VGA fixes and ATAPI CD-ROMs are
included in the list of supported hardware.

Some of the source changes are available as boddles in the update directory
already but not all changes are there yet.

     Problems with Adaptec 1542C[FP]
          If the BIOS is enabled on the 1542C/CF and BIOS options for
          support of drives > 1Gb, dynamic scanning of the SCSI bus or more
          than 2 drives under DOS 5.0 are enabled, the BIOS disables
          accepting Cmbinit to protect against running with drivers which
          don't support those options. In order to unlock the interface it
          is necessary for the driver to read a lock-code using Cextbios and
          write it back using Cmbienable; the lock-code is non-zero.
          If any of the options mentioned above are on, timeout errors will
          occur. Either the BIOS or all the relevant options should be
          disabled. There is a new version of b.com on plan9.bell-labs.com
          in the pcdist subdirectory which should overcome this problem but
          it's not known if it works in all cases.
     Adaptec AHA-2xxx series controllers
          There is no support for any Adaptec AHA-2xxx series controller. It
          would be great if someone wrote a driver since these are popular
          and show up embedded on motherboards. However, it's completely
          different from any other Adaptec controller and the rumour on the
          street is that a driver would be a fair amount of work. Manuals
          are hard to get, they seem to be permanently on back-order. If
          someone wants to tackle this project, the driver for FreeBSD may
          be a good starting point.
          The NCR8xx series look to be a cheaper alternative with similar
          performance and Nigel Roles has already written a driver for it
          which is available at http://www.cotswold.demon.co.uk along with
          some other plan9 software.
     3C509B ethernet card
          Make sure you disable the Plug-and-Play option and set the
          transceiver type explicitly(don't use auto-select mode)

Subject: It doesn't work for me, how should I troubleshoot?

If you are having having SCSI problems, check your cables and terminators.
this is generally the single largest cause of weird SCSI problems. Active
terminators are best. If you run external cables you need to get high
quality ones. Also, don't crank of the speed on the card.

Subject: How do I setup the VGA?

Simple vga cards and monitors should work at 640x480x[12]. For higher
resolutions, especially on untested cards, you will have to find out more
about the card so you can configure it. The relevant manuals are: vga(3),
vgadb(6), vga(8), and b.com(8). For a detailed debugging guide (too large to
include here), see http://www.fywss.com/plan9/info/vga

Subject: How do I control the services that start at boot time?

This is controlled by shell scripts, that are roughly equivalent to the
/etc/rc files on Unix:
/rc/bin/termrc for terminals
/rc/bin/cpurc for cpu servers

See cpurc(8) for more details.

Subject: How do I setup network services?

For UDP services, you must start them up in the appropriate cpurc(8) file.
For TCP, IL, or Datakit services, you must use the listen(8) daemon.

Subject: How do I upgrade from the old release of Plan 9?

The 9P protocol has changed in the second edition, due to changes in the way
that Plan 9 does its authentication. For those using Unix-based u9fs file
servers, you will have to compile and install the new version of u9fs. For
more tips on running with a u9fs file server, see
http://www.fywss.com/plan9/info/u9fs

For those using the standard Plan 9 file servers, ken@plan9.bell-labs.com
reports that the disk format in the new release is the same, so there should
be no problems running the new FS code on old disks.

Subject: How do I install Plan 9 on a standalone Sparc?

abochann@cisco.com (Alex Bochannek) did it as follows:

1) Unpack the CD on a UNIX system and install a u9fs server.
2) Boot the SPARC off the u9fs server
3) Create a kfs on sd1 and unpack the whole CD on it.
4) Copy the file /sys/src/9/ss/sscd to /sys/src/9/ss/sssd1
5) Change the line k9660srv.root to kfs.root and change the line boot
   terminal #R6/cd6 to boot terminal #w1/sd1
6) Add sssd1 to the CONFLIST and change CONF=ss to CONF=sssd1 in the
   ss/mkfile
7) Do a make all in /sys/src/9
8) Copy the new image 9sssd1 to your favorite TFTP server (or boot
   from sd3 on your local system)

Subject: How do I install Plan 9 on a Next?

For a summary of how taweil@ucs.usc.edu (Ta-Wei Li) did it, see
http://www.fywss.com/plan9/info/next.html

Subject: How do I setup a dual boot for Plan 9 and Windows95?

For a summary of how castor@tkg.com (Castor Fu) did it, see
http://www.fywss.com/plan9/info/win95

Subject: Can I install Plan 9 with less than 8Mb of ram?

The official answer is no, 8Mb is the minimum supported memory
configuration. Some people are using it with only 4Mb though.

You'll need to borrow 4Mb from another system to get you past the install
process (where 8Mb is needed to expand the diskettes). After the install is
done, you may be able to run with only 4Mb if you set the vga at a low
resolution and/or depth, or perhaps fiddle with the kernelpercent parameter
in plan9.ini(8).

Subject: How do I stop 8c/8l from running out of memory?

In /sys/src/9/pc/mem.h, SEGMAPSIZE is set to 16 (Meg) by default. If you try
to compile ghostscript or libtiff on a PC, this value is too low. Change it
from 16 to 64; build and boot a new kernel with this setting; and you should
be fine after that.

Subject: Are there any security concerns I should be aware of?

If someone sets up their plan9 system according to the manuals, anyone on
the internet can telnet/rlogin in as 'none' without a password

To disable this anonymous access, use the undocumented '-N' option to
aux/telnetd and aux/ftp, which disallows logins as 'none'.

Since aux/rlogin execs aux/telnetd without the '-N' option, the only
protection may be to patch the source, or remove /bin/service/tcp513

Finally, ip/tftpd grants access to any world-readable file. The main concern
here is that people using u9fs as their file server probably have an
/etc/passwd file from their Unix system accessible. If so, make sure you
don't have any encrypted passwords in it, or someone could steal it and use
'crack' to break the passwords.

Subject: What is a boddle and what is it good for?

It's a bundle o' diffs: an rc script that when run with appropriate options
will apply a set of changes to the reference copy of the source from the
CDROM producing an updated copy in a subdirectory, for you to cat and diff,
and eventually cp onto the active source for a subsequent mk.

The boddle command (not in the release, fetch it from plan9.bell-labs.com)
takes a reference source and an updated version and produces a boddle file.
it comes with a manual page; read that for details.

Subject: How do I setup PPP?

First, apply the changes at
http://www.caldo.demon.co.uk/plan9/dist/bod/ppp.bod These add -9 (enable
IL/IP compression) and -m (set netmask) options to pppclient, and fix a few
bugs. Assuming you will use /dev/eia1, login to the ppp server as follows:

 1. % telco -s 38400 /dev/eia1
 2. % con -r -l telco!967-1111
 3. login and startup ppp on the server
 4. use "control \" to escape back to the >>> prompt in con, and type
        !onppp
 to link pppclient to the remote server.

 onppp is the following rc script:

#!/bin/rc
{sleep 5; echo add 0.0.0.0 0.0.0.0 128.100.8.4 >'#P/iproute' }&
exec aux/pppclient -i 128.100.8.19 -p 128.100.8.4 $*

 5. To shut down, use
        % kill pppclient | rc
    and disconnect in con.

Thanks to forsyth@caldo.demon.co.uk and craigl@tezcat.com for this section.

Subject: Where can I get unzip and gzip for Plan 9?

http://www.caldo.demon.co.uk/plan9/dist/pub/gzip.tar
http://www.caldo.demon.co.uk/plan9/dist/pub/unzip.tgz
you might need to use the -f (force) option with gzip, because it changes
behaviour based on isatty()

Subject: How do I use texinfo on Plan 9?

To use texinfo, run "tex foo.texinfo" to create foo.dvi, then use "dvips
foo.dvi > foo.ps" to create a Postscript file, which is viewable with "page"
and printable with "lp". Note: If the file foo.texinfo contains
cross-references, you may have to run "tex foo.texinfo" twice. The first
pass creates aux files and the second pass reads them.

Subject: How do I reboot my system?

The system can be rebooted by typing ^T^Tr (two control-T's followed by
'r'). Cpu servers can be rebooted by typing ^P on the console. See the
cons(3) manual for more details.

Subject: How do I tell if a file server is up?

It won't respond to ping (no icmp), but it does support arp. Of course, you
could just try connecting to it with 9p.

General Information:

Subject: Where did the name come from?

It was chosen in the Bell Labs tradition of selecting names that make
marketeers wince. The developers also wished to pay homage to the famous
film, "Plan 9 From Outer Space".

Subject: How can I Obtain Plan 9?

Complete information for purchasing the Plan 9 distribution or ftp'ing the
free PC trial version is available at URL
http://plan9.bell-labs.com/plan9/distrib.html

To summarize the information on the above webpage:

Contents

The Plan 9 distribution consists of two books, four 1.4 megabyte floppies,
and a CD-ROM. The books contain the manual pages and a collection of papers
describing the system.

The four floppies contain a complete bootable Plan 9 system for
IBM-compatible PCs (>=386). They have the kernel, the window system,
Internet support, and programming environments for both the C and Alef
languages. The CD-ROM contains everything: kernels, libraries, and utilities
for the Intel 386 (including 486 and Pentium), Sparc, 68020, and Mips
architectures and the sources to create them. It also has a selection of
interesting stuff (road maps of the US, sky catalogs).

To find out whether Plan 9 supports your hardware, read "The Various Ports"
at URL http://plan9.bell-labs.com/plan9/doc/port.html

To Order

The distribution is published by Harcourt Brace and Company. To order it
from the US call 800 782 4479.

>From Canada and the Caribbean, call 800 841 9938

Elsewhere, use +1 407 345 3800
If you are having problems getting through on the above number you can fax
your order to +1-407-345-4060.

The cost for the full kit is US$350 plus shipping; the ISBN is
0-03-017143-1. The manuals can be ordered by themselves for US$125 plus
shipping; ISBN is 0-03-017142-3. Everyone, even Lucent Technologies
employees, must order the system this way. There are no special arrangements
or deals.

Any bookshop should be able to order it for you if you give them one of the
ISBN numbers.

Free Trial

Plan 9 does not purport to run on all PCs. Since Plan 9 does not use the
BIOS, it is sensitive to hardware differences between PCs. Therefore, the
developers provide the contents of the four floppies on the Internet via FTP
for you to try out. Ftp to plan9.bell-labs.com, log in as anonymous, and get
the files from /plan9/pcdist

Subject: How can I get involved?

The best way to learn about the system is to write something that other
people in the Plan 9 user community could use, or to port the system to new
platforms. Several people have already made their applications available,
such as an http server, Unix-based authentication server, fileserver port to
the PC, etc. The current list of user-contributed software includes:

pace@blitz.com (Pace Willisson) has ported the Plan 9 authentication server
to Unix, to allow Plan 9 terminals to function without a Plan 9 cpu server
performing authentication. For more details, see
http://www.fywss.com/plan9/info/unixauth

avg@postman.ncube.com (Vadim Antonov) has provided some information on
converting terminals into multi-user hybrid cpu servers and terminals. For
his posting to 9fans, see http://www.fywss.com/plan9/info/misc/cpu_terminal

beto@plan9.cs.su.oz.au has ported a Linux QuickCam program into a Plan 9
driver which serves /dev/camera and /dev/focus. /dev/camera has the same
format than /dev/screen so most of fb/* programs work well with it. The
driver is at http://www.fywss.com/plan9/info/projects

eran@research.att.com (Eran Gabber) has ported the FreeBSD driver for the
Talisman XL MPEG-1 playback card for ISA bus to Plan 9. It displays full
motion video in a VGA window and/or generates NTSC signal. In particular,
MPEG decoding, picture resizing and video overlay are all done in hardware.
However, it doesn't use DMA due to its complex architecture.
The driver is available from http://cm.bell-labs.com/is/what/mpeg-driver
This page also points at a copyright disclaimer and installation
instructions. Please read both carefully.

bischof@informatik.Uni-Osnabrueck.DE (Hans-Peter Bischof) has written spy,
which receives the 9P messages from the kernel, displays them for
modification and sends the resulting messages to the intended server. In the
same way spy transmits the 9P replies of the server. Data spied out in this
manner can be used in many different ways.
It is available from
ftp://ftp.informatik.uni-osnabrueck.de/pub/plan9/spy.tar

bl@neon.mime.univ-paris8.fr (Bodet Laurent) has modified the dossrv file
server to read and write Linux ext2 partitions. You can find ext2srv at
ftp:://ftp.mime.univ-paris8.fr/usr/bl/ext2srv-0.2.tar.gz

Contact ngr@symbionics.co.uk if you'd like to test his Zip parallel port
driver. It does nibble mode only so works with anything, just not quickly
(reads are about 5mb a minute, writes double that).

Other software is available on the Plan 9 user community ftp site,
ftp.ecf.toronto.edu:/pub/plan9

If anyone would like their projects listed here, let me know. This should
help prevent duplication of effort, and increase involvment from the 'net
community. If you are looking for a list of suggested project topics, see
http://www.fywss.com/plan9/info/projects

Subject: How can I get more detailed technical information?

The Internet site plan9.bell-labs.com stores a collection of papers about
the system in the plan9 directory; they are available for anonymous FTP. For
a hypertext interface to these papers, see
http://plan9.bell-labs.com/plan9/vol2.html For the manual pages, see
http://plan9.bell-labs.com/plan9/vol1.html

Subject: Can I emulate Plan 9 under Unix?

Several Plan 9 inspired applications are available for Unix systems.

The sam editor is available from
ftp://plan9.bell-labs.com/plan9/unixsrc/sam/

There is also a Windows 95/NT version of Sam, currently distributed in
binary form only, available from
http://netlib.bell-labs.com/netlib/research/sam-win.zip Comments and bug
reports can be sent to seanq@research.bell-labs.com

A free re-implementation of the rc shell is available from
ftp://ftp.white.toronto.edu/pub/rc/

Wily is an acme lookalike by Gary Capell, gary@cs.su.oz.au. See
http://www.cs.su.oz.au/~gary/wily/

9wm is David Hogan's lightweight X window manager in the style of 8€. It is
available from ftp://ftp.cs.su.oz.au/dhog/9wm/ Comments to dhog@cs.su.oz.au

9term is an 8€ terminal emulator by Matty Farrow, matty@cs.su.oz.au,
available from ftp://ftp.cs.su.oz.au/matty/unicode/ In the same directory,
you'll find a collection of Unicode fonts that can be used with 9term, sam
and wily.

9menu is a simple program by Arnold Robbins, arnold@gnu.ai.mit.edu, that
allows you to create X menus from the shell, where each menu item will run a
command. 9menu is intended for use with 9wm, but can be used with any other
window manager. It is available from
ftp://ftp.mathcs.emory.edu/pub/arnold/9menu-1.4.shar.gz

Copyright € 1995 Lucent Technologies. All rights reserved.
--
Steve Kotsopoulos, P. Eng	Senior Developer
steve@nevex.com			Nevex Software Technologies Inc.




^ permalink raw reply	[flat|nested] 19+ messages in thread

* [9fans] Plan 9 from Bell Labs - Frequently Asked Questions [FAQ]
@ 2000-05-10  3:26 Steve
  0 siblings, 0 replies; 19+ messages in thread
From: Steve @ 2000-05-10  3:26 UTC (permalink / raw)


Archive-name: comp-os/plan9-faq
Last-modified: May 9, 2000
Posting-Frequency: monthly
URL: http://www.fywss.com/plan9/plan9faq.html
URL2: http://www.ecf.toronto.edu/plan9/plan9faq.html

This document answers frequently asked questions about the Plan 9 operating
system. Much of it was taken (with permission) from Dennis Ritchie's Plan 9
Q&A press release.

The following sections are new or modified recently:

   * What are Brazil and Inferno?

A hypertext version of this FAQ is available on my Plan 9 web page, URL
http://www.fywss.com/plan9/
Those pages are also available at http://www.ecf.toronto.edu/plan9/ if the
main site is down.

Other sources of information include the newsgroup comp.os.plan9, which is
bidirectionally gatewayed to the 9fans mailing list (mail
9fans-request@cse.psu.edu to subscribe or request archived messages) and of
course the Plan 9 homepage at Bell Labs, URL
http://plan9.bell-labs.com/plan9/index.html

Please forward any comments or suggestions regarding this FAQ to
steve@fywss.com
  ------------------------------------------------------------------------

Introduction:

   * What is Plan 9?
   * What are Brazil and Inferno?
   * What is its relation to other operating systems?
   * What are its key ideas?
   * What are the advantages to this approach?

Hardware and Software:

   * What platforms does it run on?
   * Is anyone working on a port for my system?
   * Does it support symmetric multiprocessing?
   * Is it object-oriented?
   * What about applications and tools?
   * What about application portability?
   * Is there a fortran compiler?
   * What resources does it need?
   * What GUIs does it support?
   * Does Plan 9 have any Unix-like terminal emulators?
   * What character set does it use?
   * What about security and user authentication?
   * How does it communicate with other systems?
   * Is it suitable for real time control?

Installation and Administration:

   * What PC hardware works well with Plan 9?
   * How do I Install Plan 9?
   * How can I install only part of the CDROM?
   * Will Plan 9 install on disks larger than 2 Gig?
   * Are there any known problems?
   * It doesn't work for me, how should I troubleshoot?
   * How do I setup the VGA?
   * How do I control the services that start at boot time?
   * How do I setup network services?
   * How do I upgrade from the old release of Plan 9?
   * How do I install Plan 9 on a standalone Sparc?
   * How do I install Plan 9 on a Next?
   * How do I setup a dual boot for Plan 9 and Windows95?
   * Can I install Plan 9 with less than 8Mb of ram?
   * How do I stop 8c/8l from running out of memory?
   * Are there any security concerns I should be aware of?
   * What is a boddle and what is it good for?
   * How do I setup PPP?
   * Where can I get unzip and gzip for Plan 9?
   * How do I use texinfo on Plan 9?
   * How do I reboot my system?
   * How do I tell if a file server is up?

General Information:

   * Where did the name come from?
   * How can I Obtain Plan 9?
   * How can I get involved?
   * How can I get more detailed technical information?
   * Can I emulate Plan 9 under Unix?

  ------------------------------------------------------------------------

Introduction:

Subject: What is Plan 9?

Plan 9 is a new computer operating system and associated utilities. It has
been built over the past several years by the Computing Science Research
Center of Lucent Technologies Bell Laboratories, the same group that
developed Unix, C, and C++.

Plan 9 is a distributed system. In the most general configuration, it uses
three kinds of components: terminals that sit on users' desks, file servers
that store permanent data, and other servers that provide faster CPUs, user
authentication, and network gateways. These components are connected by
various kinds of networks, including Ethernet, Datakit, specially-built
fiber networks, ordinary modem connections, and ISDN. In typical use, users
interact with applications that run either on their terminals or on CPU
servers, and the applications get their data from the file servers. The
design, however, is highly configurable; it escapes from specific models of
networked workstations and central machine service.

Subject: What are Brazil and Inferno?

Brazil is the next research project after Plan 9, and is strictly internal
to Bell Labs at this time. The kernel data paths have been re-architected to
take advantage of faster machines and networks.
A release of Brazil is currently being worked on, and is expected sometime
this summer.

Inferno is an operating system for delivering interactive media to its
users. It is intended to be used in a variety of emerging network
environments, for example in TV set-top boxes attached to cable systems,
advanced telephones, hand-held devices, and inexpensive networked computers,
but also in conjunction with traditional computing systems.
Inferno customer support has recently been taken up by Vita Nuova.
The research version of Inferno is still described on the Bell Labs server
at http://www.bell-labs.com/inferno/. It appears the free evaluation version
is not available any more.
The Inferno mailing list archive is at
http://www.isr.umd.edu/~doc/Inferno/Mail-list/

Subject: What is its relation to other operating systems?

Plan 9 is itself an operating system; it doesn't run as an application under
another system. It was written from the ground up and doesn't include other
people's code. Although the OS's interface to applications is strongly
influenced by the approach of Unix, it's not a replacement for Unix; it is a
new design.

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.

Subject: What are the advantages to this approach?

Plan 9's approach improves generality and modularity of application design
by encouraging servers that make any kind of information appear to users and
to applications just like collections of ordinary files. Here are a few
examples.

The Plan 9 window system (called 8�) is small and clean in part because its
design is centered on providing a virtual keyboard, mouse, and screen to
each of the applications running under it, while using the real keyboard,
mouse, and screen supplied by the operating system. That is - besides
creating, deleting, and arranging the windows themselves - its job is be a
server for certain resources used by its clients. As a side benefit, this
approach means that the window system can run recursively in one of its
windows, or even on another machine.

Plan 9 users do Internet FTP by starting a local program that makes all the
files on any FTP server (anywhere on the Internet) appear to be local files.
Plan 9 PC users with a DOS/Windows partition on their disk can use the files
stored there. ISO 9660 CD-ROMs and cpio tapes all behave as if they were
native file systems. The complete I/O behavior and performance of any
application can be monitored by running it under a server that sees all its
interactions. The debugger can examine a program on another machine even if
it is running on a different hardware architecture.

Another example is the approach to networks. In Plan 9, each network
presents itself as a set of files for connection creation, I/O, and control.
A common semantic core for the operations is agreed upon, together with a
general server for translating human-readable addresses to network-specific
ones. As a result, applications don't care which kind of network (TCP/IP,
ISDN, modem, Datakit) they are using. In fact, applications don't even know
whether the network they are using is physically attached to the machine the
application is running on: the network interface files can be imported from
another machine.

Hardware and Software:

Subject: What platforms does it run on?

The Plan 9 kernel and applications are highly portable. Plan 9 runs on four
major machine architectures: Intel 386/486/Pentium, MIPS, SPARC, and
Motorola 68020. Data structures and protocols are designed for distributed
computing on machines of diverse design. Except for necessarily
machine-dependent parts of the kernel, the compilers, and a few libraries,
there is a single source representation for everything.

The systems supported under each architecture are:
     386
          386, 486, Pentium and clones
          see the "What PC hardware works well with Plan 9?" section of this
          faq for more information on this popular topic
     MIPS
          MIPS Magnum 3000, 6280, SGI Power Series, Indigo, Challenge M;
     SPARC
          SLC (4/20) Sparcstation 2 (4/75) have been tested, Sparcstation 1
          (4/60), IPC (4/40), 1+ (4/65), ELC (4/25), and IPX (4/50) will
          probably work too;
     68020
          Gnot, 68040 NeXTstation.

More details are available in "The Various Ports" at URL
http://plan9.bell-labs.com/plan9/doc/port.html

Subject: Is anyone working on a port for my system?

Steve Kotsopoulos has a preliminary SGI Indy R4000 port, available from
ftp://ftp.ecf.toronto.edu/pub/plan9/steve/indy.bod Bug reports welcome at
steve@fywss.com. Charles Forsyth has found that the Indy R4600 will require
more extensive changes.

Both David Hogan and forsyth (separately) ported an older version of Plan 9
to the Sun-3/50 and 3/60. David Hogan got the new release working on
Sun-3/50 and 3/60s and forsyth has tidied it up for distribution. See
http://www.caldo.demon.co.uk/plan9/dist/sun3/sun3.bundle.gz

David Hogan is also working on a port to the DEC Alpha architecture. He will
announce it when it is ready.

Charles Forsyth is working on a Plan 9 Port to the BeBox, details are at
http://www.caldo.demon.co.uk/plan9/soft/bebox.html A PowerPC compiler suite
for Plan 9 has been implemented, see
http://www.caldo.demon.co.uk/plan9/soft/power.html for details.

Neither the Amiga nor Atari are supported.

The Decstation 2100 and 3100 are not supported, but Tad Hunt has started
working on a port. Step one was to make the plan9 mips toolset output little
endian code. His patches for vl(1) to make bootable pmax code are at
http://www.fywss.com/plan9/patches/vl
Queries to tad@elwood-low.csh.rit.edu

Subject: Does it support symmetric multiprocessing?

Yes. SGI Power series multiprocessors are supported both as CPU servers and
file servers. The newer SGI Challenge series of multiprocessors and dual
processor Pentiums are only supported by Brazil, not Plan 9.

Subject: Is it object-oriented?

No, not in the conventional sense. It is written in a strict dialect of
ISO/ANSI C. In a wider sense, its general design of making all its `objects'
look like files to which one talks in a well-defined protocol shows a
related approach.

Subject: What about applications and tools?

Plan 9 comes with its own compilers for C and other languages, together with
all the commands and program-development tools originally pioneered in the
Unix environment. It also provides newly designed software. Alef is a new
language that provides threads, inter-process and inter-machine
communication through typed channels, and abstract data types. Acid is a
programmable debugger that understands multiple-process programs, and the
programs it is debugging may be running on a hardware platform different
from its own. Acme is a new user interface in which any word on the screen
can be interpreted as a command by clicking on it, and any string can
specify a file to be displayed.

Subject: What about application portability?

Plan 9 comes with a library that makes it easy to import POSIX-conforming
applications. There is also a library that emulates the Berkeley socket
interface.

Subject: Is there a fortran compiler?

No, plan9 does not have a fortran compiler. If you have fortran programs you
want to run, you can try using the f2c (fortran to C) converter available at
ftp://netlib.bell-labs.com/netlib/f2c/

Subject: What resources does it need?

As might be expected, the answer depends on what you want to do. The kernel,
the window system, and the basic applications will run comfortably on a PC
with 8MB of memory. A single diskette can hold the kernel, window system,
editor, and basic Ethernet/Internet interface. A 4-diskette set holds a
system sufficient for simple program development (compiler, loader,
debugger, more utilities).

On the other hand, the system can grow. The installation at Bell
Laboratories includes multiprocessor SGI Power Series and Challenge machines
as CPU servers, and a 350GB Sony WORM disk jukebox for the file server.

Subject: What GUIs does it support?

The standard interface doesn't use icons or drag-n-drop; Plan 9 people tend
to be text-oriented. But the window system, the editor, and the general feel
are very mousy, very point-and-click: Plan 9 windows are much more than a
bunch of glass TTYs. The system supports the graphics primitives and
libraries of basic software for building GUIs, and if need arises, the X
window system has been ported to Plan 9. [Note: The X server only runs on
MIPS systems. No one at Bell Labs is working on the port, so they didn't
ship it with the CDROM]

Subject: Does Plan 9 have any Unix-like terminal emulators?

The Plan 9 window system doesn't obey any inline cursor controls, since none
of the native applications use cursor-addressing. If you want to get from
Plan9 to Unix systems, you can run /bin/hp in one of your windows,
telnet/rlogin to Unix, and set the term/TERM variable to hp2621 on the Unix
end. See hp(1) for more details.

Subject: What character set does it use?

The character set is Unicode, the 16-bit set unified with the ISO 10646
standard for representing languages used throughout the world. The system
and its utilities support Unicode using a byte-stream representation (called
UTF-8) that is compatible with ASCII. On Plan 9, one may grep for Cyrillic
strings in a file with a Japanese name and see the results appear correctly
on the terminal.

Subject: What about security and user authentication?

Plan 9's authentication design is akin to that of MIT's Kerberos. Passwords
are never sent over networks; instead encrypted tickets are obtained from an
authentication server. It doesn't have the concept of `set UID' programs.
The file server doesn't run user programs, and except at its own console, it
doesn't allow access to protected files except by authenticated owners. The
concept of a special `root' user is gone.

Subject: How does it communicate with other systems?

The distribution includes a u9fs server that runs on Unix-compatible systems
and understands the native Plan 9 remote file protocol, so that file systems
of Unix machines may be imported into Plan 9. It also includes an
NFS-compatible server that runs on Plan 9, so that Plan 9 file systems may
be accessed from other systems that support NFS. It includes the full suite
of Internet protocols (telnet, rlogin, ftp).

Subject: Is it suitable for real time control?

No, it is not. It is a general purpose system, without an interrupt priority
scheme or real scheduler.

Installation and Administration:

Subject: What PC hardware works well with Plan 9?

If you don't want to spend time fiddling with and swapping PC hardware, you
may prefer to buy hardware that is in use within Bell Labs. If so, have a
look at the "What We Use" document by jmk@plan9.bell-labs.com, at
http://www.fywss.com/plan9/clone.html

The general recommendation would be for a 486 PCI+ISA motherboard with I/O
on the motherboard that would take a DX4-100. SIS or Intel chipset should be
OK. If you can afford it, Intel cpus have larger primary caches and less
possibility of running into incompatibilities.

A condensed summary of the hardware that is known to work follows:
     Motherboards
          AMI Enterprise IV, ACER AP41. Many people run on stock PC-clones
          such as Dell, Gateway, Micron Millenias
     Pentium motherboards
          ASUS PCI/E-P54NP4, Gigabyte GA586-ID, Tyan Tempest S1462
     VGA cards/chips
          S3 80[15], S3 928, S3 864, S3 964, S3 Trio64, S3 Trio32, Tseng
          Labs ET4000, Tseng Labs ET4000/W32p, Tseng Labs ET4000/W32i,
          ARK2000pv, CL-GD542x, CL-GD543x, C&T65540, MACH32, MACH64.
     Monitors
          IDEK 8617, Viewsonic 17, Nokia 445X, Nanao Flexscan 6500 21"
          greyscale.
     SCSI Controllers
          Buslogic controllers have been the most trouble-free, due to their
          open policy on providing programming information. Adaptec 1542
          series, Ultrastor 14F ISA and a 34F VLB.
     SCSI CD-ROM
          2x Toshiba 3401, 4X Toshiba 3601B, NEC 74 and 3Xi, 4x Plextor
          4-Plex. The Toshiba and Plextor let you read the digital audio
          over the bus.
     Non-SCSI CD-ROM
          Mitsumi, Panasonic and Matsushita, attached to a Sound Blaster
          audio card, 4X Toshiba 5302B, Mitsumi FX400 and Teac 6x drive,
          attached to an ATAPI controller. Avoid Sanyo, it doesn't execute
          the drive diagnotics command properly.
     Audio
          Sound Blaster 16 or compatible (not the Sound Blaster Pro).
     Mouse
          PS/2 or serial, as long as it has 3 buttons.
     Ethernet Adapters
          3Com 3C509, 3C509B are recommended. The EISA 3C579 works, but
          isn't worth the extra cost. The PCMCIA 3C589, PCI 3C590 and PCI
          3C595 (fast ethernet) also work. AMD 79C970 based adapters seem to
          work fine. SMC (WD) series up to the Elite (and the Elite Ultra),
          some NE2000 compatibles (including an NE4100 PCMCIA card) and one
          Eagle NE3210 EISA card. The 3Com 3C503 does not work at all under
          load. The 3Com 3C595 is not supported.

If you have time for netnews, the OS/2 and Linux newsgroups probably have
some useful information.

Another useful web page on PC hardware (with a BSDi bias) is "PC Hardware
Hints and Kinks" at http://www.vix.com/vix/pc-hw/

Subject: How do I Install Plan 9?

The installation is designed to be run from a PC. Note that Plan 9 uses an
unallocated portion at the end of the disk, and you won't see this partition
with the FDISK program.
  1. Back up your system.
  2. Make sure you've backed up your system.
  3. Read "Installing the Plan 9 Distribution" at URL
     http://plan9.bell-labs.com/plan9/doc/install.html
  4. Check the errata page at http://plan9.bell-labs.com/plan9/errata.html
     for problems and fixes found since the distribution was frozen. More
     recent bugfixes are now distributed in boddle format from the update
     directory at ftp://plan9.bell-labs.com/plan9/update
  5. Here are some more questions that have been answered on the 9fans list:
     IP configuration
          ndb/cs will set the sysname if you setup an appropriate entry in
          /lib/ndb/local. You must specify an 'ether=' entry, and the
          address should be all lower case. If all goes well, ip/ipconfig
          will then configure IP.
     Mice
          If aux/mouse is having problems guessing the protocol, you can use
          the undocumented '-d type' option to help it out. Use 'aux/mouse
          -dC $mouseport' for a Logitech type C mouse, '-dW' for a Logitech
          type W mouse, or '-dM' for a Microsoft compatible mouse.
     Name Service
          If you have having problems, first check that ndb/dns is running.
          It needs to be started in /rc/bin/termrc or /rc/bin/cpurc. Also
          note that only fully qualified names are supported, and there
          isn't a separate resolver.
     Binding and Mounting Devices
          Note that # is the shell comment character, so you must enclose it
          in single quotes. For example: bind -a '#R6' /dev
     Auth Server
          When booting a cpuserver without an auth server, if you give
          0.1.0.0 as the auth server address instead the cpu server's own
          address, you won't have to wait for it to timeout.

Subject: How can I install only part of the CDROM?

The cdrom has about 375Meg of files on it, but if you are short on disk
space you can install with much less than that. Each of the toplevel
architecture-specific directories takes up over 40Meg, so if you only have
PC's you can save over 140Meg by simply not installing /mips, /sparc and
/68020. If you don't need the source in /sys/src (shame on you), you'll save
43Meg.

The pcdist disks at ftp://plan9.bell-labs.com/plan9/pcdist contain bugfixes
that are not on the CDROM, and some of the fixes are not yet available in
source form either. If you are installing on a pc, it is probably easiest to
install the pcdist first, and then merge in whatever you want from the
cdrom.

If you use mkfs to copy the cdrom, you can make sure you don't overwrite
files that were fixed on the pcdist. You can use the following steps to load
the entire cdrom except /mips, /sparc and /68020 on a standalone pc. First,
install the latest pcdist using the standard installation procedure. Next,
mount the cdrom [this assumes scsi cdrom at device 4]

 % 9660srv
 % disk/kfscmd allow
 % mkdir /n/cd
 % mount /srv/9660 /n/cd '#R4/cd4'

Use the following to copy the filesystem rooted at /n/cd (the cdrom) to
/n/kfs (the local PC filesystem), according to the proto file
/tmp/386allproto, and without overwriting any files that are on the pcdist.

 % /n/cd/386/bin/disk/mkfs -v -s /n/cd /tmp/386allproto

Where /tmp/386allproto is the following mkfs proto file:

acme
        +
adm
        +
cron
        +
lib
        +
mail
        +
mnt
        +
rc
        +
sys
        +
usr
        +
386
        +

Subject: Will Plan 9 install on disks larger than 2 Gig?

The Bell Labs distribution is getting old and will not install reliably on
[E]IDE disks >2GB (you might get lucky if your disk is <4GB, but no
guarantees).

Use a 2GB or smaller disk for now. Someday a patch might be available.

Subject: Are there any known problems?

New pcdist files are available via ftp from
plan9.bell-labs.com/plan9/pcdist. These should fix most problems people have
had with disk configurations. There are also VGA fixes and ATAPI CD-ROMs are
included in the list of supported hardware.

Some of the source changes are available as boddles in the update directory
already but not all changes are there yet.

     Problems with Adaptec 1542C[FP]
          If the BIOS is enabled on the 1542C/CF and BIOS options for
          support of drives > 1Gb, dynamic scanning of the SCSI bus or more
          than 2 drives under DOS 5.0 are enabled, the BIOS disables
          accepting Cmbinit to protect against running with drivers which
          don't support those options. In order to unlock the interface it
          is necessary for the driver to read a lock-code using Cextbios and
          write it back using Cmbienable; the lock-code is non-zero.
          If any of the options mentioned above are on, timeout errors will
          occur. Either the BIOS or all the relevant options should be
          disabled. There is a new version of b.com on plan9.bell-labs.com
          in the pcdist subdirectory which should overcome this problem but
          it's not known if it works in all cases.
     Adaptec AHA-2xxx series controllers
          There is no support for any Adaptec AHA-2xxx series controller. It
          would be great if someone wrote a driver since these are popular
          and show up embedded on motherboards. However, it's completely
          different from any other Adaptec controller and the rumour on the
          street is that a driver would be a fair amount of work. Manuals
          are hard to get, they seem to be permanently on back-order. If
          someone wants to tackle this project, the driver for FreeBSD may
          be a good starting point.
          The NCR8xx series look to be a cheaper alternative with similar
          performance and Nigel Roles has already written a driver for it
          which is available at http://www.cotswold.demon.co.uk along with
          some other plan9 software.
     3C509B ethernet card
          Make sure you disable the Plug-and-Play option and set the
          transceiver type explicitly(don't use auto-select mode)

Subject: It doesn't work for me, how should I troubleshoot?

If you are having having SCSI problems, check your cables and terminators.
this is generally the single largest cause of weird SCSI problems. Active
terminators are best. If you run external cables you need to get high
quality ones. Also, don't crank of the speed on the card.

Subject: How do I setup the VGA?

Simple vga cards and monitors should work at 640x480x[12]. For higher
resolutions, especially on untested cards, you will have to find out more
about the card so you can configure it. The relevant manuals are: vga(3),
vgadb(6), vga(8), and b.com(8). For a detailed debugging guide (too large to
include here), see http://www.fywss.com/plan9/info/vga

Subject: How do I control the services that start at boot time?

This is controlled by shell scripts, that are roughly equivalent to the
/etc/rc files on Unix:
/rc/bin/termrc for terminals
/rc/bin/cpurc for cpu servers

See cpurc(8) for more details.

Subject: How do I setup network services?

For UDP services, you must start them up in the appropriate cpurc(8) file.
For TCP, IL, or Datakit services, you must use the listen(8) daemon.

Subject: How do I upgrade from the old release of Plan 9?

The 9P protocol has changed in the second edition, due to changes in the way
that Plan 9 does its authentication. For those using Unix-based u9fs file
servers, you will have to compile and install the new version of u9fs. For
more tips on running with a u9fs file server, see
http://www.fywss.com/plan9/info/u9fs

For those using the standard Plan 9 file servers, ken@plan9.bell-labs.com
reports that the disk format in the new release is the same, so there should
be no problems running the new FS code on old disks.

Subject: How do I install Plan 9 on a standalone Sparc?

abochann@cisco.com (Alex Bochannek) did it as follows:

1) Unpack the CD on a UNIX system and install a u9fs server.
2) Boot the SPARC off the u9fs server
3) Create a kfs on sd1 and unpack the whole CD on it.
4) Copy the file /sys/src/9/ss/sscd to /sys/src/9/ss/sssd1
5) Change the line k9660srv.root to kfs.root and change the line boot
   terminal #R6/cd6 to boot terminal #w1/sd1
6) Add sssd1 to the CONFLIST and change CONF=ss to CONF=sssd1 in the
   ss/mkfile
7) Do a make all in /sys/src/9
8) Copy the new image 9sssd1 to your favorite TFTP server (or boot
   from sd3 on your local system)

Subject: How do I install Plan 9 on a Next?

For a summary of how taweil@ucs.usc.edu (Ta-Wei Li) did it, see
http://www.fywss.com/plan9/info/next.html

Subject: How do I setup a dual boot for Plan 9 and Windows95?

For a summary of how castor@tkg.com (Castor Fu) did it, see
http://www.fywss.com/plan9/info/win95

Subject: Can I install Plan 9 with less than 8Mb of ram?

The official answer is no, 8Mb is the minimum supported memory
configuration. Some people are using it with only 4Mb though.

You'll need to borrow 4Mb from another system to get you past the install
process (where 8Mb is needed to expand the diskettes). After the install is
done, you may be able to run with only 4Mb if you set the vga at a low
resolution and/or depth, or perhaps fiddle with the kernelpercent parameter
in plan9.ini(8).

Subject: How do I stop 8c/8l from running out of memory?

In /sys/src/9/pc/mem.h, SEGMAPSIZE is set to 16 (Meg) by default. If you try
to compile ghostscript or libtiff on a PC, this value is too low. Change it
from 16 to 64; build and boot a new kernel with this setting; and you should
be fine after that.

Subject: Are there any security concerns I should be aware of?

If someone sets up their plan9 system according to the manuals, anyone on
the internet can telnet/rlogin in as 'none' without a password

To disable this anonymous access, use the undocumented '-N' option to
aux/telnetd and aux/ftp, which disallows logins as 'none'.

Since aux/rlogin execs aux/telnetd without the '-N' option, the only
protection may be to patch the source, or remove /bin/service/tcp513

Finally, ip/tftpd grants access to any world-readable file. The main concern
here is that people using u9fs as their file server probably have an
/etc/passwd file from their Unix system accessible. If so, make sure you
don't have any encrypted passwords in it, or someone could steal it and use
'crack' to break the passwords.

Subject: What is a boddle and what is it good for?

It's a bundle o' diffs: an rc script that when run with appropriate options
will apply a set of changes to the reference copy of the source from the
CDROM producing an updated copy in a subdirectory, for you to cat and diff,
and eventually cp onto the active source for a subsequent mk.

The boddle command (not in the release, fetch it from plan9.bell-labs.com)
takes a reference source and an updated version and produces a boddle file.
it comes with a manual page; read that for details.

Subject: How do I setup PPP?

First, apply the changes at
http://www.caldo.demon.co.uk/plan9/dist/bod/ppp.bod These add -9 (enable
IL/IP compression) and -m (set netmask) options to pppclient, and fix a few
bugs. Assuming you will use /dev/eia1, login to the ppp server as follows:

 1. % telco -s 38400 /dev/eia1
 2. % con -r -l telco!967-1111
 3. login and startup ppp on the server
 4. use "control \" to escape back to the >>> prompt in con, and type
        !onppp
 to link pppclient to the remote server.

 onppp is the following rc script:

#!/bin/rc
{sleep 5; echo add 0.0.0.0 0.0.0.0 128.100.8.4 >'#P/iproute' }&
exec aux/pppclient -i 128.100.8.19 -p 128.100.8.4 $*

 5. To shut down, use
        % kill pppclient | rc
    and disconnect in con.

Thanks to forsyth@caldo.demon.co.uk and craigl@tezcat.com for this section.

Subject: Where can I get unzip and gzip for Plan 9?

http://www.caldo.demon.co.uk/plan9/dist/pub/gzip.tar
http://www.caldo.demon.co.uk/plan9/dist/pub/unzip.tgz
you might need to use the -f (force) option with gzip, because it changes
behaviour based on isatty()

Subject: How do I use texinfo on Plan 9?

To use texinfo, run "tex foo.texinfo" to create foo.dvi, then use "dvips
foo.dvi > foo.ps" to create a Postscript file, which is viewable with "page"
and printable with "lp". Note: If the file foo.texinfo contains
cross-references, you may have to run "tex foo.texinfo" twice. The first
pass creates aux files and the second pass reads them.

Subject: How do I reboot my system?

The system can be rebooted by typing ^T^Tr (two control-T's followed by
'r'). Cpu servers can be rebooted by typing ^P on the console. See the
cons(3) manual for more details.

Subject: How do I tell if a file server is up?

It won't respond to ping (no icmp), but it does support arp. Of course, you
could just try connecting to it with 9p.

General Information:

Subject: Where did the name come from?

It was chosen in the Bell Labs tradition of selecting names that make
marketeers wince. The developers also wished to pay homage to the famous
film, "Plan 9 From Outer Space".

Subject: How can I Obtain Plan 9?

Complete information for purchasing the Plan 9 distribution or ftp'ing the
free PC trial version is available at URL
http://plan9.bell-labs.com/plan9/distrib.html

To summarize the information on the above webpage:

Contents

The Plan 9 distribution consists of two books, four 1.4 megabyte floppies,
and a CD-ROM. The books contain the manual pages and a collection of papers
describing the system.

The four floppies contain a complete bootable Plan 9 system for
IBM-compatible PCs (>=386). They have the kernel, the window system,
Internet support, and programming environments for both the C and Alef
languages. The CD-ROM contains everything: kernels, libraries, and utilities
for the Intel 386 (including 486 and Pentium), Sparc, 68020, and Mips
architectures and the sources to create them. It also has a selection of
interesting stuff (road maps of the US, sky catalogs).

To find out whether Plan 9 supports your hardware, read "The Various Ports"
at URL http://plan9.bell-labs.com/plan9/doc/port.html

To Order

The distribution is published by Harcourt Brace and Company. To order it
from the US call 800 782 4479.

>From Canada and the Caribbean, call 800 841 9938

Elsewhere, use +1 407 345 3800
If you are having problems getting through on the above number you can fax
your order to +1-407-345-4060.

The cost for the full kit is US$350 plus shipping; the ISBN is
0-03-017143-1. The manuals can be ordered by themselves for US$125 plus
shipping; ISBN is 0-03-017142-3. Everyone, even Lucent Technologies
employees, must order the system this way. There are no special arrangements
or deals.

Any bookshop should be able to order it for you if you give them one of the
ISBN numbers.

Free Trial

Plan 9 does not purport to run on all PCs. Since Plan 9 does not use the
BIOS, it is sensitive to hardware differences between PCs. Therefore, the
developers provide the contents of the four floppies on the Internet via FTP
for you to try out. Ftp to plan9.bell-labs.com, log in as anonymous, and get
the files from /plan9/pcdist

Subject: How can I get involved?

The best way to learn about the system is to write something that other
people in the Plan 9 user community could use, or to port the system to new
platforms. Several people have already made their applications available,
such as an http server, Unix-based authentication server, fileserver port to
the PC, etc. The current list of user-contributed software includes:

pace@blitz.com (Pace Willisson) has ported the Plan 9 authentication server
to Unix, to allow Plan 9 terminals to function without a Plan 9 cpu server
performing authentication. For more details, see
http://www.fywss.com/plan9/info/unixauth

avg@postman.ncube.com (Vadim Antonov) has provided some information on
converting terminals into multi-user hybrid cpu servers and terminals. For
his posting to 9fans, see http://www.fywss.com/plan9/info/misc/cpu_terminal

beto@plan9.cs.su.oz.au has ported a Linux QuickCam program into a Plan 9
driver which serves /dev/camera and /dev/focus. /dev/camera has the same
format than /dev/screen so most of fb/* programs work well with it. The
driver is at http://www.fywss.com/plan9/info/projects

eran@research.att.com (Eran Gabber) has ported the FreeBSD driver for the
Talisman XL MPEG-1 playback card for ISA bus to Plan 9. It displays full
motion video in a VGA window and/or generates NTSC signal. In particular,
MPEG decoding, picture resizing and video overlay are all done in hardware.
However, it doesn't use DMA due to its complex architecture.
The driver is available from http://cm.bell-labs.com/is/what/mpeg-driver
This page also points at a copyright disclaimer and installation
instructions. Please read both carefully.

bischof@informatik.Uni-Osnabrueck.DE (Hans-Peter Bischof) has written spy,
which receives the 9P messages from the kernel, displays them for
modification and sends the resulting messages to the intended server. In the
same way spy transmits the 9P replies of the server. Data spied out in this
manner can be used in many different ways.
It is available from
ftp://ftp.informatik.uni-osnabrueck.de/pub/plan9/spy.tar

bl@neon.mime.univ-paris8.fr (Bodet Laurent) has modified the dossrv file
server to read and write Linux ext2 partitions. You can find ext2srv at
ftp:://ftp.mime.univ-paris8.fr/usr/bl/ext2srv-0.2.tar.gz

Contact ngr@symbionics.co.uk if you'd like to test his Zip parallel port
driver. It does nibble mode only so works with anything, just not quickly
(reads are about 5mb a minute, writes double that).

Other software is available on the Plan 9 user community ftp site,
ftp.ecf.toronto.edu:/pub/plan9

If anyone would like their projects listed here, let me know. This should
help prevent duplication of effort, and increase involvment from the 'net
community. If you are looking for a list of suggested project topics, see
http://www.fywss.com/plan9/info/projects

Subject: How can I get more detailed technical information?

The Internet site plan9.bell-labs.com stores a collection of papers about
the system in the plan9 directory; they are available for anonymous FTP. For
a hypertext interface to these papers, see
http://plan9.bell-labs.com/plan9/vol2.html For the manual pages, see
http://plan9.bell-labs.com/plan9/vol1.html

Subject: Can I emulate Plan 9 under Unix?

Several Plan 9 inspired applications are available for Unix systems.

The sam editor is available from
ftp://plan9.bell-labs.com/plan9/unixsrc/sam/

There is also a Windows 95/NT version of Sam, currently distributed in
binary form only, available from
http://netlib.bell-labs.com/netlib/research/sam-win.zip Comments and bug
reports can be sent to seanq@research.bell-labs.com

A free re-implementation of the rc shell is available from
ftp://ftp.white.toronto.edu/pub/rc/

Wily is an acme lookalike by Gary Capell, gary@cs.su.oz.au. See
http://www.cs.su.oz.au/~gary/wily/

9wm is David Hogan's lightweight X window manager in the style of 8�. It is
available from ftp://ftp.cs.su.oz.au/dhog/9wm/ Comments to dhog@cs.su.oz.au

9term is an 8� terminal emulator by Matty Farrow, matty@cs.su.oz.au,
available from ftp://ftp.cs.su.oz.au/matty/unicode/ In the same directory,
you'll find a collection of Unicode fonts that can be used with 9term, sam
and wily.

9menu is a simple program by Arnold Robbins, arnold@gnu.ai.mit.edu, that
allows you to create X menus from the shell, where each menu item will run a
command. 9menu is intended for use with 9wm, but can be used with any other
window manager. It is available from
ftp://ftp.mathcs.emory.edu/pub/arnold/9menu-1.4.shar.gz

Copyright � 1995 Lucent Technologies. All rights reserved.
--
Steve Kotsopoulos, P. Eng	Senior Developer
steve@nevex.com			Nevex Software Technologies Inc.




^ permalink raw reply	[flat|nested] 19+ messages in thread

end of thread, other threads:[~2003-04-12  3:52 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-04-09 16:21 [9fans] Plan 9 from Bell Labs - Frequently Asked Questions [FAQ] Steve Kotsopoulos
2003-04-09 16:36 ` Russ Cox
2003-04-12  3:38 ` Kenji Arisawa
2003-04-12  3:52   ` Steve Kotsopoulos
  -- strict thread matches above, loose matches on Subject: below --
2002-03-04  2:40 Steve Kotsopoulos
2002-02-01  5:24 Steve Kotsopoulos
2002-01-05  4:53 Steve Kotsopoulos
2001-11-05 15:10 Steve Kotsopoulos
2001-10-04 12:41 Steve Kotsopoulos
     [not found] <lucio@proxima.alt.za>
     [not found] ` <20000608093850.L3828@cackle.proxima.alt.za>
2000-06-12 10:27   ` Conway Yee
2000-06-08  7:58 Lucio
2000-06-08  7:38 Lucio
2000-06-08  6:32 Scott
2000-06-08  5:28 Lucio
2000-06-08  5:12 Lucio
2000-06-08  3:46 Scott
2000-06-08  3:12 jmk
2000-06-07 20:10 Steve
2000-05-10  3:26 Steve

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).