Channel Program Execution; Initiation Of Channel Program - IBM System/360 System Programmer's Manual

Operating system
Hide thumbs Also See for System/360:
Table of Contents

Advertisement

devices
supported
by
the
operating
system, the data extent block is
produced during execution of the OPEN
macro-instruction
for
the
data
control
block.
The system places the address of the data extent block
into the data control block.
CHANNEL PROGRAM EXECUTION
This section explains how the system uses your
channel
program
and
control blocks after the EXCP macro-instruction has been issued.
INITIATION OF CHANNEL PROGRAM
By
issuing
the EXCP macro-instruction, you request the execution of
the
channel
program
specified
in
the
input/output
block.
The
input/output supervisor checks the request for validity by ensuring that
the required control blocks contain the correct information.
If they do
not, abnormal termination procedures are
initiated.
A
program
check
occurs if the control blocks are not on correct boundaries.
The
input/output
supervisor obtains "the address of the data control
block from the input/output block and the address
of
the
data
extent
block
from
the
data
control
block.
From the data extent block, the
system obtains the address of the
unit
control
block
(UCB)
for
the
desired
I/O
device.
To
protect
and
facilitate
reference
to
the
addresses of the lOB, DEB, and UCB, the input/output
supervisor
places
these addresses, along with other information about the channel program,
into
an
area called a request element.
The request element is used by
the input/output supervisor for forming queues
to
keep
track
of
I/O
requests.
A
channel
program's
request element is "available" if the
information it contains is no longer to
be
used
by
the
input/output
supervisor
and
if
it
is
ready
to receive information about another
request.
When a request element is "made available", it is removed from
all request queues and placed on a queue of available request
elements.
You
are
not
concerned with the contents of the request element unless
you have provided
appendage
routines,
as
explained
in
the
section
"Appendages."
After
completing
the
request
element for the channel program, the
input/output supervisor deterITines whether a channel and
the
requested
I/O
device
are
ready for the channel prograrr·.
If they are not ready,
the request element is placed into the appropriate queue, and control is
returned to the problem program.
The channel
program
is
subsequently
executed when the channel and device are ready.
To
initiate execution of the channel program, the system obtains its
address from the
input/output
block,
places
this
address
into
the
channel
address
word
(CAW),
and
issues
a
start input/output (SIO)
instruction.
Before issuing the SIO instruction
for
direct-access
devices,
the
system
issues
the
initial
seek,
which
is
overlapped
with
other
operations.
You
specify
the
seek address in the input/output block.
When the seek has completed, the system constructs a
command
chain
to
reissue
the seek, set the file mask specified in the data extent block,
and pass control to your channel program.
(When
using
the
operating
system,
you
cannot
issue
the
initial
seek
cr
set
the
file mask
yourself. )
Before issuing SIO for magnetic tape devices, the system constructs a
command chain to set the mode specified in the
data
extent
block
and
pass control to your channel prograIT.
(When using the operating system,
you cannot set the mode yourself.)
78

Advertisement

Table of Contents
loading

Table of Contents