operation. Thus, there is no
assurance that aCCW read as data
is valid until the operation is
completed. If theCCW is in error, the use of the CCW in the current
operation may cause subsequent data
to be placed in wrong storage
locations with resultant
destruction of the contents of
those locations.
2. When, during data chaining, anI/O device transfers data by using the
data-streaming facility(see the
section "Data-Streaming Feature" inChapter 2 of the publication IBM System/360 and System/370 I/O Interface Channel to Control Unit
OriginalEguipment--Manufacturer5' Information, GA22-6974), an overrun
or chaining-check condition may be
recognized whena small count value
is specified in theCCW. The mini
mum acceptable number of bytes that
canbe specified varies as a func
tion of the system model and system
activity. Refer to the appropriate
channel SL pUblication to determine
the most reasonable minimum byte
count that can be handled by the
channel.Command Chaining During command chaining, the new CCW fetched by the channel specifies a new I/O operation. The channel fetches the
newCCW and initiates the new operation
(unless the newCCW contains a suspend
flag) upon receipt of the device-end
signal for the current operation. The
presence of a suspend flag in the newCCW causes command chaining to be termi
nated. (See thesection "Suspension of Channel-Program Execution" later in this
chapter.) When command chaining takes
place, the completion of the current
operation does not generate an inter
ruption condition, and the count
indicating the amount of data trans
ferred during the current operation is
not made available to the program. For
operations involving data transfer, the
new command always applies to the next
block at the device.
The new operation is initiated only if
no unusual situations have been detected
in the current operation. In
particular, the channel initiates a newI/O operation by command chaining upon
receipt of a status byte signaling one
of the following status combinations:
device end, device end and status modi
fier, device end and channel end, device
end and channel end and status modifier.
In the former two cases, channel end
must havebeen signaled before device
end, with all other status bits set to
zeros. If status such as attention,
unit check, unit exception, incorrect
length, program check,or protection check has occurred, the sequence of
operations is concluded, and the status
associated with the current operation
causes an interruption condition to be
generated. The newCCW in this case is
not fetched. Incorrect length does not
suppress command chaining if the currentCCW has the SLI flag set to one.
An exception to sequential chaining ofCCWs occurs when the I/O device presents
status modifier with device end. When
no unusual conditions have been detected
and command chaining is specified or
when command retry has been previously
signaled and an immediate retry could
not be performed, the combination of
status modifier and device end causes
the channel to alter the sequential
execution ofCCWs. If command chaining
was specified, status modifier and
device end cause the channel to chain to
theCCW whose storage address is 16
higher than that of theCCW that speci
fied chaining. If command retry was
previously signaled and immediate retry
could not be performed, the status caus
es the channel to command-chain to theCCW whose storage address is 8 higher
than that of theCCW for which retry was
initially signaled.
When both command and data chaining are
used, the firstCCW associated with the
operation specifies the operation to be
executed, and the lastCCW indicates
whether another operation follows.Programming Note Command chaining makes it possible for
the program to initiate transfer of
multiple blocks by means of a single
START1/0 or START I/O FAST RELEASE. It
also permits a subchannel to be set up
for the execution of auxiliary
functions, such as positioning the
disk-access mechanism, and for data
transfer operations without interference
by the program at the end of each opera
tion.Command chaining, in conjunction
with the status-modifier condition,
permits the channel to modify the normal
sequence of operations in response to
signals provided by theI/O device. SKIPPING Skipping causes the suppression of stor
age references during anI/O operation.
It is defined only for read, read back
ward, and sense operations and is
controlled by the skip flag, which can
be specified individually for eachCCW. When the skip flag is one, skipping
occurs; when zero, normal operationChapter 13. Input/Output Operations 13-43
assurance that a
is valid until the operation is
completed. If the
operation may cause subsequent data
to be placed in wrong storage
locations with resultant
destruction of the contents of
those locations.
2. When, during data chaining, an
data-streaming facility
section "Data-Streaming Feature" in
Original
or chaining-check condition may be
recognized when
is specified in the
mum acceptable number of bytes that
can
tion of the system model and system
activity. Refer to the appropriate
channel SL pUblication to determine
the most reasonable minimum byte
count that can be handled by the
channel.
new
(unless the new
flag) upon receipt of the device-end
signal for the current operation. The
presence of a suspend flag in the new
nated. (See the
chapter.) When command chaining takes
place, the completion of the current
operation does not generate an inter
ruption condition, and the count
indicating the amount of data trans
ferred during the current operation is
not made available to the program. For
operations involving data transfer, the
new command always applies to the next
block at the device.
The new operation is initiated only if
no unusual situations have been detected
in the current operation. In
particular, the channel initiates a new
receipt of a status byte signaling one
of the following status combinations:
device end, device end and status modi
fier, device end and channel end, device
end and channel end and status modifier.
In the former two cases, channel end
must have
end, with all other status bits set to
zeros. If status such as attention,
unit check, unit exception, incorrect
length, program check,
operations is concluded, and the status
associated with the current operation
causes an interruption condition to be
generated. The new
not fetched. Incorrect length does not
suppress command chaining if the current
An exception to sequential chaining of
status modifier with device end. When
no unusual conditions have been detected
and command chaining is specified or
when command retry has been previously
signaled and an immediate retry could
not be performed, the combination of
status modifier and device end causes
the channel to alter the sequential
execution of
was specified, status modifier and
device end cause the channel to chain to
the
higher than that of the
fied chaining. If command retry was
previously signaled and immediate retry
could not be performed, the status caus
es the channel to command-chain to the
than that of the
initially signaled.
When both command and data chaining are
used, the first
operation specifies the operation to be
executed, and the last
whether another operation follows.
the program to initiate transfer of
multiple blocks by means of a single
START
also permits a subchannel to be set up
for the execution of auxiliary
functions, such as positioning the
disk-access mechanism, and for data
transfer operations without interference
by the program at the end of each opera
tion.
with the status-modifier condition,
permits the channel to modify the normal
sequence of operations in response to
signals provided by the
age references during an
It is defined only for read, read back
ward, and sense operations and is
controlled by the skip flag, which can
be specified individually for each
occurs; when zero, normal operation