Annotation of OpenXM/doc/ohp19991125.tex, Revision 1.1
1.1 ! tam 1: \documentclass{jarticle}
! 2:
! 3: %\usepackage{amsmath}
! 4:
! 5: \pagestyle{empty}
! 6:
! 7: \title{\bf Open XM $B$N@_7W$H<BAu(B}
! 8: \author{
! 9: Maekawa \\
! 10: Noro \\
! 11: : \\
! 12: : \\
! 13: }
! 14: \date{ 1999$BG/(B, 11$B7n(B25$BF|(B}
! 15:
! 16: \begin{document}
! 17: \maketitle
! 18: %\Large
! 19:
! 20: {\Large OpenXM $B$N@_7W$H<BAu(B}
! 21:
! 22:
! 23: \vspace{5mm}
! 24:
! 25: \begin{itemize} \normalsize \setlength{\itemsep}{-3mm}
! 26: \item Maekawa, Masahide (Oct., 1999 -- : CVS server)
! 27: \item Noro, Masayuki (Jan., 1996 -- : OpenXM Protocol, asir99)
! 28: \item Ohara, Katsuyoshi (Jan., 1998 -- : ox\_math)
! 29: \item Okutani, Yukio (Oct., 1999 -- : asir contrib)
! 30: \item Takayama, Nobuki (Jan., 1996 -- : OpenXM Protocol, kan)
! 31: \item Tamura, Yasushi (Nov., 1998 -- : OpenMath proxy)
! 32: \end{itemize}
! 33:
! 34:
! 35: \section{OpenXM $B$H$O!)(B}
! 36:
! 37: Open message eXchange protocol for Mathematics $B$NN,$G$"$k!#(B
! 38: $B$3$l$O!"F1<o!"$b$7$/$O0[$J$k?t3X%=%U%H$N4V$G!V%a%C%;!<%8!W$r(B
! 39: $B8r49$9$k$?$a$N5,Ls$G$"$k!#H/C<$OLnO$@59T@h@8$H9b;3?.5#@h@8$K$h$j!"(B
! 40: asir $B$H(B kan/sm1 $B$rAj8_$KJ8;zNs$G8F$S=P$95!G=$r<B8=$7$?$3$H$G$"$k!#(B
! 41: $B8=:_$G$O%U%j!<$N?t3X%=%U%H$r$`$9$s$G!"MM!9$J?t3X%=%U%H$r(B
! 42: $B#1$D$N%Q%C%1!<%8$H$7$F9%$-$J8@8l$+$i4JC1$K;H$($k$h$&$K$9$k(B
! 43: $B$N$,L\I8$G$"$k!#(B
! 44:
! 45:
! 46: \vspace{5mm}
! 47:
! 48: $B%a%C%;!<%8$N8r49J}K!(B
! 49:
! 50: $B%a%C%;!<%8$N8r49J}K!$K$OBgJL$7$F0J2<$N#2$D$NJ}K!$,$"$k!#(B
! 51:
! 52: \begin{itemize}
! 53: \item $BJ8;zNs$K$h$k%a%C%;!<%8$N8r49(B
! 54:
! 55: $BAj<jB&$N%7%9%F%`$NJ8K!$K=>$C$?%3%^%s%IJ8;zNs$K$h$j!"(B
! 56: $B%a%C%;!<%8$N8r49$r9T$J$&!#8zN(E*$G$J$$$,;H$$$d$9$$!#(B
! 57:
! 58: \item $B6&DLI=8=7A<0$K$h$k%a%C%;!<%8$N8r49(B
! 59:
! 60: $B3F%7%9%F%`Kh$K%a%C%;!<%8$rMQ0U$7$J$/$F:Q$`!#(B
! 61: $B8=:_$O(B OpenXM $B5,Ls%*%j%8%J%k$N%G!<%?7A<0$G$"$k!"(B
! 62: CMO(Common Mathematical Object format) $B7A<0!"(B
! 63: $B5Z$S(B asir $B$K$h$k(B binary $BI=8=7A<0$,$"$k!#(B
! 64: $B>-MhE*$K(B MP $B$d(B OpenMath $B$N(B XML, binary $B7A<0$J$I$N(B
! 65: $BB>$N7A<0$r$b8r49$G$-$k$h$&$K$7$F$"$k!#(B
! 66: CMO $B7A<0$K8B$C$F8@$($P!"J8;zNs$K$h$k%a%C%;!<%8$N(B
! 67: $B8r49$h$j$b$O$k$+$K8zN(E*$G$"$k!#(B
! 68: \end{itemize}
! 69:
! 70:
! 71: \section{OpenXM $B$N%a%C%;!<%89=B$(B}
! 72:
! 73: OpenXM $B$G5,Dj$5$l$F$$$k%a%C%;!<%8$O2<$N?^$N$h$&$J(B
! 74: $BO@M}9=B$$r$7$F$*$j!"5,Ls$G$O%a%C%;!<%8$rO@M}E*$K(B
! 75: OX $BAX!"(B SM $BAX!"(B CMO $BAX$K$o$1$FDj5A$7$F$$$k!#(B
! 76:
! 77: \[ \overbrace{
! 78: \underbrace{
! 79: \begin{tabular}{|c|} \hline
! 80: \hspace{15mm} \\ \hline
! 81: \end{tabular}
! 82: }_{\mbox{OX tag}}
! 83: \underbrace{
! 84: \begin{tabular}{|c|} \hline
! 85: \hspace{80mm} \\ \hline
! 86: \end{tabular}
! 87: }_{\begin{array}{l}
! 88: \mbox{SM(Stack Machine command)}
! 89: \rightarrow \mbox{$B%3%s%H%m!<%kMQ(B}\\
! 90: \left. \begin{array}{l}
! 91: \mbox{CMO $B%G!<%?(B} \\
! 92: \mbox{ASIR $BFH<+(B binary} \\
! 93: \mbox{OpenMath XML} \\
! 94: \vdots \\
! 95: \end{array} \right\} \rightarrow \mbox{$B%G!<%?MQ(B} \\
! 96: \end{array}}
! 97: }^{\mbox{OX $B%a%C%;!<%8(B}} \]
! 98:
! 99: $B$J$*!"(B SM(Stack Machine command) $B$H$O%W%m%;%9$K(B
! 100: $BBP$9$kF0:n$r;XDj$9$k%a%C%;!<%8$G$"$k!#(B
! 101: $B$3$l$i0J30$N5,Dj30$N%G!<%?$N%a%C%;!<%8$N$d$j$H$j$r(B
! 102: $B9T$J$&$3$H$b2DG=$H$J$C$F$*$j!"<B:]$K(B asir $B$H(B ifplot $B$N4V$G(B
! 103: $BFH<+I=8=$N%a%C%;!<%8$,$9$G$KB8:_$7!"<BAu$5$l$F$$$k!#(B
! 104:
! 105:
! 106: \section{OpenXM $B$G$N7W;;$N?J9T%b%G%k(B}
! 107:
! 108: OpenXM $B$G$O(B server $B$r(B StackMachine $B$H$7$F$$$k!#(B
! 109:
! 110: $B%*%V%8%'%/%H%G!<%?$,(B client $B$+$i(B server $B$XAw$i$l$F$b!"(B
! 111: $B$=$N%G!<%?$O;XDj$,$J$$8B$j(B server $B$N(B stack $B$K@Q$^$l$k$@$1$G!"(B
! 112: client $B$+$i$N0MMj$,$J$$8B$j!"(B server $B$O7W;;$r9T$J$o$J$$!#(B
! 113:
! 114: client $B$+$i%3%^%s%I$,Aw$i$l$k$H(B server $B$O(B stack $B$+$i(B
! 115: $BI,MW$J$@$1%G!<%?$r<h$j=P$7!"4X?t8F$S=P$7$N0z?t$H$7$F7W;;$r9T$J$$!"(B
! 116: $B7W;;7k2L$r(B stack $B$K@Q$`!#(B
! 117: server $B$O$?$H$(%(%i!<$,5/$3$C$F$b!"(B
! 118: $B$?$@C1$K%(%i!<%*%V%8%'%/%H$r(B stack $B$K@Q$`$@$1$G!"(B
! 119: $B@Q6KE*$K%a%C%;!<%8$NAw?.$r9T$J$*$&$H$O$7$J$$!#(B
! 120:
! 121: $B7k2L$r(B server $B$+$i(B client $B$XAw?.$5$;$k$?$a$K$O!"(B
! 122: client $B$,(B server $B$K7k2LAwIU0MMj$N%a%C%;!<%8$rAw$l$P$h$$!#(B
! 123: $B$3$N%a%C%;!<%8$r<u$1<h$C$?(B server $B$O(B stack $B$+$i%G!<%?$r(B
! 124: $B<h$j=P$7!"$3$3$G=i$a$F(B client $B$K%G!<%?$rAw?.$9$k!#(B
! 125:
! 126: $B$D$^$j!"(B OpenXM $B5,Ls$G$N(B client, server $B%b%G%k$O!"(B
! 127: RPC $B$N$h$&$K(B client $B$,(B server $B$N1~Ez$rBT$D$o$1$G$O$J$/!"(B
! 128: $B!VHsF14|E*$KF0:n!W$r9T$J$&!#$b$7!"(B RPC $B$N$h$&$KF0:n(B
! 129: $B$5$;$?$$>l9g$G$b!"$3$N%b%G%k$J$i%(%_%e%l!<%7%g%s$b2DG=$G$"$k!#(B
! 130:
! 131: $B0J2<!"%a%C%;!<%8$N8r49$rJ8;zNs$K$h$C$F9T$J$&J}K!$H(B
! 132: CMO $B7A<0$K$h$C$F9T$J$&J}K!$H$KJ,$1$F=g$rDI$C$F(B
! 133: $B@bL@$7$h$&!#(B
! 134:
! 135: \begin{enumerate}
! 136: \item client $B$,(B server $B$X%G!<%?$rAw$k!#(B \\
! 137: server $B$O<u$1<h$C$?%G!<%?$r%9%?%C%/$K@Q$`!#(B
! 138:
! 139: \begin{center}
! 140: client $\stackrel{\mbox{``3+5''}}{\longrightarrow}$ server \hspace{7mm}
! 141: \begin{tabular}{c} \hline
! 142: \multicolumn{1}{|c|}{``3+5''} \\ \hline
! 143: stack
! 144: \end{tabular}
! 145: \end{center}
! 146:
! 147: \item client $B$,(B server $B$X7W;;<B9T0MMj$N%a%C%;!<%8$rAw$k!#(B
! 148: server $B$O7W;;$r<B9T$7!"7k2L$r(B stack $B$K@Q$`!#(B
! 149:
! 150: \begin{center}
! 151: client $\stackrel{\mbox{executeStringByLocalParser}}{\longrightarrow}$ server \hspace{7mm}
! 152: \begin{tabular}{c} \hline
! 153: \multicolumn{1}{|c|}{$8$} \\ \hline
! 154: stack
! 155: \end{tabular}
! 156: \end{center}
! 157:
! 158: $B!v%(%i!<$,5/$-$?>l9g$K$O%(%i!<%*%V%8%'%/%H$r(B stack $B$K@Q$`(B
! 159:
! 160: \item client $B$,(B server $B$X7k2LAwIU0MMj$N%a%C%;!<%8$rAw$k!#(B
! 161: server $B$O(B stack $B$+$i%G!<%?$r<h$j=P$7!"(B client $B$XAw$k!#(B
! 162:
! 163: \begin{center}
! 164: client
! 165: \begin{tabular}{c}
! 166: $\stackrel{\mbox{popString}}{\longrightarrow}$ \\
! 167: $\stackrel{\mbox{``8''}}{\longleftarrow}$
! 168: \end{tabular}%
! 169: server \hspace{7mm}
! 170: \begin{tabular}{c} %\hline
! 171: \multicolumn{1}{|c|}{$$} \\ \hline
! 172: stack
! 173: \end{tabular}
! 174: \end{center}
! 175: \end{enumerate}
! 176:
! 177: client $B$H$7$F(B asir $B$rMQ$$!"0J>e$N$3$H$r9T$J$&>l9g$K$O(B
! 178: $B<!$N$h$&$K$J$k!#(B
! 179:
! 180: \begin{verbatim}
! 181: 1:ox_execute_string(0,"3+5;");
! 182: 2:ox_pop_string(0);
! 183: \end{verbatim}
! 184:
! 185: 1 $B9TL\$GJ8;zNs(B ``{\tt 3+5;}'' $B$H!"(B SM $B%3%^%s%I(B
! 186: {\tt executeStringByLocalParser} $B$r(B server $BB&$XAw$C$F$$$k!#(B
! 187: $B$3$N;~E@$G(B server $BB&$N(B stack $B$K$O7W;;7k2L$,@Q$^$l$k!#(B
! 188: 2 $B9TL\$G(B SM $B%3%^%s%I(B {\tt popString} $B$r(B server $BB&$XAw$j!"(B
! 189: stack $B$K@Q$^$l$F$$$k7W;;7k2L$rJ8;zNs7A<0$K(B
! 190: $BD>$7$F(B pop $B$7$F$b$i$C$F$$$k!#(B
! 191:
! 192:
! 193: \begin{enumerate}
! 194: \item client $B$,(B server $B$X%G!<%?$rAw$k!#(B \\
! 195: server $B$O<u$1<h$C$?%G!<%?$r%9%?%C%/$K@Q$`!#(B
! 196:
! 197: \begin{center}
! 198: client $\stackrel{3,5,2,\mbox{``plus''}}{\longrightarrow}$ server \hspace{7mm}
! 199: \begin{tabular}{c} \hline
! 200: \multicolumn{1}{|c|}{``plus''} \\ \hline
! 201: \multicolumn{1}{|c|}{$2$} \\ \hline
! 202: \multicolumn{1}{|c|}{$5$} \\ \hline
! 203: \multicolumn{1}{|c|}{$3$} \\ \hline
! 204: stack
! 205: \end{tabular}
! 206: \end{center}
! 207:
! 208: \item client $B$,(B server $B$X7W;;<B9T0MMj$N%a%C%;!<%8$rAw$k!#(B
! 209: server $B$O7W;;$r<B9T$7!"7k2L$r(B stack $B$K@Q$`!#(B
! 210:
! 211: \begin{center}
! 212: client $\stackrel{\mbox{executeFunction}}{\longrightarrow}$ server \hspace{7mm}
! 213: \begin{tabular}{c} \hline
! 214: \multicolumn{1}{|c|}{$8$} \\ \hline
! 215: stack
! 216: \end{tabular}
! 217: \end{center}
! 218:
! 219: $B!v%(%i!<$,5/$-$?>l9g$K$O%(%i!<%*%V%8%'%/%H$r(B stack $B$K@Q$`(B
! 220:
! 221: \item client $B$,(B server $B$X7k2LAwIU0MMj$N%a%C%;!<%8$rAw$k!#(B
! 222: server $B$O(B stack $B$+$i%G!<%?$r<h$j=P$7!"(B client $B$XAw$k!#(B
! 223:
! 224: \begin{center}
! 225: client
! 226: \begin{tabular}{c}
! 227: $\stackrel{\mbox{popCMO}}{\longrightarrow}$ \\
! 228: $\stackrel{8}{\longleftarrow}$
! 229: \end{tabular}%
! 230: server \hspace{7mm}
! 231: \begin{tabular}{c} %\hline
! 232: \multicolumn{1}{|c|}{$$} \\ \hline
! 233: stack
! 234: \end{tabular}
! 235: \end{center}
! 236: \end{enumerate}
! 237:
! 238: client $B$H$7$F(B asir $B$rMQ$$!"0J>e$N$3$H$r9T$J$&>l9g$K$O(B
! 239: $B<!$N$h$&$K$J$k!#(B
! 240:
! 241: \begin{verbatim}
! 242: 1:ox_push_cmo(0,3);
! 243: 2:ox_push_cmo(0,5);
! 244: 3:ox_push_cmo(0,2);
! 245: 4:ox_push_cmo(0,"plus");
! 246: 5:ox_push_cmd(0,269);
! 247: 6:ox_pop_cmo(0);
! 248: \end{verbatim}
! 249:
! 250: 1-4 $B9TL\$GJ8;zNs(B ``{\tt 3+5;}'' $B$H!"(B SM $B%3%^%s%I(B
! 251: {\tt executeStringByLocalParser} $B$r(B server $BB&$XAw$C$F$$$k!#(B
! 252: $B$3$N;~E@$G(B server $BB&$N(B stack $B$K$O7W;;7k2L$,@Q$^$l$k!#(B
! 253: 5 $B9TL\$G(B SM $B%3%^%s%I(B {\tt popString} $B$r(B server $BB&$XAw$j!"(B
! 254: stack $B$K@Q$^$l$F$$$k7W;;7k2L$rJ8;zNs7A<0$K(B
! 255: $BD>$7$F(B pop $B$7$F$b$i$C$F$$$k!#(B
! 256:
! 257:
! 258: \section{CMO $B$K$D$$$F(B}
! 259:
! 260: CMO $B$O?^$N$h$&$K%G!<%?$N<oJL$r<($9(B tag $B$H%G!<%?K\BN$+$i@.$k!#(B
! 261:
! 262: \[ \underbrace{
! 263: \begin{tabular}{|c|} \hline
! 264: \hspace{15mm} \\ \hline
! 265: \end{tabular}
! 266: }_{\mbox{CMO tag}}
! 267: \underbrace{
! 268: \begin{tabular}{|c|} \hline
! 269: \hspace{75mm} \\ \hline
! 270: \end{tabular}
! 271: }_{\mbox{\begin{tabular}{l}
! 272: $B%G!<%?(B \\
! 273: \end{tabular}}} \]
! 274:
! 275: ex. CMO\_ZZ($BB?G\D9@0?t(B)
! 276:
! 277: \begin{tabular}{|c|c|c|c|c|} \hline
! 278: int32 CMO\_ZZ & int32 $n$ & int32 $b_0$ & $\cdots$ & int32 $b_{|n|-1}$ \\ \hline
! 279: \end{tabular}
! 280:
! 281: \[ \mbox{sgn}(n) \times \left( b_0 \cdot (2^{32})^0
! 282: + b_1 \cdot (2^{32})^1 + \cdots
! 283: + b_{n-1} \cdot (2^{32})^{n-1} \right) \]
! 284: $B$rI=$9!#$?$@$7!"(B
! 285: $ \mbox{sgn}(n) = \left\{ \begin{array}{ll}
! 286: 1 & n>0 \\
! 287: 0 & n=0 \\
! 288: -1 & n<0 \\ \end{array} \right. $ \\[10mm]
! 289:
! 290: CMO\_ZZ $B$K$h$k(B $4294967298 = 1 \cdot 2^{32} + 2$ $B$NI=8=Nc(B
! 291:
! 292: \[ \underbrace{\tt 00\ 00\ 00\ 14\ }_{CMO\_ZZ}
! 293: \underbrace{\tt 00\ 00\ 00\ 02\ }_{$BD9$5(B 2 $B$+$D@5(B}
! 294: \underbrace{\tt 00\ 00\ 00\ 02\ }_{b_0}
! 295: \underbrace{\tt 00\ 00\ 00\ 01\ }_{b_1} \] \\
! 296:
! 297: CMO\_ZZ $B$K$h$k(B $-1$ $B$NI=8=Nc(B
! 298:
! 299: \[ \underbrace{\tt 00\ 00\ 00\ 14\ }_{CMO\_ZZ}
! 300: \underbrace{\tt ff\ ff\ ff\ ff\ }_{$BD9$5(B 1 $B$+$DIi(B}
! 301: \underbrace{\tt 00\ 00\ 00\ 01\ }_{b_0} \] \\
! 302:
! 303: network byte order $B$r;H$C$?>l9g!"(B 10Mb $BDx$N%G!<%?E>Aw;~$K!"(B
! 304: byte order $B$NJQ49$K(B 8,9 $B3d$[$I$N;~4V$,$+$+$C$F$$$k!#(B
! 305:
! 306:
! 307: \section{MathCap $B$K$D$$$F(B}
! 308:
! 309: server, client $B6&$K!"(B OpenXM $B$G5,Dj$5$l$F$$$kA4$F$N%a%C%;!<%8$r(B
! 310: $BM}2r$G$-$k$H$O8B$i$J$$!#(B
! 311: $B$7$+$7!"Aj<jB&$,M}2r$G$-$J$$%a%C%;!<%8$rAw$C$F$7$^$C$?>l9g$G$b(B
! 312: $B$=$l0J8e$N%a%C%;!<%8$N8r49$K;Y>c$r$-$?$5$J$$$h$&$K%a%C%;!<%8$N(B
! 313: $BD9$5$rE:IU$9$k$N$O8zN($,$o$k$/$J$k!#(B
! 314: $B$=$N$?$a!"(B OpenXM $B$G$OAj<jB&$NM}2r2DG=$J%a%C%;!<%8$r<}F@$9$kJ}K!$r(B
! 315: $BMQ0U$7$F$$$k!#(B MathCap $B$H$O$3$NM}2r2DG=$J%a%C%;!<%8<oJL$rI=$9%G!<%?$G$"$j!"(B
! 316: MathCap $B<+?H$b$^$?(B CMO $B$G$"$k!#$3$N$?$a!"APJ}6&$K>/$J$/$H$b(B
! 317: CMO $B$N4pK\E*$J%G!<%?7A<0(B(CMO\_MATHCAP, CMO\_LIST, CMO\_STRING, CMO\_INT32)$B$,(B
! 318: $BM}2r$G$-$kI,MW$,$"$k!#(B
! 319: \footnote{$B$3$l$i$O(B CMO Basic0 $B%0%k!<%W$H$7$F5,Dj$5$l$F$*$j!"(B
! 320: OpenXM $B5,Ls$r<BAu$9$kA4$F$N(B server $B$,<BAu$7$F$$$k$H2>Dj$7$F$$$k!#(B}
! 321:
! 322: MathCap $B$OD9$5$,(B 3 $B$N%j%9%H$+$i$J$k!#(B
! 323:
! 324: \begin{center}
! 325: \begin{tabular}{|c|} \hline
! 326: %(server $B>pJs(B) \\
! 327: $[$ version number(INT32), server name(STRING) ,... $]$ \\[2mm] \hline
! 328:
! 329: %($BM}2r2DG=$J(B SM $B%a%C%;!<%8(B) \\
! 330: $[$ ($BM}2r2DG=$J(B SM $B$N(B tag list) $]$ \\[2mm] \hline
! 331:
! 332: %($BM}2r2DG=$J%G!<%?7A<0(B) \\
! 333: \\[-4mm]
! 334: \begin{tabular}{|c|} \hline
! 335: %($B=hM}2DG=$J%G!<%?$N7A<0(B) \\[2mm]
! 336: $[$ (OX $B$N(B tag list) $]$ \\[2mm] \hline
! 337: $[$ $B7A<0(B 1 $B$N>pJs(B, $B7A<0(B 2 $B$N>pJs(B,... $]$ \\[2mm] \hline
! 338: \end{tabular} \\[6mm] \hline
! 339: \end{tabular}
! 340: \end{center}
! 341:
! 342: \vspace{5mm}
! 343:
! 344: $B8=:_$N(B ox\_asir $B$N(B MathCap
! 345:
! 346: \begin{verbatim}
! 347: [ [199901160,ox_asir],
! 348: [276,275,258,262,263,266,267,268,274
! 349: ,269,272,265,264,273,300,270,271],
! 350: [ [514,2144202544],
! 351: [1,2,3,4,5,2130706433,2130706434
! 352: ,17,19,20,21,22,24,25,26,31,27,33,60],
! 353: [0,1]
! 354: ]
! 355: ]
! 356: \end{verbatim}
! 357:
! 358: CMO $B$,M}2r$G$-$k$3$H$H!"(BCMO $B$NO@M}E*9=B$$,M}2r$G$-$k$3$H$H$O(B
! 359: $B$^$C$?$/JL$G$"$j!"8=:_$N$3$N(B MathCap $B$N%G!<%?7A<0$G$O!"(B
! 360: $BM}2r2DG=$JO@M}E*9=B$$^$G$O$o$+$i$J$$!#(B
! 361:
! 362:
! 363: \section{security $BBP:v(B}
! 364:
! 365: OpenXM $B$G$O0J2<$N$h$&$J%;%-%e%j%F%#BP:v$r;\$7$F$$$k!#(B
! 366:
! 367: \begin{itemize}
! 368: \item $B@\B3$,I,MW$J;~$K$@$1!"(B client $B$,(B server socket $B$r3+$/!#(B
! 369:
! 370: $B>o;~!"8}$r3+$1$F$$$k$o$1$G$O$J$$$N$G!"(B crack $B$5$l$K$/$$!#(B
! 371:
! 372: \item client $B$,@\B3$9$k(B port number $B$r%i%s%@%`$K7hDj$9$k!#(B
! 373:
! 374: $B$I$3$K8}$,3+$/$+J,$+$i$J$$$N$G!"(B crack $B$5$l$K$/$/$J$k!#(B
! 375:
! 376: \item $B@\B3;~$K(B client $B$,%i%s%@%`$J(B one time password $B$rH/9T$7!"(B
! 377: $BG'>Z$r9T$J$&!#(B
! 378:
! 379: local $B$J%^%7%s$G$J$$$H(B password $B$,$o$+$i$J$$!#(B
! 380: \end{itemize}
! 381:
! 382: $B@\B38e$N%a%C%;!<%8$NAw<u?.$K4X$7$F$O!"8=:_$O(B
! 383: $BI,MW$,$"$l$P(B ssh $B$N(B port forwarding $B5!G=$r(B
! 384: $B;H$($P$h$$$H9M$($F$$$k!#(B
! 385:
! 386:
! 387: \section{$BB>$N%W%m%8%'%/%H$K$D$$$F(B}
! 388:
! 389: \begin{itemize}
! 390: \item OpenMath
! 391:
! 392: http://www.openmath.org/omsoc/index.html
! 393: A.M.Cohen
! 394:
! 395: $B?t3XE*$J%*%V%8%'%/%H$N(B format $B$N7hDj!#(B
! 396: $B<g$K(B XML $B$r;HMQ$7$F$$$k!#(B
! 397: \item NetSolve
! 398:
! 399: http://www.cs.utk.edu/netsolve/
! 400:
! 401: OpenXM $B$H;wDL$C$F$$$k$,!"?tCM7W;;;X8~$,9b$$!#(B
! 402: \item MP
! 403:
! 404: http://symbolicNet.mcs.kent.edu/SN/areas/protocols/mp.html
! 405:
! 406: tree $B9=B$!#(B
! 407: \item MCP
! 408:
! 409: http://horse.mcs.kent.edu/\~{ }pwang/
! 410: pwang@mcs.kent.edu
! 411: \end{itemize}
! 412:
! 413:
! 414: \begin{verbatim}
! 415: <OMOBJ>
! 416: <OMA>
! 417: <OMS cd="basic" name="plus"/>
! 418: <OMI> 1 </OMI>
! 419: <OMV name="x"/>
! 420: </OMA>
! 421: </OMOBJ>
! 422: \end{verbatim}
! 423:
! 424:
! 425: \section{$B8=:_Ds6!$7$F$$$k%=%U%H%&%'%"(B}
! 426:
! 427: \begin{itemize}
! 428: \item asir + ox\_asir + ox\_sm1 + ox\_gnuplot + ox\_math
! 429: + ox\_phc + ox\_tiger + OMproxy
! 430: \item sm1 + ox\_asir + ox\_sm1 + ox\_gnuplot + ox\_math
! 431: + ox\_phc + ox\_tiger + OMproxy
! 432: \item Mathematica + ox\_asir + ox\_sm1 + ox\_gnuplot + ox\_math
! 433: + ox\_phc + ox\_tiger + OMproxy
! 434: \item JAVA + ox\_asir + ox\_sm1
! 435: \end{itemize}
! 436:
! 437:
! 438: \vspace{10mm}
! 439: %\pagebreak
! 440:
! 441: asir $B$K$h$k%G%b%W%m%0%i%`(B
! 442:
! 443: \begin{verbatim}
! 444: This is Asir, Version 991116.
! 445: Copyright (C) FUJITSU LABORATORIES LIMITED.
! 446: 3 March 1994. All rights reserved.
! 447: [0] load("xm");
! 448: 1
! 449: xm Version 19991118. ox_help(0); ox_help("keyword"); for hel
! 450: p message
! 451: [101] gnuplot_start();
! 452: 0
! 453: [102] gnuplot(0,"plot sin(x);");
! 454: 0
! 455: [103] Heat_N=20; heat(0.001,30);
! 456: \end{verbatim}
! 457:
! 458:
! 459: \vspace{5mm}
! 460:
! 461: CVS $B%5!<%P(B, CVS web $B$rMQ$$$?3+H/(B(FreeBSD $B%9%?%$%k(B)
! 462:
! 463:
! 464: \end{document}
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>