|
I don't understand, you want to pop up mutliple applications on
multiple workstations? Then I'd write a couple of com files and
submit them to batch.. We have a CLUSTER_DECWINDOWS generic
batch queue with node specific batch queues under it. The job limits
are high so alot of people can run in the queues and for filevoo,
I just submit the following:
$ set proc/name="VUE_on_AXEL"
$ set display/create/node=axel/trans=decnet
$ @sys$manager:decw$startvue
$ exit
You could change the "/node=axel" use the param P1 and then
do a SUBMIT/PARAM=(nodename) mumble.COM.
mike
|
| Here is a procedure we use to run up a number of applications on a
remote node. In this case, a detached process is created on the remote
node so as not to clog up the batch queues. This procedure runs VUE and
optionally starts a number of sub-processes to run mail, notes, clock
or whatever.
All we do is put the command @VUE.COM in our DECW$LOGIN.COM and it all
happens from there.
You may find it useful as a basis to do your own.
One thing to beware of however. The detached process is created with
the name <node>::VUE. The process name is the menas of passing the name
of the target process. The problem is that if you LOGIN.COM set up the
process name in any way, this does not work. So, don't set the process
name if F$MODE() .NES. "INTERACTIVE"
Hope this helps,
/Mike
$! V U E . C O M
$!
$! Mike Grossmith
$! September 1988
$!+++
$! This procedure provides a convenient means for users with "low powered"
$! workstations to start a number of DECwindows applications on a remote
$! node with more resources.
$!
$! It requires a generic batch queue that feeds the system(s) on which
$! the remote applications are to run. The symbol REMOTE_QUEUE points to this
$! queue.
$!
$! CALLING SEQUENCE:
$!
$! This procedure can be called as follows:-
$!
$! @VUE MODE [DEBUG] [QUEUE] [TARGET_NODE]
$!
$! P1 - MODE. May be either Local or Remote (the first character
$! is all that is required. Specifes whether the applications
$! are to be started on the local or the remote queue
$!
$! P2 - DEBUG. Causes log files to be generated for troubleshooting.
$!
$! P3 - QUEUE. All the local or remote queue definitions to be overriden
$!
$! P4 - TARGET. Allows the target of the dislpay to be selected
$!
$! NOTE: The procedure must be called from the LOCAL node
$!
$! The symbol LOCAL_QUEUE points to a queue on the local system.
$! In INTERACTIVE mode -- submit a batch job to this nodes queue
$! In BATCH mode -- start a detached VUE process
$! In OTHER mode -- run the VUE image, with the display directed
$! at the originating node
$!---
$ node = f$getsyi("NODENAME")
$!+++
$! The next two lines can be edited to reflect any particular system configuration
$!---
$ REMOTE_QUEUE = "SYS$BATCH"
$ LOCAL_QUEUE = "SYS$''node'_BATCH"
$
$ queue = remote_queue
$
$ set noon
$ if f$mode() .eqs. "INTERACTIVE"
$ then
$ P1 = f$edit(P1,"TRIM,UPCASE")
$ P2 = f$edit(P2,"TRIM,UPCASE")
$ P3 = f$edit(P3,"TRIM,UPCASE")
$ P4 = f$edit(P4,"TRIM,UPCASE")
$!+++
$! Sort out which queue we are going to use. If P3 is specified, then use
$! that queue. If not, then choose LOCAL or REMOTE depending on P1
$!---
$ if P3 .eqs. ""
$ then
$ if P1 .eqs. "LOCAL"
$ then queue = local_queue
$ else
$ if P1 .eqs. "REMOTE"
$ then queue = remote_queue
$ endif
$ endif
$ else queue = P3
$ endif
$
$ if P4 .eqs. "" then P4 = node
$!+++
$! Now set things up for DEBUG mode is required
$!---
$ if p2 .eqs. "DEBUG"
$ then
$ params =""""",DEBUG,"""", ''P4'"
$ log_sw = "LOG=VUE_INTER.LOG"
$ else
$ params = """"","""","""",''P4'"
$ log_sw = "NOLOG"
$ endif
$!+++
$! Submit this procedure to the appropriate queue
$!---
$ submit /noprint /'log_sw' /queue='queue' /parameter=('params') 'f$environment("PROCEDURE")'
$ exit
$ else if f$mode() .eqs. "BATCH"
$ then
$ if p2 .eqs. "DEBUG"
$ then outdev = "VUE_BATCH.LOG"
$ else outdev = "NLA0:"
$ endif
$ set process/priv=ALTPRI
$ run sys$system:loginout -
/detach -
/input='f$environment("PROCEDURE")' -
/authorize -
/output='outdev' -
/error=vue.err -
/ast_limit=500 -
/buffer_limit=100000 -
/enqueue_limit=1000 -
/file_limit=100 -
/io_buffered=200 -
/io_direct=200 -
/working_set=300 -
/maximum_working_set=16384 -
/page_file=100000 -
/priority=4 -
/queue_limit=200 -
/subprocess_limit=20 -
/job_table_quota=2048 -
/process_name="''p4'::VUE"
$ exit
$ else if f$mode() .eqs. "OTHER"
$ then
$ target_node = f$element(0, ":", f$getjpi("","PRCNAM"))
$ set display/create/node='target_node'
$!+++
$! The following lines can be edited to run the required applications as
$! sub-processes to the main VUE process. Modify as required.
$!---
$! spawn/nowait/process="''target_node'::Cal"/input=NL: run sys$system:DECW$CALENDAR.EXE
$! spawn/nowait/process="''target_node'::Mail"/input=NL: run sys$system:DECW$MAIL.EXE
$! spawn/nowait/process="''target_node'::Notes"/input=NL: notes/decwindows
$ run sys$system:VUE$MASTER
$ exit
$ endif
$EXIT
|