version 1.2, 1999/11/01 03:49:47 |
version 1.8, 2000/01/19 08:33:27 |
|
|
%%%%%%%%%%% $OpenXM$ |
%%%%%%%%%%% $OpenXM: OpenXM/src/kan96xx/Doc/ox.sm1,v 1.7 2000/01/19 06:41:02 takayama Exp $ |
%%%%%%%%%%%% Configuration: Specify your server path |
%%%%%%%%%%%% Configuration: Specify your server path |
%%%%% ox, ox_sm1, oxlog are contained in kxx.tgz |
%%%%% ox, ox_sm1, oxlog are contained in kxx.tgz |
%%%%% These should be under /usr/local/lib/sm1 or LOAD_SM1_PATH |
%%%%% These should be under /usr/local/lib/sm1 or LOAD_SM1_PATH |
|
|
/oxpath.oxlog (bin/oxlog) def |
/oxpath.oxlog (bin/oxlog) def |
/oxpath.xterm (/usr/X11R6/bin/xterm -icon -e ) def |
/oxpath.xterm (/usr/X11R6/bin/xterm -icon -e ) def |
/oxpath.null ( ) def |
/oxpath.null ( ) def |
/oxpath.null00 ( >& /dev/null ) def %% cf oxNoX |
/oxpath.null00 ( >& /dev/null ) def %%cf. oxNoX |
|
/oxpath.null00-pure-sh ( 2>&1 >/dev/null) def %%TODO:It does not work in our case |
%%%%%%%%%%%%% The following is used only for sm1connectr-ssh. |
%%%%%%%%%%%%% The following is used only for sm1connectr-ssh. |
%%%%%%%%%%%%% Configure path for ox and ox_sm1 on your remote machine. |
%%%%%%%%%%%%% Configure path for ox and ox_sm1 on your remote machine. |
/oxpath.oxlog.xterm-ssh (/home/taka/OpenXM/bin/oxlog /usr/X11R6/bin/xterm -icon -e ) def |
/oxpath.oxlog.xterm-ssh (/home/taka/OpenXM/bin/oxlog /usr/X11R6/bin/xterm -icon -e ) def |
Line 52 ox.version [(Version)] system_variable gt |
|
Line 53 ox.version [(Version)] system_variable gt |
|
(Please get it from http://www.math.kobe-u.ac.jp/KAN) message |
(Please get it from http://www.math.kobe-u.ac.jp/KAN) message |
error |
error |
} { } ifelse |
} { } ifelse |
(ox.sm1, --- open sm1 protocol module 10/1,1999 (C) N.Takayama. oxhelp for help) message-quiet |
(ox.sm1, --- open sm1 protocol module 11/11,1999 (C) N.Takayama. oxhelp for help) message-quiet |
|
|
/ox.ccc load isArray |
/ox.ccc load isArray |
{ } |
{ } |
Line 139 ox.version [(Version)] system_variable gt |
|
Line 140 ox.version [(Version)] system_variable gt |
|
(oxhelp for this message, [(oxWatch) client] extension to start a log.) |
(oxhelp for this message, [(oxWatch) client] extension to start a log.) |
([(oxSerial)] extension serial-number-of-out-going-ox-packet.) |
([(oxSerial)] extension serial-number-of-out-going-ox-packet.) |
(oxpopcmo1, oxpopcmo2, sm1connect2, sm1connect3) |
(oxpopcmo1, oxpopcmo2, sm1connect2, sm1connect3) |
(sm1connectr ) |
(sm1connectr ox_launch, ox_launch_nox) |
(oxNoX : set an environment to invoke oxlog without xterm and to call oxlog with >& /dev/null) |
(oxNoX : set an environment to invoke oxlog without xterm and to call oxlog with >& /dev/null) |
$ ex 1. (ox.sm1) run oxNoX sm1connectr $ |
$ ex 1. (ox.sm1) run oxNoX sm1connectr $ |
$ ex 2. (oxasir.sm1) run oxNoX (x^2-1). fctr pmat ; $ |
$ ex 2. (oxasir.sm1) run oxNoX (x^2-1). fctr pmat ; $ |
Line 160 ox.verbose { oxhelp } { } ifelse |
|
Line 161 ox.verbose { oxhelp } { } ifelse |
|
/sm1connect2 { |
/sm1connect2 { |
[oxpath.oxlog.xterm oxpath.ox ( -ox ) oxpath.oxsm1 |
[oxpath.oxlog.xterm oxpath.ox ( -ox ) oxpath.oxsm1 |
oxpath.null |
oxpath.null |
( &)] cat system |
( &)] cat system-csh |
% (kterm -iconic -e /home/nobuki/kxx/ox -ox /home/nobuki/kxx/ox_sm1 &) system |
% (kterm -iconic -e /home/nobuki/kxx/ox -ox /home/nobuki/kxx/ox_sm1 &) system |
% For MSRI, or Eterm, |
% For MSRI, or Eterm, |
%(xterm -icon -e /u/nobuki/tmp/kxx/ox -ox /u/nobuki/tmp/Ox/ox_sm1 &) system |
%(xterm -icon -e /u/nobuki/tmp/kxx/ox -ox /u/nobuki/tmp/Ox/ox_sm1 &) system |
(If you start the server automatically, you may have a trouble to) message |
(If you start the server automatically, you may have a trouble to) message |
(oxreset. In order to avoid this trouble, start the server by hand.) message |
(oxreset. In order to avoid this trouble, start the server by hand.) message |
(sleep 5) system |
(sleep 5) system-csh |
[(localhost) 1300 1200] oxconnect /ox.ccc set |
[(localhost) 1300 1200] oxconnect /ox.ccc set |
(The server is binded to the variable ox.ccc) message |
(The server is binded to the variable ox.ccc) message |
ox.ccc.init |
ox.ccc.init |
Line 176 ox.verbose { oxhelp } { } ifelse |
|
Line 177 ox.verbose { oxhelp } { } ifelse |
|
[oxpath.oxlog.xterm oxpath.ox ( -ox ) oxpath.oxsm1 |
[oxpath.oxlog.xterm oxpath.ox ( -ox ) oxpath.oxsm1 |
( -data 2300 -control 2200 ) |
( -data 2300 -control 2200 ) |
oxpath.null |
oxpath.null |
( &)] cat system |
( &)] cat system-csh |
% (kterm -iconic -e /home/nobuki/kxx/ox -ox /home/nobuki/kxx/ox_sm1 -data 2300 -control 2200 &) system |
% (kterm -iconic -e /home/nobuki/kxx/ox -ox /home/nobuki/kxx/ox_sm1 -data 2300 -control 2200 &) system-csh |
% For MSRI |
% For MSRI |
%(xterm -icon -e /u/nobuki/tmp/kxx/ox -ox /u/nobuki/tmp/Ox/ox_sm1 -data 2300 -control 2200&) system |
%(xterm -icon -e /u/nobuki/tmp/kxx/ox -ox /u/nobuki/tmp/Ox/ox_sm1 -data 2300 -control 2200&) system-csh |
(If you start the server automatically, you may have a trouble to) message |
(If you start the server automatically, you may have a trouble to) message |
(oxreset. In order to avoid this trouble, start the server by hand.) message |
(oxreset. In order to avoid this trouble, start the server by hand.) message |
(sleep 5) system |
(sleep 5) system-csh |
[(localhost) 2300 2200] oxconnect /ox.ccc2 set |
[(localhost) 2300 2200] oxconnect /ox.ccc2 set |
(The server is binded to the variable ox.ccc2) message |
(The server is binded to the variable ox.ccc2) message |
} def |
} def |
Line 193 ox.verbose { oxhelp } { } ifelse |
|
Line 194 ox.verbose { oxhelp } { } ifelse |
|
[oxpath.oxlog.xterm oxpath.ox ( -ox ) oxpath.oxsm1 |
[oxpath.oxlog.xterm oxpath.ox ( -ox ) oxpath.oxsm1 |
( -portfile ) ox.ccc.portfile |
( -portfile ) ox.ccc.portfile |
oxpath.null |
oxpath.null |
( &)] cat system |
( &)] cat system-csh |
(sleep 5) system |
(sleep 5) system-csh |
[(oxReadPortFile) ox.ccc.portfile] extension /ox.ccc.control set |
[(oxReadPortFile) ox.ccc.portfile] extension /ox.ccc.control set |
ox.ccc.control message |
ox.ccc.control message |
[(localhost) ox.ccc.control 1200] /ox.ccc set |
[(localhost) ox.ccc.control 1200] /ox.ccc set |
|
|
/exhausted 0 def |
/exhausted 0 def |
% clear the busy flag. |
% clear the busy flag. |
/busy [1 1 enginesN { pop 0 } for ] def |
/busy [1 1 enginesN { pop 0 } for ] def |
(date) system |
(date) system-csh |
{{ |
{{ |
exhausted 0 eq { |
exhausted 0 eq { |
0 1 enginesN 1 sub { |
0 1 enginesN 1 sub { |
|
|
} { } ifelse |
} { } ifelse |
} for |
} for |
} loop } timer |
} loop } timer |
(date) system |
(date) system-csh |
(result is in result) message |
(result is in result) message |
(Number of s-pairs checked is ) messagen result length message |
(Number of s-pairs checked is ) messagen result length message |
} def |
} def |
|
|
[oxpath.oxlog.xterm oxpath.ox ( -reverse -ox ) oxpath.oxsm1 |
[oxpath.oxlog.xterm oxpath.ox ( -reverse -ox ) oxpath.oxsm1 |
( -data ) data ( -control ) control ( -pass ) pass |
( -data ) data ( -control ) control ( -pass ) pass |
oxpath.null |
oxpath.null |
( &)] cat system |
( &)] cat system-csh |
[(oxCreateClient2) peer 0 pass] extension /ox.ccc set |
[(oxCreateClient2) peer 0 pass] extension /ox.ccc set |
%% 0 means connect from only localhost. |
%% 0 means connect from only localhost. |
(The server is binded to the variable ox.ccc) message |
(The server is binded to the variable ox.ccc) message |
|
|
] cat /comm set |
] cat /comm set |
(Executing the command : ) messagen comm message message |
(Executing the command : ) messagen comm message message |
comm system |
comm system |
(sleep 5) system |
(sleep 5) system-csh |
[(oxCreateClient2) peer 1 pass] extension /your-peer set |
[(oxCreateClient2) peer 1 pass] extension /your-peer set |
/arg1 your-peer def |
/arg1 your-peer def |
] pop |
] pop |
|
|
[(sm1connectr-ssh) |
[(sm1connectr-ssh) |
[([hostname login-name] sm1connectr-ssh client) |
[([hostname login-name] sm1connectr-ssh client) |
(Starting oxpath.oxsm1-ssh by the launcher oxpath.ox-ssh on the "hostname".) |
(Starting oxpath.oxsm1-ssh by the launcher oxpath.ox-ssh on the "hostname".) |
$Example: [(dc1.math.kobe-u.ac.jp) (taka)] sm1connectr-ssh /ox.ccc set $ |
(cf. oxNoX ) |
|
(Set the following varialbes to appropriate values:) |
|
(oxpath.oxlog.xterm-ssh oxpath.oxsm1-ssh oxpath.ox-ssh myhostname-ssh ) |
|
$Example 1: $ |
|
$ *** Path names on the remote machine dc1.math.kobe-u.ac.jp $ |
|
$ /oxpath.oxlog.xterm-ssh (/home/taka/OpenXM/bin/oxlog /usr/X11R6/bin/xterm -icon -e ) def $ |
|
$ /oxpath.oxsm1-ssh (/home/taka/OpenXM/bin/ox_sm1) def $ |
|
$ /oxpath.ox-ssh (/home/taka/OpenXM/bin/ox) def $ |
|
$ *** The machine name on which you are running sm1. $ |
|
$ /myhostname-ssh (yama.math.kobe-u.ac.jp) def $ |
|
$ [(dc1.math.kobe-u.ac.jp) (taka)] sm1connectr-ssh /ox.ccc set $ |
|
$Example 2: $ |
|
$ *** Path names on the remote machine dc2.math.kobe-u.ac.jp $ |
|
$ *** We will not use X11 debug windows. $ |
|
$ oxNoX $ |
|
$ /oxpath.oxlog.xterm-ssh (/home/taka/OpenXM/bin/oxlog ) def $ |
|
$ /oxpath.oxsm1-ssh (/home/taka/OpenXM/bin/ox_sm1) def $ |
|
$ /oxpath.ox-ssh (/home/taka/OpenXM/bin/ox) def $ |
|
$ *** the machine name on which you are running sm1. $ |
|
$ /myhostname-ssh (dc1.math.kobe-u.ac.jp) def $ |
|
$ [(dc2.math.kobe-u.ac.jp) (taka)] sm1connectr-ssh /ox.ccc set $ |
]] putUsages |
]] putUsages |
|
|
/addSlash { |
/addSlash { |
|
|
} { } ifelse |
} { } ifelse |
} { } ifelse |
} { } ifelse |
|
|
|
%% Else first try to find it in OpenXM_HOME |
|
[(getenv) (OpenXM_HOME)] extension /tname set |
|
tname isString |
|
{ |
|
tname addSlash /tname set |
|
[tname (lib/sm1/)] cat /tname set |
|
[(stat) [tname fname] cat] extension |
|
0 get isInteger %% The file was found. |
|
{ /fullname [tname fname] cat def |
|
/getPathNameSm1.LLL goto |
|
} { } ifelse |
|
} { } ifelse |
|
|
%% Else try to find it in /usr/local/lib/sm1 |
%% Else try to find it in /usr/local/lib/sm1 |
[(stat) [(/usr/local/lib/sm1/) fname] cat] extension |
[(stat) [(/usr/local/lib/sm1/) fname] cat] extension |
0 get isInteger %% The file was found. |
0 get isInteger %% The file was found. |
|
|
%% Otherwise error. |
%% Otherwise error. |
[(getPathNameSm1: The file ) fname |
[(getPathNameSm1: The file ) fname |
( could not be found ) |
( could not be found ) |
(neigher in LOAD_SM1_PATH=) |
(neigher in LOAD\_SM1\_PATH=) |
[(getenv) (LOAD_SM1_PATH)] extension |
[(getenv) (LOAD_SM1_PATH)] extension |
|
( nor in OpenXM\_HOME/lib/sm1=) |
|
[(getenv) (OpenXM_HOME)] extension |
|
(/lib/sm1) |
( nor in /usr/local/lib/sm1) |
( nor in /usr/local/lib/sm1) |
] cat /getPathNameSm1.errorMessage set |
] cat /getPathNameSm1.errorMessage set |
getPathNameSm1.errorMessage message |
getPathNameSm1.errorMessage message |
|
|
[(getPathNameSm1) |
[(getPathNameSm1) |
[([fname] getPathNameSm1 fullname) |
[([fname] getPathNameSm1 fullname) |
(string fname, fullname) |
(string fname, fullname) |
(This command searches the fname in /usr/local/lib/sm1 and LOAD_SM1_PATH) |
(This command searches the fname in LOAD_SM1_PATH, ) |
(and returns the fullname.) |
(OpenXM_HOME/lib/sm1, and /usr/local/lib/sm1) |
|
(It returns the fullname.) |
]] putUsages |
]] putUsages |
|
|
/getPathNameAsir { |
/getPathNameAsir { |
|
|
} { } ifelse |
} { } ifelse |
|
|
%% Otherwise error. |
%% Otherwise error. |
[ (getPathNameAsir: The file ) fname |
[ (getPathNameAsir: The file ) |
|
fname (ox_asir) eq |
|
{(ox\_asir)} { fname }ifelse |
( could not be found ) |
( could not be found ) |
(neigher in /usr/local/lib/asir nor in ASIR_LIBDIR. ) |
(neigher in /usr/local/lib/asir nor in ASIR\_LIBDIR. ) |
] cat /getPathNameAsir.errorMessage set |
] cat /getPathNameAsir.errorMessage set |
getPathNameAsir.errorMessage message |
getPathNameAsir.errorMessage message |
] pop popVariables getPathNameAsir.errorMessage error |
] pop popVariables getPathNameAsir.errorMessage error |
|
|
(and returns the fullname.) |
(and returns the fullname.) |
]] putUsages |
]] putUsages |
|
|
|
|
|
/ox_launch_nox { |
|
/@@@.ox_launch_nox 1 def |
|
ox_launch_aux |
|
} def |
|
/ox_launch { |
|
/@@@.ox_launch_nox 0 def |
|
ox_launch_aux |
|
} def |
|
|
|
/ox_launch_aux { |
|
/arg1 set |
|
[/in-launch_nox /pass /peer /data /control /name /machine |
|
/your-peer /comm /remoteOpenXMbin /remoteServer /myhost |
|
] pushVariables |
|
[ |
|
/machine arg1 0 get def |
|
/remoteOpenXMbin arg1 1 get def |
|
/remoteServer arg1 2 get def |
|
/name arg1 3 get def |
|
/myhost arg1 4 get def |
|
|
|
/pass [(oxGenPass)] extension def |
|
/peer [(oxGetPort) myhost] extension def |
|
/data peer 1 get toString def |
|
/control peer 3 get toString def |
|
peer message |
|
[(ssh -f ) machine ( -l ) name ( ") |
|
|
|
@@@.ox_launch_nox { |
|
} { |
|
remoteOpenXMbin(/oxlog ) |
|
( /usr/X11R6/bin/xterm -icon -e ) |
|
} ifelse |
|
|
|
( ) remoteOpenXMbin (/ox ) |
|
( -reverse -ox ) remoteServer |
|
( -host ) myhost |
|
( -data ) data ( -control ) control ( -pass ) pass |
|
oxpath.null |
|
( ") |
|
] cat /comm set |
|
(Executing the command : ) messagen comm message message |
|
comm system |
|
(sleep 5) system-csh |
|
[(oxCreateClient2) peer 1 pass] extension /your-peer set |
|
/arg1 your-peer def |
|
] pop |
|
popVariables |
|
arg1 |
|
} def |
|
|
|
[(ox_launch) |
|
[( [remote remote-OpenXM-bin remote-ox-server remote-login-name myhostname] ) |
|
( ox_launch client ) |
|
(Example 1: ) |
|
$ [(tau.math.kobe-u.ac.jp) (/home/taka/OpenXM/bin) $ |
|
$ (/home/taka/OpenXM/src/ox_math/ox_math) (taka) (dc4.math.kobe-u.ac.jp) $ |
|
$ ] ox_launch /@@@.oxmath set $ |
|
]] putUsages |
|
|
|
[(ox_launch_nox) |
|
[( [remote remote-OpenXM-bin remote-ox-server remote-login-name myhostname] ) |
|
( ox_launch_nox client ) |
|
(Example 1: ) |
|
$ [(tau.math.kobe-u.ac.jp) (/home/taka/OpenXM/bin) $ |
|
$ (/home/taka/OpenXM/src/ox_math/ox_math) (taka) (dc4.math.kobe-u.ac.jp) $ |
|
$ ] ox_launch_nox /@@@.oxmath set $ |
|
]] putUsages |
|
|
|
/system-csh { |
|
/arg1 set |
|
[/in-system-csh /com /com2] pushVariables |
|
[ |
|
/com arg1 def |
|
[(/bin/csh -c ") com (")] cat |
|
/com2 set |
|
%%com2 message |
|
com2 system |
|
] pop |
|
popVariables |
|
} def |
|
|
|
|
initializePathNamesForOx %% This should be |
initializePathNamesForOx %% This should be |