Data Control Block
A Data Control Block (DCB) is a description of a dataset in IBM mainframe operating systems, such as OS/360, MVS, and z/OS. A DCB is coded in assembler programs using the DCB macro instruction (which expands into a large number of "define constant" instructions). High-level language programmers use library routines containing DCBs.
A DCB is one of many control blocks used in these operating systems. A control block is a data area with a predefined structure, very similar to a C struct, but typically only related to system functions. A DCB may be compared to a FILE structure in C, but it is much more complex, offering many more options for access methods.
The control block acted as the application programming interface between Logical IOCS and the application program and usually was defined within (and resided within) the application program. The addresses of I/O subroutines were resolved during a linkedit phase after compilation or else dynamically inserted at OPEN time.
The equivalent control block for IBM DOS/360, DOS/VSE and z/VSE operating systems is a "DTF" (Define the file)