This course is run at the The University of Nottingham within the School of Computer Science & IT. The course is run by Graham Kendall (EMAIL : gxk@cs.nott.ac.uk)
Assuming we have a computer with one processor, it is obvious that the computer
can only execute one process at a time. However, when a process moves from a
running state to a ready or blocked state it must store certain information
so that it can remember where it was up to when it moves back to a running state.
For example, it needs to know which instruction it was about to execute, which
record it was about to read from its input file and the values of various variables
that it was using as working storage.
Each process has associated with it a process table. This is used to hold all
the information that a process needs in order to restart from where it left
off when it moves from a ready state to a running state.
Different systems will hold different information in the process block.
This table shows a typical set of data
Process Management |
Registers |
Program Counter |
Program Status Word |
Stack Pointer |
Process State |
Time when process started |
CPU time used |
Time of next alarm |
Process id |
You will notice that, as well as information to ensure the process can start
again (e.g. Program Counter), the process control block also holds accounting
information such as the time the process started and how much CPU time has been
used.
You should note that this is only a sample of the information held. There will be other information, not least of all concerned with the files being used and the memory the process is using.
Last Page | Back to Main Index | Next Page |
Last Updated : 08/01/2002