GDSX (Extended General Device Support) Manual

LINE^HANDLER Example, Running and Managing
Extended General Device Support (GDSX) Manual529931-001
6-4
Running an Application Process
The STATUS command tells you that there are two TSCODE system tasks, and one
USCODE user LINE task. Enter:
PROCESS $GDS # -> STATUS SU T1, DETAIL
The task number is 0, indicating that a DEVICE^HANDLER task has not yet been
created to manage the T1 subdevice preconfigured. Enter:
PROCESS $GDS # -> STATUS SU *, DETAIL
The wild-card character (*) directs the STATUS command to give information about all
SU objects under the LINE object.
Running an Application Process
The application terminal is used for input to and output from the example application.
Log on at the application terminal, assumed to have device name $TC1. Pause the
TACL process with the PAUSE command. Pausing the TACL process allows the
application process to control the terminal.
At the TACL terminal, start a requester application, named $A1 in this example:
> RUN APPL /NAME $A1, OUT $GDS.#LX.T1, NOWAIT/
This process must be run after the GDSX process has been started so that I/O from
this process can pass through GDSX. $A1 opens the specified OUT file. GDSE
examines the open message and determines that T1 is configured under the line
$LX, opens subdevice T1, creates a DEVICE^HANDLER task to manage
communication to T1, and notifies the LINE^HANDLER task that the SU is open.
Messages sent to T1 are routed to the DEVICE^HANDLER task, and then passed to
the LINE^HANDLER task, which sends the messages on to device $TC1, specified by
the access name for the LINE object.
The application terminal should now show a prompt sent by the application program
through the GDSE process. The prompt contains the CPU number and PIN of the
application program. From the TACL prompt you may enter:
> STATUS *, TERM
to verify this.
At the SCF terminal, enter:
-> STATUS PROCESS $GDS
The STATUS command tells you that now there are two TSCODE system tasks, and
two USCODE user tasks, a DEVICE^HANDLER task and a LINE task.
Enter:
-> STATUS, SUB ALL
The state of both T1 and LINE object is STARTED, meaning that DEVICE^HANDLER
and LINE^HANDLER tasks exist. Both T1 and the LINE object have 1 open.