A DSCB (Data Set Control Block) is a single record in a VTOC (Volume Table of Contents). There are several types of DSCBs, referred to as Format n DSCBs. A Format 1 DSCB is the entry for a data set. The DCB attributes for the data set, as well as a wealth of other information, are kept in the Format 1 DSCB. At least conceptually, there are two types of "model DSCBs." Both types are small data sets, often 0 track data sets. Use JCL like this to allocate a model DSCB.
//MODEL DD UNIT=SYSDA,DISP=(,CATLG),SPACE=(TRK,0),
In JCL you can reference this type of model DSCB like this
//DDSTMT DD UNIT=SYSDA,DISP=(,CATLG),SPACE=(...),
The model DSCB for a generation data group before SMS is a data set that was not cataloged that has a data set name that matches the generation data group name. The data set had to be allocated on the same volume as the catalog where the generation data group was allocated. In the SMS world this was no good because
- You're not supposed to know anything about where your data set is allocated.
- In any event, in the SMS world you cannot specify a volume serial for an allocation.
In the original OS/360 world it was illegal to have two catalog entries of two different types with the same name, which was why the GDG model was allocated on the same volume as the catalog, but was not itself cataloged. Again, going back to the OS/360 world, if there was no model DSCB, the system would not allocate the data set unless the JCL specified a model DSCB data set name.
Model DSCBs were a good idea, flawed by some unexpected issues. Some DSCB attributes that are not also DCB attributes, such as expiration date, are copied to the new data set. I still remember being caught up in this problem back in 1970 or so!