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)
The concept of a process is fundamental to an operating system and they can be viewed as an abstraction of a program. Although to be strict we can say that a program (i.e. an algorithm expressed in some suitable notation) has a process that executes the algorithm and has associated with it input, output and a state.
Computers nowadays can do many things at the same time. They can be writing
to a printer, reading from a disc and scanning an image. The computer (more
strictly the operating system) is also responsible for running many processes,
usually, on the same CPU. In fact, only one process can be run at a time so
the operating system has to share the CPU between the processes that are available
to be run, whilst giving the illusion that the computer is doing many things
at the same time.
This approach can be directly contrasted with the first computers. They could only run one program at a time and although this may seem archaic now, it does have its advantages and it makes most of this part of the course irrelevant and we can simply ignore the issues raised.
Therefore, the main point of this part of the course is to consider how an operating system deals with processes when we allow many to run in pseudoparallelism.
Although, with a single CPU, we know the computer can only execute a single
process at a given moment in time. It is important to realise that this is the
case. It is also important to realise that one process can have an effect on
another process which is not currently running; as we shall see later.
Last Page | Back to Main Index | Next Page |
Last Updated : 08/01/2002