Ch 4. Intrinsics Used with No-Wait I/O [ SNA IMF Programmer's Reference Manual ] MPE/iX 5.0 Documentation
SNA IMF Programmer's Reference Manual
Chapter 4 Intrinsics Used with No-Wait I/O
No-wait I/Od I/Oogram to issue I/O requests and continue processing
without waiting until the I/O has completed. No-wait I/O overlaps the
processing of multiple I/O requests, overlaps I/O with CPU processing,
and responds to the completion of the first of several outstanding I/O
requests.
All of the SNA IMF standard (wait) MPE I/O intrinsics can be used with
no-wait I/O. The following SNA IMF intrinsics can be used only with
no-wait I/O:
ABORT3270
IODONTWAIT (SNA IMF/V only)
IODONTWAIT3270 (SNA IMF/XL only)
IOWAIT (SNA IMF/V only)
IOWAIT3270 (SNA IMF/XL only)
The rules for using these intrinsics are consistent with the rules for
using MPE V and MPE XL intrinsics. In fact, two of the SNA IMF
intrinsics ( IOWAIT and IODONTWAIT) are MPE V and MPE XL intrinsics.
Their use as SNA IMF intrinsics differs from their use as MPE intrinsics
in two ways:
1. The cstation parameter of the IOWAIT and IODONTWAIT intrinsics is
interpreted as the result parameter of the RECV3270 and TRAN3270
intrinsics.
2. The tcount and target parameters of the IOWAIT and IODONTWAIT
intrinsics are meaningless in SNA IMF. They are optional in calls
to IOWAIT and IODONTWAIT, but the tcount parameter must be
passed in calls to the SNA IMF/XL intrinsics IOWAIT3270 and
IODONTWAIT3270.
The MPE intrinsics IOWAIT and IODONTWAIT can be called only from SNA
IMF/V. IOWAIT and IODONTWAIT cannot be called directly from SNA IMF/XL,
so you must use the SNA IMF/XL intrinsics IOWAIT3270 and IODONTWAIT3270,
which in turn call the MPE intrinsics IOWAIT and IODONTWAIT.
The intrinsic descriptions in this chapter are listed in alphabetical
order. Each description includes parameter definitions, a list of
possible return codes that the intrinsic can generate, and the intrinsic
calling sequence. Abbreviations above the parameters in the syntax
descriptions indicate the data types of the parameters. The
abbreviations are as follows:
I Integer passed by reference
IV Integer passed by value
L Logical
LA Logical Array
See appendix A, "Intrinsic Result Codes," for a complete list of all
result codes returned in the result parameter of SNA IMF intrinsics.
The descriptions of IOWAIT, IOWAIT3270, IODONTWAIT, and IODONTWAIT3270 on
the following pages show only the SPL calling sequences. For a
description of how to use these intrinsics in FORTRAN, Pascal, COBOL II,
or C, see the FORTRAN/3000 Reference Manual (MPE V), the FORTRAN 77/XL
Reference Manual (MPE XL), the Pascal/3000 Reference Manual (MPE V), the
Pascal Reference Manual (MPE XL), the COBOL II/3000 Reference Manual (MPE
V), the COBOL II Reference Manual (MPE XL), or the C/XL Reference Manual
(MPE XL).
No-wait MPE I/O requires MPE privileged mode(PM) capability. However,
you do not need PM capability to write an SNA IMF application that uses
no-wait I/O, because the SNA IMF intrinsics themselves have PM
capability. When your application calls the SNA IMF OPEN3270 intrinsic
with bit 15 of the flags parameter set to 1 (the no-wait I/O option),
your program can call any of the SNA IMF intrinsics with no-wait I/O,
whether or not you have PM capability.
If you do not have PM capability, SNA IMF intrinsics are the only
intrinsics you can call with no-wait I/O. If you call, for example, the
MPE FREAD intrinsic, your program will suspend processing until the I/O
request has finished, even though you specified no-wait I/O in your
OPEN3270 intrinsic call.
You need PM capability to call the MPE V and MPE XL intrinsic FOPENfrom a
program that uses no-wait I/0.
WARNING The normal checks and limitations that apply to the standard
users in MPE V and MPE XL are bypassed in privileged mode. It
is possible for a privileged mode program to destroy file
integrity, including the MPE V and MPE XL operating system
software. Hewlett-Packard will investigate and attempt to
resolve problems resulting from the use of privileged mode.
This service, which is not provided under the standard Service
Contract, is available on a time and materials billing basis.
However, Hewlett-Packard will not support, correct, or attend to
any modification to the MPE V and MPE XL operating system
software.
If your program will use no-wait MPE I/O, it must be written in COBOL II,
FORTRAN, Pascal, SPL, or C. The IOWAIT, IOWAIT3270, IODONTWAIT, and
IODONTWAIT3270 intrinsics return a functional value, pass parameters by
value, allow a variable number of parameters, and set condition codes.
Neither COBOL nor BASIC has these capabilities.
NOTE In the following discussion, " IOWAIT" is used to mean IOWAIT for
SNA IMF/V and IOWAIT3270 for SNA IMF/XL. "IODONTWAIT" is used to
mean IODONTWAIT for SNA IMF/V and IODONTWAIT3270 for SNA IMF/XL.
Use the intrinsics that are appropriate to your software.
MPE/iX 5.0 Documentation