CIFE experimental course: CE 222
Computer Integrated Architecture/Engineering/Construction

CE222 Reference Material


Goto Lab exercise

                      CIFE  - Reference material
                     ----------------------------

                             Xmove 1.2f

INTRODUCTION

Xmove is an utility to support mobile Xwindows sessions between individual 
Xwindows supported machines. Or, in another word, Xmove provides the ability
to transport an application from one display to another.


USAGE

  xmove {-server server_name:port#} {-port port#}
  xmovectrl {server_DISPLAY:port#} {-command} {arguments} ... ...

There are many ways of setting up and running Xmove. Decribed at the following 
is one of the simpler alternative, in my opinion. The user is encouraged to 
explode and experiment with other functions or settings of Xmove. 


SETTING UP 

Assume we have two Sun sparcs stations available:  

   my.machine.stanford.edu   down.the.hallway.stanford.edu

First, on a window of the first machine, run xhost and xmove...

  {my.machine} "xhost +down.the.hallway.stanford.edu"
  {my.machine} "xmove" or, if more specific, "xmove -port 3"

Running "xmove" alone will default port 1 (or my.machine:1) to be the 
"pseudoserver".  The second command with an assigned port number, 3 in this 
case, can be used if port 1 is already in use.  Generally, any port number 
between 1 and 9999 can be assigned.

When the message "Xmove 1.2f ready" shows up, Xmove is ready and listening.

Start a new xterm session, and set the DISPLAY environment to the pseudoserver
listening port.  

  {my.machine} "setenv DISPLAY my.machine:1" if the default port# is used, or
               "setenv DISPLAY my.machine:3" for the second example above.

Begin any program here on from this session is now monitored by Xmove's 
pseudoserver, and can be manipulated.


"SCOTTY, BEAM ME DOWN THE HALLWAY..."

You were logged onto {my.machine}, and started the Xmove and any programs as 
described above.  After hacking on {my.machine} for sometimes, on a sudden urge
you decided to move to another terminal room down the hallway which has better 
air-conditioning.  Proceed to a new cool spot in the terminal room of your 
choice, at {down.the.hallway} for this instant. 

Step number 1, start Xwindows... 

Next, make sure the new machine give the permission for your old one to access 
its displays...

  {down.the.hallway} "xhost +my.machine.stanford.edu" or simply "xhost +"

From a new xterm session, run Xmove control...

  {down.the.hallway} "setenv DISPLAY my.machine:1"
  {down.the.hallway} "xmovectrl -list"

The "my.machine:1" is the psudoserver listening port as descirbed above, or
"my.machine:{port#}" if different port is used.  The "-list" parameter will show
you the list of applications running through the Xmove back at my.machine. An 
example of the "-list" output: 

  1     xterm                my.machine:0
  9     mosaic               my.machine:0
  16    Autocad              my.machine:0

The first number is the program identifier, then the name, and present display
status (or where is it now).

You, as a user, can selectively choose one, or all, of these sessions be 
transported to your screen...

  {down.the.hallway} "xmovectrl -move down.the.hallway:0 9"  or
  {down.the.hallway} "xmovectrl -moveall down.the.hallway:0"

The first line with "-move" will move only "mosaic" from {my.machine} to your 
present display at {down.the.hallway}, whereas the second line with "-moveall"
will take all three applications and teleport them to you... and so, you are
now back at work.

In another word, when you are at {down.the.hallway}, xmove is just the same as
rlogin back to {my.machine}, setenv DISPLAY, and run some applications. But the
only difference is that you can be anywhere in the world, and you save the 
hassale of re-starting what you are doing all over again.  Just have them beamed
down to you...


BUGS

o This utility was just recently discovered. Seems to give fewer problems than
  most of those highly sophisticated programs.  Reliability is still a test.
o Mixing between Color display and Black & White display will result in 
  unrecoverable data loses (especially color and graphics) to the application.
o There has been one or two cases of some data loses during the testings. 
  Not too serious of a case yet, but as an advise:  Save your work often.
o Never, never pass an application by icon.  Pass it as a window.
o DON'T interrupt the xmovectrl process when it is transferring data between
  displays. Transfer tIme may varies between 10+ seconds to several minutes, 
  depending on how complicated the application is, but breaking the process will
  lose the application itself (just like transporting in Star Trek).
o Only Sun Sparcs stations have presently been tested. 
o So far, all Xwindows based applications tested seems to work (theoretically,
  they should).  Let's hope the success rate remain perfect...... Don't quote 
  me on anything though...

--------------------------------------------------------------------------------
  Xmove, also refered as the X Consortium, was develped and copyrighted 
  by Ethan Solomita at Columbia University.
--------------------------------------------------------------------------------
CIFE  - Benjamin Wai   wai@leland.stanford.edu                  1/18/1995