Processing Commands

After RSCS initializes, the REX task monitors the execution of commands for the RSCS virtual machine. These commands may be issued from the RSCS console, a remote node, or arrive as an SMSG executed on the local node (like from RSCSAUTH).

DMTMAN receives commands that originate from the RSCS console or from a GCS exec. DMTMAN places these command elements in a static area. This ensures that the REX task only processes one console command at a time.

After calling DMTCOMDQ to remove an element from its command queue, the REX task calls DMTCMX to process the command. However, the REX task may call DMTCOMNQ to pass the command element to another task to complete the command processing. Each RSCS task has a command queue and an ECB through which it is notified of the arrival of a command element. When a NETWORK HALT or STOP command is issued, the REX task posts each active SNA task’s terminate ECB. The following table lists each RSCS task and the commands they process.

Task Commands Processed
Communications CP, CPQUERY, EXIT, QUERY, ROUTE
Spool manager CHANGE, ORDER, PURGE, REORDER, TRANSFER
Link driver BACKSPACE, DRAIN, FLUSH, FREE, FWDSPACE, HOLD
SNA control START (for SNA links)
Exec processor EXEC
Event scheduler SCHEDULE
Port Redirector TCPIP

Some commands are usually processed by the REX task. However, the REX task may also call the AXM task to re-enqueue existing files according to the network structure. For example, when processing the ROUTE command, the REX task passes a REORDER command element to the AXM task after the network definitions are updated.

When the following commands are issued, the REX task calls the GCS ATTACH and DETACH macros to create or remove system tasks:
START
Attaches a non-SNA link driver task
FORCE
Detaches a non-SNA link driver task
ENABLE
Attaches an auto-answer task (DUP)
NETWORK START
Attaches the SNA control task (SCT)
TCPIP START
Attaches the TCP port redirector task (PRD)
TCPIP STOP
Detaches the TCP port redirector task (PRD)
DMTCMX, the main command processing module, receives all commands from the REX task. DMTCMX calls Exit 19 to determine if RSCS should process the command. It then calls DMTPAF to parse the command element. If RSCS does not recognize the command, DMTCMX calls Exit 29 to process the command. DMTCMX also contains routines to process certain RSCS commands. If it cannot process a command, DMTCMX calls one of the following modules:

A PAFBLOK describes each RSCS command and contains the address of the routine that executes the command. The command’s CDEF entry in the RSCSCMDS macro (see CDEF Macro) contains the name of this processing routine.