Data Control Block: Difference between revisions
No edit summary |
Reverted edits by 194.225.248.118 (talk) to last revision by Rror: Vandalism. |
||
Line 1: | Line 1: | ||
In [[IBM mainframe]] [[operating system]]s, such as [[OS/360]], [[MVS]], [[z/OS]], a '''Data Control Block''' ('''DCB''') is a |
In [[IBM mainframe]] [[operating system]]s, such as [[OS/360]], [[MVS]], [[z/OS]], a '''Data Control Block''' ('''DCB''') is a description of a [[data set (IBM mainframe)|dataset]] in a program. A DCB is coded in [[Assembly language|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 the many ''control blocks'' used in these operating systems. A ''control block'' is a data area with a predefined structure, very similar to a C <code>struct</code>, but typically only related to system's functions. A DCB may be compared to a FILE structure in C, but it is much more complex, offering many more options for various [[access method]]s. |
A DCB is one of the many ''control blocks'' used in these operating systems. A ''control block'' is a data area with a predefined structure, very similar to a C <code>struct</code>, but typically only related to system's functions. A DCB may be compared to a FILE structure in C, but it is much more complex, offering many more options for various [[access method]]s. |
Revision as of 08:01, 8 March 2010
In IBM mainframe operating systems, such as OS/360, MVS, z/OS, a Data Control Block (DCB) is a description of a dataset in a program. 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 the 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's functions. A DCB may be compared to a FILE structure in C, but it is much more complex, offering many more options for various 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 itself. The addresses of I/O subroutines would be 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/VSEoperating systems is a "DTF" (Define the file)[1]
Typical contents of a DCB
- symbolic file name (to match a JCL statement for opening the file)
- type of access (eg. random, sequential, indexed)
- physical characteristics (blocksize, logical record length)
- number of I/O buffers to allocate for processing to permit overlap of I/O
- address of I/O operating system library subroutines (eg. read/write)
- other variables as required by the subroutines according to type
See also
- Data Set Control Block (DSCB), a part of VTOC