Process (computing): Difference between revisions

Content deleted Content added
m fix lk, rm dup lk
m Reverted 1 edit by 24.169.1.62 (talk) to last revision by Maxeto0910
 
(3 intermediate revisions by 3 users not shown)
Line 41:
===Process states===
{{Main|Process state}}
[[File:Process states.svg|right|300px|thumb|The various process states, displayed in a [[state diagram]], with arrows indicating possible transitions between states.]]
 
An operating system [[kernel (operating system)|kernel]] that allows multitasking needs processes to have [[process states|certain states]]. Names for these states are not standardised, but they have similar functionality.<ref name="OSC Chap4"/>
Line 65:
Programs consist of sequences of instructions for processors. A single processor can run only one instruction at a time: it is impossible to run more programs at the same time. A program might need some [[System resource|resource]], such as an input device, which has a large delay, or a program might start some slow operation, such as sending output to a printer. This would lead to processor being "idle" (unused). To keep the processor busy at all times, the execution of such a program is halted and the operating system switches the processor to run another program. To the user, it will appear that the programs run at the same time (hence the term "parallel").
 
Shortly thereafter, the notion of a "program" was expanded to the notion of an "executing program and its context". The concept of a process was born, which also became necessary with the invention of [[Reentrancy (computing)|re-entrant code]]. [[Thread (computer science)|Threads]] came somewhat later. However, with the advent of concepts such as [[time-sharing]], [[computer network]]s, and multiple-CPU [[shared memory]] computers, the old "multiprogramming" gave way to true [[Computer multitasking|multitasking]], [[multiprocessing]] and, later, [[Multithreading_(computer_architecture)|multithreading]].
 
==See also==