release4.html 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180
  1. <html>
  2. <title>
  3. data
  4. </title>
  5. <body BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#330088" ALINK="#FF0044">
  6. <H1>Plan 9 From Bell Labs
  7. <br>
  8. Fourth Release Notes
  9. <br>
  10. April, 2002
  11. <br>
  12. updated June, 2003
  13. </H1>
  14. <br>&#32;<br>
  15. <DL><DT><DD><TT><PRE>
  16. Copyright &#169; 2002-2003 Lucent Technologies Inc.
  17. All Rights Reserved
  18. <br>&#32;<br>
  19. </PRE></TT></DL>
  20. <br>&#32;<br>
  21. The fourth release of the Plan 9 operating system from Bell Labs
  22. packages a major overhaul of the system at every level.
  23. From the underlying file system protocol, 9P, through the kernel,
  24. libraries, and applications, almost everything has been modified
  25. and, in many cases, redesigned or rewritten.
  26. <br>&#32;<br>
  27. The most significant change is that 9P has been redesigned to address
  28. a number of shortcomings, most important, its previous inability to handle long
  29. file names.
  30. Unfortunately, squeezing long names onto the disks of existing
  31. file servers is a messy business that we're still grappling with,
  32. so at the moment
  33. <A href="/magic/man2html/4/fs"><I>fs</I>(4)
  34. </A>and
  35. <A href="/magic/man2html/4/kfs"><I>kfs</I>(4)
  36. </A>can't yet handle long names,
  37. although they do talk the new protocol.
  38. (In fact, they
  39. talk both old and new, as required, to ease transition.)
  40. In the meantime, there is a workaround &#173;
  41. <A href="/magic/man2html/4/lnfs"><I>lnfs</I>(4)
  42. </A>&#173;
  43. and many of the other file servers such as
  44. <A href="/magic/man2html/4/ramfs"><I>ramfs</I>(4)
  45. </A>and
  46. <A href="/magic/man2html/4/u9fs"><I>u9fs</I>(4)
  47. </A>work just fine with long names.
  48. It's only the old disk-resident file servers
  49. that don't.
  50. The new file server
  51. <A href="/magic/man2html/4/fossil"><I>fossil</I>(4)
  52. </A>handles supports long names and many other features.
  53. The older servers are now deprecated.
  54. <br>&#32;<br>
  55. The following is a partial list of the major changes throughout the system.
  56. <br>&#32;<br>
  57. *
  58. The file system protocol, 9P, has been reworked.
  59. It now has variable-length names, so it can handle long names
  60. but also is more compact when handling short ones.
  61. It uses a different format that is easily parsed, eliminating the need for the old
  62. <TT>aux/fcall</TT>
  63. utility,
  64. and delegates its authentication duties to an external agent,
  65. <TT>factotum</TT>.
  66. <br>&#32;<br>
  67. *
  68. Security has been a focus of attention.
  69. A new security agent,
  70. <A href="/magic/man2html/4/factotum"><I>factotum</I>(4),
  71. </A>manages passwords and other secrets and, coupled with a new secure file store
  72. <A href="/magic/man2html/8/secstore"><I>secstore</I>(8),
  73. </A>enables secure single sign-on.
  74. <br>&#32;<br>
  75. *
  76. <TT>Cpu</TT>,
  77. <TT>import</TT>,
  78. and
  79. <TT>exportfs</TT>
  80. all encrypt their connections now, and since they use the new 9P they
  81. also use new network port numbers.
  82. A new service
  83. <A href="/magic/man2html/1/aan"><I>aan</I>(1)
  84. </A>is used by
  85. <TT>import</TT>
  86. to make its network connections more reliable in the face of network outages.
  87. The old ports still work, through the agency of a protocol conversion filter
  88. <A href="/magic/man2html/4/srvold9p"><I>srvold9p</I>(4).
  89. </A><br>&#32;<br>
  90. *
  91. We are phasing out the IL protocol since it doesn't handle long-distance connections
  92. well (and long-distance networks don't handle it well, either).
  93. IL is still used by
  94. <A href="/magic/man2html/4/fs"><I>fs</I>(4)
  95. </A>but TCP has become the standard protocol for all other services.
  96. <br>&#32;<br>
  97. *
  98. The software for the new network-resident secure block store,
  99. <A href="/magic/man2html/8/venti"><I>venti</I>(8),
  100. </A>is included with this distribution.
  101. The new
  102. file server
  103. <A href="/magic/man2html/4/fossil"><I>fossil</I>(4)
  104. </A>uses Venti rather than a WORM as its permanent block repository/backup medium.
  105. It is still being developed, but is mature enough that a handful of users
  106. throughout the world are using it as their primary file server.
  107. <br>&#32;<br>
  108. *
  109. The need to handle longer file names triggered a rethinking of the way the
  110. system handles strings in general.
  111. The kernel is now more explanatory when it gives an error message and
  112. more consistent in how it handles strings such as commands to devices.
  113. The interfaces to many of the system calls, such as
  114. <A href="/magic/man2html/2/errstr"><I>errstr</I>(2)
  115. </A>and
  116. <A href="/magic/man2html/2/wait"><I>wait</I>(2)
  117. </A>all had to change as a result, as did the library interface to read directories,
  118. <A href="/magic/man2html/2/stat"><I>stat</I>(2)
  119. </A>and its relatives.
  120. <br>&#32;<br>
  121. *
  122. The formatted I/O package described in
  123. <A href="/magic/man2html/2/print"><I>print</I>(2)
  124. </A>and
  125. <A href="/magic/man2html/2/fmtinstall"><I>fmtinstall</I>(2)
  126. </A>has been redesigned.
  127. Although the basic interface is unchanged, it now runs without locks and
  128. has an internal buffer management mechanism that means
  129. <TT>print</TT>
  130. no longer needs a large on-stack buffer.
  131. The interface for writing custom print verbs and custom formatted I/O routines
  132. has also been greatly improved.
  133. <br>&#32;<br>
  134. *
  135. The thread library
  136. <A href="/magic/man2html/2/thread"><I>thread</I>(2)
  137. </A>has been completely rewritten.
  138. The main visible change is that, coupled with the changes to printing,
  139. <TT>threadprint</TT>
  140. is gone; you can just use
  141. <TT>print</TT>
  142. or
  143. <TT>fprint</TT>
  144. at will.
  145. <br>&#32;<br>
  146. *
  147. Support for electronic mail has been extended in many ways and now includes
  148. some new spam filtering tools,
  149. much better (and more standard) handling of MIME messages,
  150. the ability to render incoming HTML mail,
  151. and much more.
  152. <br>&#32;<br>
  153. There are so many changes to the programming interfaces of the system
  154. that they are described in a separate document, entitled
  155. Changes to the Programming Environment in the Fourth Release of Plan 9.
  156. Please read it before you start updating your own software to run under the new system.
  157. <br>&#32;<br>
  158. The installation method has also changed and we're moving towards a new
  159. method for maintaining updates.
  160. The Plan 9 Wiki
  161. (<TT>http://plan9.bell-labs.com/wiki/plan9</TT>)
  162. and Usenet group
  163. (<TT>comp.os.plan9</TT>)
  164. are the places to visit to learn more and stay current.
  165. In particular, the installation notes are now maintained in the Wiki;
  166. the traditional papers on installation and start-up are gone.
  167. <br>&#32;<br>
  168. There's lots more new stuff.
  169. If you have problems, mail
  170. <TT>9trouble@plan9.bell-labs.com</TT>
  171. or, better, check the wiki
  172. <TT>http://plan9.bell-labs.com/wiki/plan9</TT>
  173. or ask the Usenet newsgroup
  174. <TT>comp.os.plan9</TT>.
  175. <br>&#32;<br>
  176. Good Luck!
  177. <br>&#32;<br>
  178. <A href=http://www.lucent.com/copyright.html>
  179. Copyright</A> &#169; 2004 Lucent Technologies Inc. All rights reserved.
  180. </body></html>