Home My Page Projects Code Snippets Project Openings SML/NJ
Summary Activity Forums Tracker Lists Tasks Docs Surveys News SCM Files

SCM Repository

[smlnj] Diff of /sml/trunk/src/cm/Doc/manual.tex
ViewVC logotype

Diff of /sml/trunk/src/cm/Doc/manual.tex

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 458, Thu Oct 28 14:22:55 1999 UTC revision 459, Fri Oct 29 06:22:25 1999 UTC
# Line 612  Line 612 
612  arbitrary but unique string) ({\tt name}), the Unix command used to  arbitrary but unique string) ({\tt name}), the Unix command used to
613  start the server in a form suitable as an argument to {\tt  start the server in a form suitable as an argument to {\tt
614  Unix.execute} ({\tt cmd}), an optional ``path transformation  Unix.execute} ({\tt cmd}), an optional ``path transformation
615  function'' for converting local absolute path names to remote absolute  function'' for converting local path names to remote pathnames ({\tt
616  pathnames ({\tt pathtrans}), and a numeric ``preference'' value that  pathtrans}), and a numeric ``preference'' value that is used to choose
617  is used to choose servers at times when more than one is idle ({\tt  servers at times when more than one is idle ({\tt pref}).  The boolean
618  pref}).  The boolean result indicates success or failure of the attach  result indicates success or failure of the attach operation.
 operation.  
619    
620  An existing server can be shut down and detached using either {\tt  An existing server can be shut down and detached using {\tt
621  CM.server\_stop} or {\tt CM.server\_kill}.  The string argument in  CM.server\_stop} or {\tt CM.server\_kill}.  The string argument in
622  either case must match the {\tt name} argument of the corresponding  either case must match the {\tt name} argument of the corresponding
623  {\tt server\_start} call.  Function {\tt server\_stop} uses CM's  {\tt server\_start} call.  Function {\tt server\_stop} uses CM's
# Line 868  Line 867 
867  the conditional compilation logic.  The error message is given by the  the conditional compilation logic.  The error message is given by the
868  remainder of the line after the word {\tt error}.  remainder of the line after the word {\tt error}.
869    
870  \subsection{BNF for expressions}  \subsection{EBNF for expressions}
871    
872  \begin{tabular}{rcl}  \begin{tabular}{rcl}
873  \nt{letter} &\ar& \tl{A} \vb $\ldots$ \vb \tl{Z} \vb \tl{a} \vb $\ldots$ \vb \tl{z} \\  \nt{letter} &\ar& \tl{A} \vb $\ldots$ \vb \tl{Z} \vb \tl{a} \vb $\ldots$ \vb \tl{z} \\
# Line 1188  Line 1187 
1187  The {\tt pathtrans} argument is used when connecting to a machine with  The {\tt pathtrans} argument is used when connecting to a machine with
1188  a different file-system layout.  a different file-system layout.
1189  For local servers, it can safely be left at {\tt NONE}.  The ``path  For local servers, it can safely be left at {\tt NONE}.  The ``path
1190  transformation'' function is used to translate local absolute path  transformation'' function is used to translate local path
1191  names to their remote counterparts.  names to their remote counterparts.
1192  This can be a bit tricky to get right, especially if the  This can be a bit tricky to get right, especially if the
1193  machines use automounters or similar devices.  machines use automounters or similar devices.
1194    The {\tt pathtrans} functions consumes and produces names in CM's
1195    internal ``protocol encoding'' (see Section~\ref{sec:pathencode}).
1196    
1197  Once servers have been attached, one can invoke functions like  Once servers have been attached, one can invoke functions like
1198  {\tt CM.recomp}, {\tt CM.make}, and {\tt CM.stabilize}.  They should  {\tt CM.recomp}, {\tt CM.make}, and {\tt CM.stabilize}.  They should
# Line 1204  Line 1205 
1205  to finish what they are currently doing and bring them back to an  to finish what they are currently doing and bring them back to an
1206  ``idle'' state first.  ``idle'' state first.
1207    
1208  \subsection*{Parallel bootstrap compilation}  \subsection{Pathname protocol encoding}
1209    \label{sec:pathencode}
1210    
1211    The master-slave protocol encodes pathnames in the following way:
1212    
1213    A pathname consists of {\bf /}-separated arcs (like Unix patnames).
1214    The first arc can be interpreted relative to the current working directory,
1215    relative to the root of the file system, relative to the root of a
1216    volume (on systems that support separate volumes), or relative to a
1217    directory that corresponds to a pathname anchor.  The first character
1218    of the pathname is used to distinguish between these cases.
1219    
1220    \begin{itemize}
1221    \item If the name starts with {\bf ./}, then the name is relative to
1222    the working directory.
1223    \item If the name starts with {\bf /}, then the name is relative to
1224    the file system root.
1225    \item If the name starts with {\bf \%}, then the substring between this
1226    {\bf \%} and the first {\bf /} is used as the name of a volume and the
1227    remaining arcs are interpreted relative to the root of that volume.
1228    \item If the name starts with {\bf \$}, then the substring between
1229    this {\bf \$} and the first {\bf /} must be the name of a pathname
1230    anchor.  The remaining arcs are interpreted relative to the directory
1231    that (on the slave side) is denoted by the anchor.
1232    \item Any other name is interpreted relative to the current working
1233    directory.
1234    \end{itemize}
1235    
1236    \subsection{Parallel bootstrap compilation}
1237    
1238  The bootstrap compiler\footnote{otherwise not mentioned in this  The bootstrap compiler\footnote{otherwise not mentioned in this
1239  document} with its functions {\tt CMB.make}, {\tt CMB.deliver}, and  document} with its functions {\tt CMB.make}, {\tt CMB.deliver}, and

Legend:
Removed from v.458  
changed lines
  Added in v.459

root@smlnj-gforge.cs.uchicago.edu
ViewVC Help
Powered by ViewVC 1.0.0