Saturday, November 16, 2024

Dispatcher Logic Overview

Dispatcher firstly checks if any exit processing is to be taken. Example of exits are cpu auto recovery, vary cpu or time of day clock updates. 

Next dispatcher checks if any global SRB was s ready to run. When this is done, dispatcher post SRB in the request queue to their respective address spaces. It is because SRB has same dispatching priority as the address space processing it. 

Next, dispatcher checks if any local supervisor works has been interrupt and now can resumed. Local supervisor now runs as enabled which could be interrupted. 

Next is to dispatch works (SRB and TCB) in address space. 

Lastly when no work in the system is available, dispatcher dispatch the WAIT ASCB (0) which place the system in wait state until the next interrupt triggers. 

No comments: