Next: Agent support Up: Software Architecture of Previous: Interaction between objects

Interaction between WebMap and Mosaic

The current implementation of WebMap makes use of Mosaic's remote control feature. This is a very simple interprocess communication concept which allows processes on the same host to exchange data without using kernel communication support like sockets or pipes. The interaction between WebMap and Mosaic is illustrated in Fig. 9.

In the following enumeration the sequence of actions is described. The numbers correspond to the numbers shown in Fig. 9.

  1. Mosaic is started.
  2. Mosaic writes its process identifier (pid) uvwxy into the file named $HOME/.mosaicpid.
  3. WebMap is started.
  4. WebMap reads Mosaic's pid from the file $HOME/.mosaicpid.
  5. WebMap writes a command into the file /tmp/Mosaic.uvwxy which asks Mosaic to inform WebMap about every document page loaded.
  6. WebMap sends the signal SIGUSR1 to Mosaic.
  7. The received signal causes Mosaic to read the file /tmp/Mosaic.uvwxy and to execute the command contained in it.
  8. If required, Mosaic writes some data for WebMap into the file /tmp/Mosaic.uvwxy.
  9. Then Mosaic forks a process running the Tcl command interpreter wish which executes the Tcl program webmap-sender.tcl.
  10. This Tcl process uses Tk's send command to directly call the method ``goto'' of WebMap's internal Navigator object. The result of this method call is returned to the webmap-sender process.

At present a simple modification to the source code of Mosaic has to be perfomed to obtain the described behaviour. This `patch' may also provide a simple application interface to Mosaic for other applications until an `official' WWW-browser CCI (Client Communication Interface) will be available.



Next: Agent support Up: Software Architecture of Previous: Interaction between objects


Peter Dömel (doemel@informatik.uni-frankfurt.de)