As instructions execute the work of a computer system, they keep track of this work in storage areas known as control blocks. Generally speaking, there are four types of z/OS control blocks:
– System-related control blocks
– Resource-related control blocks
– Job-related control blocks
– Task-related control blocks
Each system-related control block represents one z/OS system and contains system-wide information, such as how many processors are in use.
Each resource-related control block represents one resource, such as a processor or storage device.
Each job-related control block represents one job executing on the system.
Each task-related control block represents one unit of work.
Control blocks serve as vehicles for communication throughout z/OS. Such communication is possible because the structure of a control block is known to the programs that use it, and thus these programs can find needed information about the unit of work or resource.
Control blocks representing many units of the same type may be chained together on queues, with each control block pointing to the next one in the chain. The operating system can search the queue to find information about a particular unit of work or resource, which might be:
– An address of a control block or a required routine
– Actual data, such as a value, a quantity, a parameter, or a name
– Status flags (usually single bits in a byte, where each bit has a specific meaning)