version 1.1, 2003/12/04 03:03:17 |
version 1.3, 2003/12/09 03:10:11 |
Line 62 master-server $B4V$NDL?.O)$O(B, server $B$,5/F0$7$? |
|
Line 62 master-server $B4V$NDL?.O)$O(B, server $B$,5/F0$7$? |
|
\begin{enumerate} |
\begin{enumerate} |
\item |
\item |
\begin{verbatim} |
\begin{verbatim} |
SM_set_rank |
SM_set_rank_102 |
\end{verbatim} |
\end{verbatim} |
|
|
server $B4V$N(B broadcast $B$O(B, $B$$$/$D$+$N(B server $B$r%0%k!<%W2=$7$F9T$&$N$,(B |
server $B4V$N(B broadcast $B$O(B, $B$$$/$D$+$N(B server $B$r%0%k!<%W2=$7$F9T$&$N$,(B |
Line 73 $nserver$ $B$H(B, $B$=$N%0%k!<%WFb$G$N<1JL;R(B $ra |
|
Line 73 $nserver$ $B$H(B, $B$=$N%0%k!<%WFb$G$N<1JL;R(B $ra |
|
|
|
Request: |
Request: |
\begin{tabular}{|c|c|} \hline |
\begin{tabular}{|c|c|} \hline |
{\tt int32 OX\_COMMAND} & {\tt int32 SM\_set\_rank} \\ \hline |
{\tt int32 OX\_COMMAND} & {\tt int32 SM\_set\_rank\_102} \\ \hline |
{\tt int32 $nproc$} & {\tt int32 $rank$} \\ |
{\tt int32 $nserver$} & {\tt int32 $rank$} \\ |
\hline |
\hline |
\end{tabular} |
\end{tabular} |
|
|
|
|
|
|
\item |
\item |
\begin{verbatim} |
\begin{verbatim} |
SM_tcp_accept |
SM_tcp_accept_102 |
\end{verbatim} |
\end{verbatim} |
|
|
Request: |
Request: |
\begin{tabular}{|c|c|} \hline |
\begin{tabular}{|c|c|} \hline |
{\tt int32 OX\_COMMAND} & {\tt int32 SM\_accept} \\ \hline |
{\tt int32 OX\_COMMAND} & {\tt int32 SM\_accept\_102} \\ \hline |
{\tt int32 $port$} & {\tt int32 $peer$} \\ |
{\tt int32 $port$} & {\tt int32 $peer$} \\ |
\hline |
\hline |
\end{tabular} |
\end{tabular} |
Line 100 Stack after the request: |
|
Line 100 Stack after the request: |
|
|
|
Output: none. |
Output: none. |
|
|
$B<!9`$N(B {\tt SM\_tcp\_connect} $B$H%Z%"$G(B, $B4{$KB8:_$7$F$$$k(B 2 $B$D$N(B server |
$B<!9`$N(B {\tt SM\_tcp\_connect\_102} $B$H%Z%"$G(B, $B4{$KB8:_$7$F$$$k(B 2 $B$D$N(B server |
$B$N4V$N(B TCP/IP $B$K$h$kDL?.O)$r3+@_$9$k(B. $port$ $B$O(B, master $B$,(B ($B%i%s%@%`$K(B) $BA*$s$@(B |
$B$N4V$N(B TCP/IP $B$K$h$kDL?.O)$r3+@_$9$k(B. $port$ $B$O(B, master $B$,(B ($B%i%s%@%`$K(B) $BA*$s$@(B |
TCP $B$N%]!<%HHV9f$G$"$k(B. $B$3$N%j%/%(%9%H$r<u$1<h$k$H(B, server $B$O(B, |
TCP $B$N%]!<%HHV9f$G$"$k(B. $B$3$N%j%/%(%9%H$r<u$1<h$k$H(B, server $B$O(B, |
bind, listen, accept $BF0:n$r<B9T$7(B, connect $BBT$A>uBV$KF~$k(B. $B$$$:$l$+$NF0:n(B |
bind, listen, accept $BF0:n$r<B9T$7(B, connect $BBT$A>uBV$KF~$k(B. $B$$$:$l$+$NF0:n(B |
Line 110 $0$ $B$r%9%?%C%/$KCV$/(B. $peer$ $B$O(B, $BAj<j$N |
|
Line 110 $0$ $B$r%9%?%C%/$KCV$/(B. $peer$ $B$O(B, $BAj<j$N |
|
|
|
\item |
\item |
\begin{verbatim} |
\begin{verbatim} |
SM_tcp_connect |
SM_tcp_connect_102 |
\end{verbatim} |
\end{verbatim} |
|
|
Request: |
Request: |
\begin{tabular}{|c|c|} \hline |
\begin{tabular}{|c|c|} \hline |
{\tt int32 OX\_COMMAND} & {\tt int32 SM\_tcp\_connect} \\ \hline |
{\tt int32 OX\_COMMAND} & {\tt int32 SM\_tcp\_connect\_102} \\ \hline |
{\tt int32 CMO\_String} & {$hostname$} \\ \hline |
{\tt int32 CMO\_String} & {$hostname$} \\ \hline |
{\tt int32 $port$} & {\tt int32 $peer$} \\ |
{\tt int32 $port$} & {\tt int32 $peer$} \\ |
\hline |
\hline |
Line 129 Stack after the request: |
|
Line 129 Stack after the request: |
|
|
|
Output: none. |
Output: none. |
|
|
$BA09`$N(B {\tt SM\_tcp\_accept} $B$H%Z%"$G(B, $B4{$KB8:_$7$F$$$k(B 2 $B$D$N(B server |
$BA09`$N(B {\tt SM\_tcp\_accept\_102} $B$H%Z%"$G(B, $B4{$KB8:_$7$F$$$k(B 2 $B$D$N(B server |
$B$N4V$N(B TCP/IP $B$K$h$kDL?.O)$r3+@_$9$k(B. $host$ $B$OAj<j$N(B server $B$,F0:n$7$F(B |
$B$N4V$N(B TCP/IP $B$K$h$kDL?.O)$r3+@_$9$k(B. $host$ $B$OAj<j$N(B server $B$,F0:n$7$F(B |
$B$$$k%[%9%HL>$G$"$k(B. $host$ $B>e(B, $B%]!<%HHV9f(B $port$ $B$G(B accept $B$7$F$$$k(B server $B$KBP$7(B, |
$B$$$k%[%9%HL>$G$"$k(B. $host$ $B>e(B, $B%]!<%HHV9f(B $port$ $B$G(B accept $B$7$F$$$k(B server $B$KBP$7(B, |
connect $B$9$k(B. |
connect $B$9$k(B. |
Line 144 RFC-102 $B2<$G$N%W%m%0%i%_%s%0%9%?%$%k$O(B, $B4pK\E |
|
Line 144 RFC-102 $B2<$G$N%W%m%0%i%_%s%0%9%?%$%k$O(B, $B4pK\E |
|
$B$9$J$o$A(B, master $B$G$"$k%W%m%0%i%`$,<B9T$5$l(B, $BI,MW$K1~$8$F(B server $B$K(B |
$B$9$J$o$A(B, master $B$G$"$k%W%m%0%i%`$,<B9T$5$l(B, $BI,MW$K1~$8$F(B server $B$K(B |
$B;E;v$,0MMj$5$l(B, master $B$O$=$N7k2L$r;H$C$F<+$i$N;E;v$rB39T$9$k(B. |
$B;E;v$,0MMj$5$l(B, master $B$O$=$N7k2L$r;H$C$F<+$i$N;E;v$rB39T$9$k(B. |
$B$3$l$K2C$($F(B, RFC-102 $B$G$O(B, server $B$I$&$7$,!V<+N'E*!W$K%G!<%?$NAw<u?.(B |
$B$3$l$K2C$($F(B, RFC-102 $B$G$O(B, server $B$I$&$7$,!V<+N'E*!W$K%G!<%?$NAw<u?.(B |
$B$r9T$&$3$H$,$G$-$k(B. $B$3$N$?$a(B, server $B$O(B, server $B4VDL?.O)$K(B CMO $B%G!<%?$r(B |
$B$r9T$&$3$H$,$G$-$k(B. $B$3$N$?$a(B, server $B$O(B, server $B4VDL?.O)$K(B OX $B%G!<%?$r(B |
$BAw?.$9$k5!G=(B, $B$^$?!"(Bserver $B4VDL?.O)$+$i(B CMO $B%G!<%?$r<u?.$9$k5!G=$r(B |
$BAw?.$9$k5!G=(B, $B$^$?!"(Bserver $B4VDL?.O)$+$i(B OX $B%G!<%?$r<u?.$9$k5!G=$r(B |
$BDs6!$7$J$1$l$P$J$i$J$$(B. $BDL>o(B, server $B$O8GM-$N8@8l$r;}$D$N$G(B, $B$3$N5!G=(B |
$BDs6!$7$J$1$l$P$J$i$J$$(B. |
$B$O(B server $B$NAH$_9~$_4X?t$H$7$F<B8=$9$k$N$,<+A3$G$"$m$&(B. $BNc$($P(B {\tt asir} |
|
({\tt ox\_asir}) $B$N>l9g(B |
|
|
|
\begin{enumerate} |
|
\item {\tt ox\_send\_cmo\_102($Rank$,$Data$)} |
|
|
|
$B<1JL;R(B $Rank$ $B$N(B server $B$K(B $Data$ $B$r(B CMO $B$H$7$FAw?.$9$k(B. |
|
\item {\tt ox\_recv\_cmo\_102($Rank$)} |
|
|
|
$B<1JL;R(B $Rank$ $B$N(B server $B$+$i(B CMO $B%G!<%?$r<u?.$9$k(B. |
|
\end{enumerate} |
|
$B$H$7$F<B8=$5$l$F$$$k(B. |
|
|
|
\subsection{broadcast} |
\subsection{broadcast} |
|
|
server $B4VDL?.$rMxMQ$9$k:G$bE57?E*$JNc$H$7$F(B broadcast $B$,$"$k(B. |
server $B4VDL?.$rMxMQ$9$k:G$bE57?E*$JNc$H$7$F(B broadcast $B$,$"$k(B. |
Line 173 server $B4VDL?.$rMxMQ$9$k:G$bE57?E*$JNc$H$7$F(B broa |
|
Line 161 server $B4VDL?.$rMxMQ$9$k:G$bE57?E*$JNc$H$7$F(B broa |
|
$B$7$?$H$-$K(B, broadcast $B$5$l$?%G!<%?$,JV$5$l$k(B, $B$H$$$&7A$r$H$k(B. $B$3$N>l9g(B |
$B$7$?$H$-$K(B, broadcast $B$5$l$?%G!<%?$,JV$5$l$k(B, $B$H$$$&7A$r$H$k(B. $B$3$N>l9g(B |
$B$K%G!<%?$NH/?.85(B (root)$B$N<1JL;R$O3F(B server $B$,$"$i$+$8$aCN$C$F$*$/I,MW$,$"$k(B. |
$B$K%G!<%?$NH/?.85(B (root)$B$N<1JL;R$O3F(B server $B$,$"$i$+$8$aCN$C$F$*$/I,MW$,$"$k(B. |
|
|
|
|
\item master $B$+$i(B server $B%0%k!<%W$X$N(B broadcast |
\item master $B$+$i(B server $B%0%k!<%W$X$N(B broadcast |
|
|
master $B$+$i(B server $B%0%k!<%W$X$N(B broadcast $B$O(B, $B%0%k!<%WFb$N(B |
master $B$+$i(B server $B%0%k!<%W$X$N(B broadcast $B$O(B, $B%0%k!<%WFb$N(B |
Line 200 broadcast $B$r<B9T$5$;$k$?$a$N%3%^%s%I$rC`<!Aw?.$9$k |
|
Line 187 broadcast $B$r<B9T$5$;$k$?$a$N%3%^%s%I$rC`<!Aw?.$9$k |
|
server $B$NAm?t$r(B $nserver$ $B$H$9$k$H$-(B, $B9b!9(B $\lceil \log_2 nserver\rceil$ |
server $B$NAm?t$r(B $nserver$ $B$H$9$k$H$-(B, $B9b!9(B $\lceil \log_2 nserver\rceil$ |
$B%9%F%C%W8e$K$OA4$F$N(B server $B$K%G!<%?$,9T$-EO$k(B. |
$B%9%F%C%W8e$K$OA4$F$N(B server $B$K%G!<%?$,9T$-EO$k(B. |
|
|
|
|
|
|
|
|
\section{$B%(%i!<=hM}(B} |
\section{$B%(%i!<=hM}(B} |
|
|
server $B$O(B RFC-100,101 $B$N(B $B%j%;%C%H%W%m%H%3%k$r<BAu$7$F$$$l$P(B, |
server $B$O(B RFC-100,101 $B$N(B $B%j%;%C%H%W%m%H%3%k$r<BAu$7$F$$$l$P(B, |
master $B$+$i(B server $B$r%j%;%C%H$7(B, master-server $B4V$NDL?.O)$r(B |
master $B$+$i(B server $B$r%j%;%C%H$7(B, master-server $B4V$NDL?.O)$r(B |
$B%j%;%C%H$9$k$3$H$O$G$-$k(B. |
$B%j%;%C%H$9$k$3$H$O$G$-$k(B. $B$3$l$K2C$($F(B,$B%0%k!<%WFb$N(B server $B4VDL?.O)(B |
|
$B$r%j%;%C%H$9$kI,MW$,$"$k$,(B, $B$3$l$r<!$N<j=g$G9T$&(B. |
|
|
|
\begin{tabbing} |
|
\underline{$B<1JL;R$,(B $i$ ($0\le i \le nserver$) $B$N(B server $B$NF0:n(B}\\ |
|
for \= $j = 0$ \= to $i-1$ do\\ |
|
\> do\\ |
|
\> \>$data$ $\leftarrow$ $B<1JL;R(B $j$ $B$N(B server $B$+$i$N(B OX $B%G!<%?(B\\ |
|
\> while $data \neq$ {\tt OX\_SYNC\_BALL}\\ |
|
end for\\ |
|
for $j = i+1$ to $nserver-1$ do\\ |
|
\> {\tt OX\_SYNC\_BALL} $B$r(B $B<1JL;R(B $j$ $B$N(B server $B$KAw?.(B\\ |
|
end for |
|
\end{tabbing} |
|
$B$3$N<j=g$K$h$j(B, $B%G%C%I%m%C%/$J$7$KA4$F$NDL?.O)$r6u$K$9$k$3$H$,$G$-$k(B. |
|
$B$3$NA`:n$O(B, master-server $BDL?.O)$N%j%;%C%H8e$K9T$o$l$k$?$a(B, $B3F(B server |
|
$B$O(B master $B$+$i$N%G!<%?BT$A>uBV$K$"$k(B. $B$h$C$F(B, $B<!$N(B SM $B%3%^%s%I$r(B |
|
$B3F(B server $B$K0l@F$KAw$k$3$H$K$h$j9T$&(B. |
|
|
|
\begin{verbatim} |
|
SM_reset_102 |
|
\end{verbatim} |
|
|
|
Request: |
|
\begin{tabular}{|c|c|} \hline |
|
{\tt int32 OX\_COMMAND} & {\tt int32 SM\_reset\_102} \\ \hline |
|
\end{tabular} |
|
|
|
Output: none. |
|
|
\section{API} |
\section{API} |
|
|
|
$B0J2<(B, asir $B$K$*$1$k(B RFC-102 $B4XO"$N(B API $B$r>R2p$9$k(B. |
|
|
|
\subsection{server $B4VDL?.O)3+@_(B} |
|
|
|
\begin{itemize} |
|
\item {\tt ox\_set\_rank\_102($Server$,$Nserver$,$Rank$)} |
|
|
|
$Server$ $B$,B0$9$k%0%k!<%W$KB0$9$k(B server $B$NAm?t(B $Nserver$ $B$H(B, |
|
$B$=$N(B server $B$N%0%k!<%WFb<1JL;R(B $Rank$ $B$rDLCN$9$k(B. $B$3$N4X?t$O(B, |
|
master $BMQ$G$"$k(B. |
|
|
|
\item {\tt ox\_tcp\_accept\_102($Port$,$Rank$)} |
|
|
|
$B%]!<%HHV9f(B $Port$ $B$G(B, $B<1JL;R(B $Rank$ $B$N(B server $B$+$i$N(B connect $BBT$A>uBV(B |
|
$B$KF~$j(B, $BDL?.$,@.N)$7$?$i(B, $BAw<u?.%P%C%U%!$N%;%C%H%"%C%W(B, |
|
$BAj<j@h%F!<%V%k$X$NEPO?$J$I$r9T$&(B. |
|
|
|
\item {\tt ox\_tcp\_connect\_102($Host$,$Port$,$Rank$)} |
|
|
|
$B%[%9%HL>(B $Host$ $B$N%]!<%HHV9f(B $Port$ $B$N(B TCP $B%]!<%H$KBP$7$F(B connect $B$9$k(B. |
|
$BDL?.$,@.N)$7$?$i(B, $BAw<u?.%P%C%U%!$N%;%C%H%"%C%W(B, $BAj<j$r(B $Rank$ $B$H$7$F(B |
|
$BAj<j@h%F!<%V%k$X$NEPO?$J$I$r9T$&(B. |
|
\end{itemize} |
|
|
|
\subsection{server $B4VDL?.(B} |
|
|
|
\begin{itemize} |
|
\item {\tt ox\_send\_102($Rank$,$Data$)} |
|
|
|
$B<1JL;R(B $Rank$ $B$N(B server $B$K(B $Data$ $B$r(B OX $B%G!<%?$H$7$FAw?.$9$k(B. |
|
$B<1JL;R(B $Rank$ $B$N%5!<%P$OBP1~$9$k<u?.$r3+;O$7$J$1$l$P$J$i$J$$(B. |
|
|
|
\item {\tt ox\_recv\_102($Rank$)} |
|
|
|
$B<1JL;R(B $Rank$ $B$N(B server $B$+$i(B OX $B%G!<%?$r<u?.$9$k(B. |
|
$B<1JL;R(B $Rank$ $B$N%5!<%P$OBP1~$9$kAw?.$r3+;O$7$J$1$l$P$J$i$J$$(B. |
|
|
|
\item {\tt ox\_reset\_102()} |
|
|
|
$BDL?.O)%j%;%C%HF0:n$r9T$&(B. $B$3$NA`:n$O(B, $B%0%k!<%WFbA4$F$N(B server |
|
$B$G9T$o$l$J$1$l$P$J$i$J$$(B. |
|
\end{itemize} |
|
|
|
|
\end{document} |
\end{document} |