IUCV Overview

The Inter-User Communications Vehicle (IUCV) is a communications facility that allows a program running in a virtual machine to communicate with other virtual machines, with a CP system service, and with itself.

An IUCV communication takes place between a source communicator and a target communicator. The communication takes place over a predefined linkage called a path. Each communicator can have multiple paths, and can receive or send multiple messages on the same path simultaneously.

IUCV provides functions, through the IUCV macro, to:
  • Create and dismantle paths
  • Send and reply to messages
  • Receive or reject messages
  • Control the sequence of IUCV events.

Communicators receive information about IUCV events by handling IUCV external interrupts.

To use the IUCV macro, issue the CMS GLOBAL command for HCPGPI MACLIB before assembling your program.

Note: Advanced Program-to-Program Communication/VM (APPC/VM) is based on the IUCV support described in this chapter. Using APPC/VM, a user application program can communicate with a resource manager program in the same system, as with IUCV. With APPC/VM however, an application program can also communicate with a program in another system. This other system could reside in the same TSAF collection (a defined group of z/VM systems), CS collection, or anywhere within a network defined by IBM®'s Systems Network Architecture (SNA). IUCV connections are restricted to the CS collection, and by default to only virtual machines on the same system.

This chapter only describes communication using IUCV—it does not include information about APPC/VM. Please refer to The Advanced Program-to-Program Communication/VM for details about APPC/VM and communications outside a single system.

You can write programs that use just the IUCV support described in this chapter, however, CMS IUCV applications should use the CMS support for IUCV and APPC/VM as described in z/VM: CMS Application Development Guide for Assembler and z/VM: CMS Macros and Functions Reference. The CMS Shared File System, Session Services, private resources, CPI Communications (also known as SAA communications interface), and Coordinated Resource Recovery are just some of the functions and products that require this CMS support.