Using INV and OUTV
Initiating and Communicating With Processes
107365 Tandem Computers Incorporated
5–17
Use the macro in Figure 5-7,
fupin
, to communicate with FUP using OUTV and a
static INV.
Figure 5-7. Communicating With FUP Using INV and OUTV
?SECTION fupin MACRO
#FRAME
PUSH in_variable == Create an IN variable
PUSH out_variable == Create an OUT variable
== Place a FUP command into the IN variable
#SET in_variable INFO STEIN.BOOK
FUP /INV in_variable, OUTV out_variable/
#OUTPUTV out_variable == Display FUP output
#UNFRAME
You can start a process in the background and send it commands from your terminal.
The following steps illustrate an interactive session with FUP:
1.
Define the variables:
9> #PUSH input_queue output_queue prompt_string
termination_results
2.
Start a FUP process that runs concurrently with the TACL process:
10> FUP /INV input_queue DYNAMIC PROMPT prompt_string,
OUTV output_queue, NOWAIT, STATUS termination_results/
3.
Use #WAIT to make sure the previous operation has finished:
11> SINK [#WAIT prompt_string]
4.
Clear the prompt variable:
12> #SET prompt_string
5.
You can then send commands to FUP:
13> #APPEND input_queue purge X!
14> SINK [#WAIT prompt_string]
15> #SET prompt_string
16> #APPEND input_queue files
17> SINK [#WAIT prompt_string]
18> #SET prompt_string
6.
Finally, terminate the FUP process and delete associated variables:
19> #APPEND input_queue exit
20> #POP input_queue output_queue prompt_string &
termination_results
When used for productive work, include error checking for the #WAIT operations.