123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180 |
- <html>
- <title>
- data
- </title>
- <body BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#330088" ALINK="#FF0044">
- <H1>Plan 9 From Bell Labs
- <br>
- Fourth Release Notes
- <br>
- April, 2002
- <br>
- updated June, 2003
- </H1>
- <br> <br>
- <DL><DT><DD><TT><PRE>
- Copyright © 2002-2003 Lucent Technologies Inc.
- All Rights Reserved
- <br> <br>
- </PRE></TT></DL>
- <br> <br>
- The fourth release of the Plan 9 operating system from Bell Labs
- packages 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.
- <br> <br>
- The most significant change is that 9P has been redesigned to address
- a number of shortcomings, most important, its previous inability to handle long
- file names.
- Unfortunately, squeezing long names onto the disks of existing
- file servers is a messy business that we're still grappling with,
- so at the moment
- <A href="/magic/man2html/4/fs"><I>fs</I>(4)
- </A>and
- <A href="/magic/man2html/4/kfs"><I>kfs</I>(4)
- </A>can't yet handle long names,
- although they do talk the new protocol.
- (In fact, they
- talk both old and new, as required, to ease transition.)
- In the meantime, there is a workaround ­
- <A href="/magic/man2html/4/lnfs"><I>lnfs</I>(4)
- </A>­
- and many of the other file servers such as
- <A href="/magic/man2html/4/ramfs"><I>ramfs</I>(4)
- </A>and
- <A href="/magic/man2html/4/u9fs"><I>u9fs</I>(4)
- </A>work just fine with long names.
- It's only the old disk-resident file servers
- that don't.
- The new file server
- <A href="/magic/man2html/4/fossil"><I>fossil</I>(4)
- </A>handles supports long names and many other features.
- The older servers are now deprecated.
- <br> <br>
- The following is a partial list of the major changes throughout the system.
- <br> <br>
- *
- The file system protocol, 9P, has been reworked.
- It now has variable-length names, so it can handle long names
- but also is more compact when handling short ones.
- It uses a different format that is easily parsed, eliminating the need for the old
- <TT>aux/fcall</TT>
- utility,
- and delegates its authentication duties to an external agent,
- <TT>factotum</TT>.
- <br> <br>
- *
- Security has been a focus of attention.
- A new security agent,
- <A href="/magic/man2html/4/factotum"><I>factotum</I>(4),
- </A>manages passwords and other secrets and, coupled with a new secure file store
- <A href="/magic/man2html/8/secstore"><I>secstore</I>(8),
- </A>enables secure single sign-on.
- <br> <br>
- *
- <TT>Cpu</TT>,
- <TT>import</TT>,
- and
- <TT>exportfs</TT>
- all encrypt their connections now, and since they use the new 9P they
- also use new network port numbers.
- A new service
- <A href="/magic/man2html/1/aan"><I>aan</I>(1)
- </A>is used by
- <TT>import</TT>
- to make its network connections more reliable in the face of network outages.
- The old ports still work, through the agency of a protocol conversion filter
- <A href="/magic/man2html/4/srvold9p"><I>srvold9p</I>(4).
- </A><br> <br>
- *
- We are phasing out the IL protocol since it doesn't handle long-distance connections
- well (and long-distance networks don't handle it well, either).
- IL is still used by
- <A href="/magic/man2html/4/fs"><I>fs</I>(4)
- </A>but TCP has become the standard protocol for all other services.
- <br> <br>
- *
- The software for the new network-resident secure block store,
- <A href="/magic/man2html/8/venti"><I>venti</I>(8),
- </A>is included with this distribution.
- The new
- file server
- <A href="/magic/man2html/4/fossil"><I>fossil</I>(4)
- </A>uses Venti rather than a WORM as its permanent block repository/backup medium.
- It is still being developed, but is mature enough that a handful of users
- throughout the world are using it as their primary file server.
- <br> <br>
- *
- The need to handle longer file names triggered a rethinking of the way the
- system handles strings in general.
- The kernel is now more explanatory when it gives an error message and
- more consistent in how it handles strings such as commands to devices.
- The interfaces to many of the system calls, such as
- <A href="/magic/man2html/2/errstr"><I>errstr</I>(2)
- </A>and
- <A href="/magic/man2html/2/wait"><I>wait</I>(2)
- </A>all had to change as a result, as did the library interface to read directories,
- <A href="/magic/man2html/2/stat"><I>stat</I>(2)
- </A>and its relatives.
- <br> <br>
- *
- The formatted I/O package described in
- <A href="/magic/man2html/2/print"><I>print</I>(2)
- </A>and
- <A href="/magic/man2html/2/fmtinstall"><I>fmtinstall</I>(2)
- </A>has been redesigned.
- Although the basic interface is unchanged, it now runs without locks and
- has an internal buffer management mechanism that means
- <TT>print</TT>
- no longer needs a large on-stack buffer.
- The interface for writing custom print verbs and custom formatted I/O routines
- has also been greatly improved.
- <br> <br>
- *
- The thread library
- <A href="/magic/man2html/2/thread"><I>thread</I>(2)
- </A>has been completely rewritten.
- The main visible change is that, coupled with the changes to printing,
- <TT>threadprint</TT>
- is gone; you can just use
- <TT>print</TT>
- or
- <TT>fprint</TT>
- at will.
- <br> <br>
- *
- Support for electronic mail has been extended in many ways and now includes
- some new spam filtering tools,
- much better (and more standard) handling of MIME messages,
- the ability to render incoming HTML mail,
- and much more.
- <br> <br>
- There are so many changes to the programming interfaces of the system
- that they are described in a separate document, entitled
- Changes to the Programming Environment in the Fourth Release of Plan 9.
- Please read it before you start updating your own software to run under the new system.
- <br> <br>
- The installation method has also changed and we're moving towards a new
- method for maintaining updates.
- The Plan 9 Wiki
- (<TT>http://plan9.bell-labs.com/wiki/plan9</TT>)
- and Usenet group
- (<TT>comp.os.plan9</TT>)
- are the places to visit to learn more and stay current.
- In particular, the installation notes are now maintained in the Wiki;
- the traditional papers on installation and start-up are gone.
- <br> <br>
- There's lots more new stuff.
- If you have problems, mail
- <TT>9trouble@plan9.bell-labs.com</TT>
- or, better, check the wiki
- <TT>http://plan9.bell-labs.com/wiki/plan9</TT>
- or ask the Usenet newsgroup
- <TT>comp.os.plan9</TT>.
- <br> <br>
- Good Luck!
- <br> <br>
- <A href=http://www.lucent.com/copyright.html>
- Copyright</A> © 2004 Lucent Technologies Inc. All rights reserved.
- </body></html>
|