Related Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
Chapter 8. Graphic Input Devices Subsystem . . . . . . . . . . . . . . . . . . . . 183
open and close Subroutines . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
read and write Subroutines . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
ioctl Subroutines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
Input Ring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185
Chapter 9. Low Function Terminal Subsystem . . . . . . . . . . . . . . . . . . . . 189
Low Function Terminal Interface Functional Description . . . . . . . . . . . . . . . . . . 189
Components Affected by the Low Function Terminal Interface . . . . . . . . . . . . . . . . 190
Accented Characters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192
Related Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
Chapter 10. Logical Volume Subsystem . . . . . . . . . . . . . . . . . . . . . . . 195
Direct Access Storage Devices (DASDs) . . . . . . . . . . . . . . . . . . . . . . . 195
Physical Volumes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
Understanding the Logical Volume Device Driver . . . . . . . . . . . . . . . . . . . . 198
Understanding Logical Volumes and Bad Blocks . . . . . . . . . . . . . . . . . . . . 201
Related Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
Chapter 11. Printer Addition Management Subsystem . . . . . . . . . . . . . . . . . 205
Printer Types Currently Supported . . . . . . . . . . . . . . . . . . . . . . . . . . 205
Printer Types Currently Unsupported . . . . . . . . . . . . . . . . . . . . . . . . . 205
Adding a New Printer Type to Your System . . . . . . . . . . . . . . . . . . . . . . 205
Adding a Printer Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206
Adding a Printer Formatter to the Printer Backend . . . . . . . . . . . . . . . . . . . . 207
Understanding Embedded References in Printer Attribute Strings . . . . . . . . . . . . . . 207
Related Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
Chapter 12. Small Computer System Interface Subsystem . . . . . . . . . . . . . . . 209
SCSI Subsystem Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
Understanding SCSI Asynchronous Event Handling . . . . . . . . . . . . . . . . . . . 210
SCSI Error Recovery . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212
A Typical Initiator-Mode SCSI Driver Transaction Sequence . . . . . . . . . . . . . . . . 215
Understanding SCSI Device Driver Internal Commands . . . . . . . . . . . . . . . . . . 215
Understanding the Execution of Initiator I/O Requests . . . . . . . . . . . . . . . . . . 216
SCSI Command Tag Queuing . . . . . . . . . . . . . . . . . . . . . . . . . . . 218
Understanding the sc_buf Structure . . . . . . . . . . . . . . . . . . . . . . . . . 218
Other SCSI Design Considerations . . . . . . . . . . . . . . . . . . . . . . . . . 223
SCSI Target-Mode Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228
Required SCSI Adapter Device Driver ioctl Commands . . . . . . . . . . . . . . . . . . 233
Related Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239
Chapter 13. FCP, iSCSI, and Virtual SCSI Client Subsystem . . . . . . . . . . . . . . . 241
Programming FCP, iSCSI, and Virtual SCSI Client Device Drivers . . . . . . . . . . . . . . 241
FCP, iSCSI, and Virtual SCSI Client Subsystem Overview . . . . . . . . . . . . . . . . . 263
Understanding FCP, iSCSI, and Virtual SCSI Client Asynchronous Event Handling . . . . . . . . 264
FCP, iSCSI, and Virtual SCSI Client Error Recovery . . . . . . . . . . . . . . . . . . . 266
FCP, iSCSI, and Virtual SCSI Client Initiator-Mode Recovery When Not Command Tag Queuing 267
Initiator-Mode Recovery During Command Tag Queuing . . . . . . . . . . . . . . . . . . 267
A Typical Initiator-Mode FCP, iSCSI, and Virtual SCSI Client Driver Transaction Sequence . . . . . 269
Understanding FCP, iSCSI, and Virtual SCSI Client Device Driver Internal Commands . . . . . . 270
Understanding the Execution of FCP, iSCSI, and Virtual SCSI Client Initiator I/O Requests . . . . . 270
FCP, iSCSI, and Virtual SCSI Client Command Tag Queuing . . . . . . . . . . . . . . . . 271
Understanding the scsi_buf Structure . . . . . . . . . . . . . . . . . . . . . . . . . 272
Contents v