fbpx
Wikipedia

Task Control Block

The Task Control Block (TCB) contains the state of a task[a] in, e.g., OS/360 and successors on IBM System/360 architecture and successors.

The TCB in OS/360 and successors edit

In OS/360, OS/VS1, SVS, MVS/370, MVS/XA, MVS/ESA, OS/390 and z/OS, the TCB[1][2][3]: 311–321  contains, among other data, non-dispatchability flags and the general and floating point registers for a task that is not currently assigned to a CPU.

A TCB provides an anchor for a linked list of other, related request blocks[3]: 269–301  (RBs); the top-linked RB for a TCB contains the Program status word (PSW) when the task is not assigned to a CPU.

When the control program's dispatcher selects a TCB to be dispatched, the dispatcher loads registers from the TCB and loads the PSW from the top RB of the TCB, thereby dispatching the unit of work.

Request Blocks edit

OS/360 has the following types of request blockss

Interruption Request Block[3]: 281–284 
An IRB is used to handle an asynchronous exit.[b]
Program Request Block[3]: 285–287 
A PRB represents a module invoked with an ATTACH macro, a LINK macro or a synchronous exit.[c]
System Interruption Request Block[3]: 289–291 
An SIRB is used to run I/O error recovery code.
Supervisor Request Blocks[3]: 293–301 
An SVRB represents the execution of a Type 2, Type 3 or Type 4 SVC routine

An RB contains several fields, among the na old PSW, old general registers, a PSW and a wait count.

Dispatching edit

The Dispatcher is a routine in the nucleus that selects the work to be dispatched. It selects the highest priority task that:

  1. Is not running on another CPU
  2. Does not have any non-dispatchability flags set
  3. Has a top RB with a zero wait count.

The system maintains a pair[d] of TCB pointers known as TCB old and TCB new. A TCB new pointer of zero causes the dispatcher to search for an eligible task.

When the dispatcher finds an eligible task, it sets the old and new TCB pointers. loads the registers from the TCB and loads the PSW from the top RB.

If the dispatcher fails to find eligible work, it enters an enabled wait.

History edit

With the introduction of MVS/370 and successor systems, a whole new environment was introduced: the Service Request Block (SRB), which generally has a higher priority than any Task Control Block, and, indeed, which itself has two distinct priorities: a Global SRB (priority over all local address space SRBs and TCBs) and a Local SRB (priority over only the local address space TCBs); and MVS's dispatcher must manage all of these with absolute consistency across as many as two processors (MVS/370) and as many as sixteen processors (successor systems).

See also edit

Notes edit

  1. ^ Roughly analogous to a thread in UNIX-like operating systems.
  2. ^ An asynchronous routine to handle an exception, timer event or other signal.
  3. ^ Unprivileged callback routine.
  4. ^ In 65MP there is a pair for eack CPU; in MVS there are pointers for each address space.

References edit

  1. ^ IBM System/360 Operating System - Fixed-Task Supervisor - Program Number 360S-CI-505 (PDF) (Third ed.). February 1967. Y28-6612-2. {{cite book}}: |work= ignored (help)
  2. ^ IBM System/360 Operating System - MVT Supervisor (PDF) (Eighth ed.). May 1973. GY28-6659-7. Retrieved March 14, 2022. {{cite book}}: |work= ignored (help)
  3. ^ a b c d e f IBM System/360 Operating System: System Control Blocks - OS Release 21.7 (PDF) (Tenth ed.). IBM. April 1973. GC28-6628-9. Retrieved June 12, 2022. {{cite book}}: |work= ignored (help)

task, control, block, contains, state, task, successors, system, architecture, successors, contents, successors, request, blocks, dispatching, history, also, notes, referencesthe, successors, editin, contains, among, other, data, dispatchability, flags, genera. The Task Control Block TCB contains the state of a task a in e g OS 360 and successors on IBM System 360 architecture and successors Contents 1 The TCB in OS 360 and successors 1 1 Request Blocks 1 2 Dispatching 2 History 3 See also 4 Notes 5 ReferencesThe TCB in OS 360 and successors editIn OS 360 OS VS1 SVS MVS 370 MVS XA MVS ESA OS 390 and z OS the TCB 1 2 3 311 321 contains among other data non dispatchability flags and the general and floating point registers for a task that is not currently assigned to a CPU A TCB provides an anchor for a linked list of other related request blocks 3 269 301 RBs the top linked RB for a TCB contains the Program status word PSW when the task is not assigned to a CPU When the control program s dispatcher selects a TCB to be dispatched the dispatcher loads registers from the TCB and loads the PSW from the top RB of the TCB thereby dispatching the unit of work Request Blocks edit OS 360 has the following types of request blockss Interruption Request Block 3 281 284 An IRB is used to handle an asynchronous exit b Program Request Block 3 285 287 A PRB represents a module invoked with an ATTACH macro a LINK macro or a synchronous exit c System Interruption Request Block 3 289 291 An SIRB is used to run I O error recovery code Supervisor Request Blocks 3 293 301 An SVRB represents the execution of a Type 2 Type 3 or Type 4 SVC routineAn RB contains several fields among the na old PSW old general registers a PSW and a wait count Dispatching edit The Dispatcher is a routine in the nucleus that selects the work to be dispatched It selects the highest priority task that Is not running on another CPU Does not have any non dispatchability flags set Has a top RB with a zero wait count The system maintains a pair d of TCB pointers known as TCB old and TCB new A TCB new pointer of zero causes the dispatcher to search for an eligible task When the dispatcher finds an eligible task it sets the old and new TCB pointers loads the registers from the TCB and loads the PSW from the top RB If the dispatcher fails to find eligible work it enters an enabled wait History editWith the introduction of MVS 370 and successor systems a whole new environment was introduced the Service Request Block SRB which generally has a higher priority than any Task Control Block and indeed which itself has two distinct priorities a Global SRB priority over all local address space SRBs and TCBs and a Local SRB priority over only the local address space TCBs and MVS s dispatcher must manage all of these with absolute consistency across as many as two processors MVS 370 and as many as sixteen processors successor systems See also editProcess control blockNotes edit Roughly analogous to a thread in UNIX like operating systems An asynchronous routine to handle an exception timer event or other signal Unprivileged callback routine In 65MP there is a pair for eack CPU in MVS there are pointers for each address space References edit IBM System 360 Operating System Fixed Task Supervisor Program Number 360S CI 505 PDF Third ed February 1967 Y28 6612 2 a href Template Cite book html title Template Cite book cite book a work ignored help IBM System 360 Operating System MVT Supervisor PDF Eighth ed May 1973 GY28 6659 7 Retrieved March 14 2022 a href Template Cite book html title Template Cite book cite book a work ignored help a b c d e f IBM System 360 Operating System System Control Blocks OS Release 21 7 PDF Tenth ed IBM April 1973 GC28 6628 9 Retrieved June 12 2022 a href Template Cite book html title Template Cite book cite book a work ignored help Retrieved from https en wikipedia org w index php title Task Control Block amp oldid 1099759121, wikipedia, wiki, book, books, library,

article

, read, download, free, free download, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, picture, music, song, movie, book, game, games.