Open System Services Programmer's Guide
Blocking and Nonblocking Terminal I/O
For J-series RVUs, H06.06 and later H-series RVUs, and G06.27 and later G-series RVUs,
nonblocking behavior is supported for Telserv and OSSTTY terminal objects for these functions:
• select()
• FILE_COMPLETE_()
• FILE_COMPLETE_SET_()
• FILE_COMPLETE_GETINFO_()
If you attempt to use these funcions on a terminal process running on a system that is running RVUs
earlier than G06.27 or H06.06:
• select() returns the error ENOTSUP.
• FILE_COMPLETE_() and FILE_COMPLETE_SET_() return the error FEINVALIDOP.
Nonblocking behavior for the open() and fcntl() functions continues to be supported.
Each processor in the system has a terminal helper process that provides support for nonblocking
I/O for terminal devices. Terminal helpers are named processes with names of the form $ZTTnn,
where nn is the processor number. Terminal helper processes are started automatically when the
processor is started. If the terminal helper process stops or terminates abnormally, the processor
halts.
Terminal Parameters
Most of the control characters in the c_cflag field of the termios structure in the termios.h
header file are ignored. The HUPL flag of the c_flag field affects both local and remote terminals.
For more information, refer to the termios(4) and tty(7) reference pages either online or in
the Open System Services System Calls Reference Manual.
Also, the following functions have no effect:
• cfsetispeed()
• cfsetospeed()
• csendbreak()
Control Characters
The default values of control characters are defined in the termios.h header file. The definitions
are in the array specified by the c_cc field of the termios structure. According to the standards
that the OSS environment conforms to, these values can vary from implementation to implementation.
The OSS API has two terminal I/O modes: canonical mode, in which input data is assembled into
lines, and noncanonical mode, in which input data is not assembled into lines.
Canonical mode control characters, their default values, associated flags, and indexes into the
array specified by the c_cc field of the termios structure are shown in Table 24.
Table 24 Canonical Mode Control Characters and Associated Flags in termios.h
Index in c_ccAssociated FlagDefault ValueControl Character
VEOFICANON%X04 ^DEOF
VEOLICANON%X0A ^MEOL
VERASEICANON%X08 ^HERASE
VINTRISIG, NOFLSH%X03 ^CINTR
VKILLICANON%X15 ^UKILL
Terminal I/O 211