HP OpenVMS Systems

ask the wizard
Content starts here

Starting DECW$CLOCK /DETACHED?

» close window

The Question is:

 
I am having trouble running an application as a detached process.  For example
 when I run the following, the clock appears as normal from the DECterm.
 
run sys$system:decw$clock
 
This is great but it ties up the DECterm.  If I run it with the /detach
qualifier, run sys$system:decw$clock /detach it creates a process and assigns
a process id but no clock appears nor does there appear the process id in the
 list generated by a "show sys".
 
Please give me any suggestions you may have.
 
Thanks,
Ken
 
 


The Answer is :

 
  If you wish to run DECW$CLOCK as a detached process, use the session
  manager automatic startup selection menus to invoke it, and any other
  applications that you might desire to start up at the same time, when
  you log into the workstation.  (The specific mechanism and name of the
  widget may depend on which version of the DECwindows window manager you
  are using -- the DECwindows Motif session manager (not CDE) calls it
  "Automatic Startup".)
 
  Various applications must run with a command line interpreter present.
  This means that DCL or some other CLI must be loaded when the process
  logs in.  This is the norm with interactive and batch processes.  No
  CLI is loaded for detached processes, unless specifically requested.
  See the OpenVMS Frequently Asked Questions (FAQ) sections entitled
  "DCL1. How do I run a program with arguments?" and "PROG2.  How do I
  get the arguments from the command line?".
 
  The PIPE command and the ampersand operator can be used, and this will
  allow the process to run as a subprocess of the current process:
 
    $ pipe run sys$system:decw$clock &
 
  Alternatively:
 
    $ spawn/nowait run sys$system:decw$clock
 
  And as another alternative, using a detached process, one can use:
 
    $ create SYS$SYSDEVICE:[WIZARD]clock.tmp
    $ run sys$system:decw$clock
    ^Z
 
    $ set display/create/node=<node>/transport=<transport>/user
    $ run/detach -
      /output=SYS$SYSDEVICE:[WIZARD]foo.log -
      /input=SYS$SYSDEVICE:[WIZARD]clock.tmp -
      /error=decw$display sys$system:loginout
    $ deassign decw$display
 
  And as mentioned, a batch job (SUBMIT, SUBMIT/REMOTE) is also an option.
 
  Any logical names associated with the input and output specifications,
  as well as any file specifications on the procedure, cannot be process-
  or job-local, the translations must be visible to the detached process.
 

answer written or last revised on ( 8-JUL-1998 )

» close window