The concept of process enables operating systems to distinguish among the concurrent activities of separate users. There tended to be a single process per user. In multitasking systems, each user can execute many concurrent tasks. The execution is normally accomplished in single-processor systems by switching the processor rapidly among the separate tasks or processes of the single user. As the level of parallelism increases, operating system overhead increases.
More system resources are devoted to managing the parallel processes.
The overhead is at times seen as a disadvantage, but has generally been considered worthwhile because of the added value of parallel computation. Process-level parallelism can be implemented on uniprocessor or multiprocessor systems, but the real performance gains are realized on multiprocessors that execute parallel activities truly simultaneously. Processes are expensive. Today, huge numbers of processes are normally supported on microprocessor systems, because not all the processes need to be active at once, and active processes rarely need all the processor's attention to make reasonable progress. The operating system rapidly switches among processes to give the illusion of continuous service.