Performance  ConsideratiollS  
UsingIUCV   Functions  IUCV   assigns  path  ids  and  records  the  path  id  in  each  communicator's  communi  
cation control table (CCT).IUCV   sets  up  one  CCT  for  each  virtual  machine  and  
one for theCP   system.  A  given  communicator  can  reference  only  the  paths  
recorded in its own CCT.Other   references  are  not  possible.  IUCV   assigns  the  message  id  for  each  message.  Although  this  message  identifier  
may be reused, at any given time, it identifies only one message.IUCV   does  not  
use this identifier as a direct reference, but only as an operand in a comparison. It
is conceivable that a virtual machine could generate a valid message identifier and
use this to request a message. However, when a message id is used to request a
message, a user must also specify a message class and a path id. If the specified
message is not associated with the specified path id, and message class, the user
cannot access the messages. If the message id, path id, and message class do
match, the user could legitimately access it by specifying simply path id and/or
message class without the generated message id.
The installation can limit the number of connections for a particular virtual
machine in the virtual machine directory.
The overhead involved in reflectingIUCV   external  interrupts  to  the  virtual  
machine can be reduced if the buffer declared on the DECLARE BUFFER func
tion is entirely within one page.Overhead   can  be  reduced  further  if  the  buffer  is  
entirely within page0   of  the  virtual  machine.  
Modules DMKIUA and DMKIUE can be made resident to improve the perform
ance of IUCV.
Communicators invoke allIUCV   functions  through  the  IUCV   macro  instruction.  
When using theIUCV   macro  instruction,  communicators  specify  which  function  
they wish to perform. Most functions also require the address of a parameter list to
contain inputs to and outputs from the requested function. Communicators can
store inputs directly in the parameter list or they can specify inputs with keyword
parameters.IUCV   moves  the  values  specified  on  the  keyword  parameters  into  the  
specified parameter list. For details on how to use theIUCV   macro,  see  the  sec  
tion"Invoking   IUCV   Functions".  
The following list describes theIUCV   functions  in  the  order  that  they  might  be  
used in a typical communication.
QUERY -Use the QUERY function to determine how large a bufferIUCV   requires  to  store  external  interrupt  information.  IUCV   returns  the  number  of  
bytes required in general register zero. In addition, use the QUERY function
to determine the maximum number of communication paths that can be estab
lished for your virtual machine.IUCV   returns  the  maximum  number  of  paths  
in general register one. The QUERY function does not use a parameter list.CP   system  code  cannot  use  the  QUERY  function.  
DECLARE BUFFER -Use the DECLARE BUFFER function to specify the
address of a buffer into whichIUCV   can  store  external  interrupt  information.  
If a virtual machine receives anIUCV   external  interruption,  IUCV   stores  in  
Inter-User Communications Vehicle 119
Using
cation control table (CCT).
one for the
recorded in its own CCT.
may be reused, at any given time, it identifies only one message.
use this identifier as a direct reference, but only as an operand in a comparison. It
is conceivable that a virtual machine could generate a valid message identifier and
use this to request a message. However, when a message id is used to request a
message, a user must also specify a message class and a path id. If the specified
message is not associated with the specified path id, and message class, the user
cannot access the messages. If the message id, path id, and message class do
match, the user could legitimately access it by specifying simply path id and/or
message class without the generated message id.
The installation can limit the number of connections for a particular virtual
machine in the virtual machine directory.
The overhead involved in reflecting
machine can be reduced if the buffer declared on the DECLARE BUFFER func
tion is entirely within one page.
entirely within page
Modules DMKIUA and DMKIUE can be made resident to improve the perform
ance of IUCV.
Communicators invoke all
When using the
they wish to perform. Most functions also require the address of a parameter list to
contain inputs to and outputs from the requested function. Communicators can
store inputs directly in the parameter list or they can specify inputs with keyword
parameters.
specified parameter list. For details on how to use the
tion
The following list describes the
used in a typical communication.
QUERY -Use the QUERY function to determine how large a buffer
bytes required in general register zero. In addition, use the QUERY function
to determine the maximum number of communication paths that can be estab
lished for your virtual machine.
in general register one. The QUERY function does not use a parameter list.
DECLARE BUFFER -Use the DECLARE BUFFER function to specify the
address of a buffer into which
If a virtual machine receives an
Inter-User Communications Vehicle 119
 
             
            
































































































































































































































































































































































































































































































































































































































