z/OS DFSMSdfp Advanced Services
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


CCW Channel Program

z/OS DFSMSdfp Advanced Services
SC23-6861-01

The CCW channel program you supply is composed of CCWs on doubleword boundaries. Each channel command word specifies a command to be executed and, for data transfer commands, the source or destination area. CCW operation codes are described in the IBM® publications for each I/O device.

You can specify both data chaining and command chaining by setting applicable chaining bits in the channel command word and indicating the type of chaining in the IOB. If an I/O error occurs while your channel program executes, the corresponding chaining bits in the IOB need to be set. Otherwise, error recovery could be impossible. The integrity of your data could be compromised. (See Input/Output Block (IOB) Fields for additional information.) If you specify both data and command chaining in the same channel command word, data chaining takes precedence.

The location of the CCWs, IDALs, MIDALs and I/O buffers in virtual and central storage depend on whether you are using EXCP or EXCPVR, whether you are using format 0 or 1 CCWs, and whether the device supports 64-bit IDALs or MIDALs. In particular:
  • When you use format-0 CCWs, the CCWs and the storage areas pointed to by the CCWs (IDALs, MIDALs, or I/O buffers) must be in 24-bit storage. Otherwise, you can use 31-bit storage.
  • When the CCW points to an indirect address list (IDAL), each indirect address list word (IDAW) in the list points to a 31-bit or 64-bit I/O buffer, depending on whether 31-bit or 64-bit IDAWs are used and whether the device supports 64-bit IDAWs. 64-bit IDAWs are only supported for disk and tape devices.
  • When the CCW points to a modified indirect address list (MIDAL), each modified indirect address word (MIDAW) in the list points to a 64-bit I/O buffer. MIDAWs are only supported for EXCPVR requests for disk devices and only when running on an IBM System z9® or higher processor.
  • For EXCP requests, the system translates your virtual channel program into a real channel program. During the translation process, the CCWs are copied to fixed storage, IDALs are created, and the I/O buffers are page fixed. Therefore, the storage restrictions mentioned above apply only to the virtual storage locations of the CCWs and IDALs; the CCWs and IDALs may reside anywhere in central storage. However, if the I/O buffer resides in 64-bit central storage, the device must support 64-bit IDAWs or else the system fails the EXCP request.
  • Because the system does translate your channel program for an EXCPVR request, the storage restrictions mentioned above apply to both virtual and central storage. For example, if format-0 CCWs are used, the CCWs and the storage areas pointed to by the CCWs (IDALs, MIDALs, or I/O buffers) must be in 24-bit virtual and central storage. However, the IDALS and MIDALS can still point above the 16MB line.
The following table summarizes the channel program storage requirements for different types of CCW channel programs:
Table 1. Storage area locations for CCW channel program components
Request and format Channel Program Component Virtual storage location Central storage location
EXCP format 0 CCW 24-bit Any
IDAL 24-bit Any
I/O Buffer
  • 24-bit if pointed to by CCW
  • 31 or 64-bit if pointed to by an IDAW
Any
EXCP format 1 CCW 31-bit Any
IDAL 31-bit Any
I/O Buffer
  • 31-bit if pointed to by CCW
  • 31 or 64-bit if pointed to by an IDAW or MIDAW
Any
EXCPVR format 0 CCW 24-bit 24-bit
IDAL 24-bit 24-bit
MIDAL 24-bit 24-bit
I/O Buffer
  • 24-bit if pointed to by CCW
  • 31 or 64-bit if pointed to by an IDAW or MIDAW
  • 24-bit if pointed to by CCW
  • 31 or 64-bit if pointed to by an IDAW or MIDAW
EXCPVR format 1 CCW 31-bit 31-bit
IDAL 31-bit 31-bit
MIDAL 31-bit 31-bit
I/O Buffer
  • 31-bit if pointed to by CCW
  • 31 or 64-bit if pointed to by an IDAW or MIDAW
  • 31-bit if pointed to by CCW
  • 31 or 64-bit if pointed to by an IDAW or MIDAW

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014