cmdSrv - Command Server

cmdSrv is the Command Server program. It runs on one or more remote nodes where it accepts and executes commands on behalf of client programs. An easy to use API is provided for use by client programs for sending commands to cmdSrv.

Accelerator Operator Help.

The Server is supported on unix and linux. The api is supported on unix/linux and vms. Getting the api to work on Windows should be pretty easy, but it hasn't been tested yet on that platform.

cmdSrv Features.

Command Server, SNS EPICS Meeting, Nov, 2000 (ppt presentation)

*NOTE: For security reasons, some of the links below are only accessible from within SLAC*.

User Documentation

There is a connection between your scp (or vms standalone program or unix/linux program) and the cmdSrv program running on a remote unix/linux node. You can send cmdSrv several types of commands and it will execute them for you and return a reply message containing status. For example, you can push a button on the SCP to start an EPICS dm display. The button-push causes a command to be sent to cmdSrv telling it to start dm for you. Then, a reply is returned and the status is printed on your scp messages window.
  • Troubleshooting user displays, etc
  • How to show all unix/linux processes from the VMS command line.
  • System Administrator and Programmer Documentation.

    cmdSrv is a tcp/ip server (running on unix/linux). It waits for clients to make connections and send request packets. For each request packet, it forks a child process and executes the command contained in the packet. It returns a reply message containing command status to the client and closes the connection. The supported commands include:
    1. EXECute an X-application (e.g. cmlog -u -f filename).
    2. EXESCR. Execute a unix/linux script (e.g. csarch 0 2 filename).
    3. SHOW all active children.
    4. KILL all children for a given display (head).
    5. Read the control files into memory (REFRESH).
    cmdSrv clients (programs that connect to it from other nodes), can run on any machine. Initially, the SLAC Control Program (SCP) and standalone programs on the main VMS server nodes are the clients.

    How to make and run the cmdSrv server on UNIX/LINUX at SLAC(including where the scripts are kept)

    How to restart cmdSrv

    How cmdSrv gets started at boot time.

    How static load balancing works.

    How to allow unlimited invocations for a given class.

    How to do the setup for SCP and standalone VMS clients.

    How to find Unix/Linux hosts for cmdSrv classes, and some useful tools.

    How to write Unix/Linux scripts that are invoked from cmdSrv (CS Scripts).

    How to add a new cmdSrv request to a SCP panel.

    How to write and run VMS standalone clients and execute multiple scripts from vms at SLAC.

    How to write and run a non-slc-control-system client at SLAC.

    How to add a new Unix/Linux cmdSrv host.

    Archiver Application support.

    Troubleshooting, Diagnostics, and Where the Web Documentation pages are kept.

    RETURN to Controls Software page.