CITS2002 Systems Programming  
prev
next CITS2002 CITS2002 schedule  

Process Transitions

The operating system's role is to manage the execution of existing and newly created processes by moving them between the two states until they finish.

So we have a simple model consisting of two recurring steps:

  1. Newly created processes are created and marked as Ready, and are queued to run.

  2. There is only ever a single process in the Running state. It will either:

    • complete its execution and terminate (exit), or

    • be suspended (by itself or by the operating system), be marked as Ready, and be again queued to run.

    One of the other Ready processes is then commenced (or resumed).

 

Here the operating system has the role of a dispatcher - dispatching work for the processor according to some defined policy addressing a combination of fairness, priority, apparent "interactivity", ...

 

___________
For simplicity (of both understanding and implementation) modern operating systems support the idle process which is always ready to run, and never terminates.

 


CITS2002 Systems Programming, Lecture 7, p3, 14th August 2023.