| Index: > A B C D E F G H I J K L M N O P Q R S T U V W X Y Z |
|
|||||
often simultaneously with many other tasks. Many processes may exist simultaneously, each taking turns on a CPU.
Processes are often called tasks in embedded operating systems. The sense of 'process' is 'something that takes up time', as opposed to 'memory', which is 'something that takes up space'. Kaare Christian noted it was as if 'processes have "life"'.
The above description applies to both processes managed by an operating system, and processes as defined by process calculi.
In the former case, the operating system keeps processes separated and allocates the resources they need so that they are less likely to interfere with each other and cause system failures. The operating system may also provide mechanisms for inter-process communication to enable processes to interact in safe and predictable ways.
In general, an operating system process consists of:
The last item, the processor state, is associated with each of the process's threads in operating systems that support threads.
At this level of programming, the registers are the lowest-level resource, and the program values must be loaded from memory into the registers, which are first re-set, and then loaded. These steps occur at the clock rate of the CPU and depend on the processor architecture.
If a task is suspended, then it is eligible for swapping to disk, similarly to residence in virtual memory, where blocks of memory values are really on disk and not in physical memory. The block sizes depend on the operating system.