User`s guide

108 DC 900-1340I
BSC Programmers Guide
Normal and Raw operations can be mixed. For example, the client application session
can be configured for Normal operation (allowing DLI to handle link startup and con-
figuration), but the read and write requests (Section 5.4 on page 115 and Section 5.5 on
page 150) can use Raw operation by including the optional arguments structure con-
taining the protocol-specific information (Section 5.3.1 on page 114).
Note
The protocol-specific writeType DLI configuration parameter
(Table 7–2 on page 191) specifies the type of data to be sent on the
line (
normal or transparent). This parameter should not be confused
with Normal operation.
5.1.3 Blocking versus Non-blocking I/O
Note
Earlier Freeway releases used the term “synchronous” for blocking
I/O and “asynchronous” for non-blocking I/O. Some parameter
names reflect the previous terminology.
Non-blocking I/O applications are useful when doing I/O to multiple channels with a
single process where it is not possible to “block” on any one channel waiting for I/O
completion. Blocking I/O applications are useful when it is reasonable to have the call-
ing process wait for I/O completion.
In the Freeway environment, the term blocking I/O indicates that the dlOpen, dlClose,
dlRead and dlWrite functions do not return until the I/O is complete. For non-blocking
I/O, these functions might return after the I/O has been queued at the client, but before
the transfer to Freeway is complete. The client must handle I/O completions at the soft-
ware interrupt level in the completion handler established by the
dlInit or dlOpen func-
tion, or by periodic use of
dlPoll to query the I/O completion status.