GDSX Manual
DEVICE^HANDLER Example, Design
Extended General Device Support (GDSX) Manual–134303
5-20
Testing Failure at a ^WRITEREAD
It may be unnecessary to do this part of the tutorial if your GDSX application does not
require fault-tolerance features beyond restarting tasks in case of a takeover by the
backup process. You will probably find it useful, however, if you need to use TSCODE-
supported checkpointing procedures to send stack images or dynamically allocated
memory to the backup process.
This exercise requires three terminals to be designated the TACL terminal, the Inspect
terminal, and the application terminal. Log on to all three terminals.
Testing Failure at a ^WRITEREAD
At the application terminal, pause the TACL process with the PAUSE command. For
this example, the terminal’s device name is $TC1.
At the TACL terminal, use CLEAR ALL if necessary to clear any previously set
parameter values, and enter the following PARAM command:
> PARAM EXTSUSIZE 1
Then run the GDSX example as a process pair by specifying a backup CPU:
> RUN GDSE /NAME $GDS, NOWAIT, CPU primary / backup
where primary and backup are CPU numbers for your system.
See whether the processes have actually been started:
> STATUS *, TERM
Record the CPU and PIN values for the GDSX processes for later reference:
primary-cpu,primary-pin backup-cpu,backup-pin
Start a requester process that will create a DEVICE^HANDLER task under GDSX:
> RUN APPL /NAME $A1, OUT $GDS.#TC1, NOWAIT/
The application terminal should now display a prompt.
At the application terminal, enter a few strings at the requester prompts to confirm that
the system behaves as you previously observed. Then enter some text at the prompt, but
do not enter a carriage return. The requester and the DEVICE^HANDLER task now
have pending WRITEREADs.
At the TACL terminal, simulate a GDSX process failure by entering:
> STOP primary-cpu, primary-pin
At the application terminal, after the CPU and PIN prompt and the text that you entered,
in approximately half a minute you should see the following message:
PLEASE RE-ENTER DATA
followed by a new CPU and PIN prompt. Enter a text string or two to verify that the
system is still running as usual. Note that the prompt did not change. GDSX, not the
requester, switched over.