多道程序要求处理器为每个进程都分配一定的时间，并在合适的时机释放。如果释放时进程尚未结束，则需要确保进程能够很方便地重启。进程执行过程中，如果操作系统需要取回处理器的控制权，一般有两种方法：一个进程停止、另一个进程开始（或者重启）的过程称作上下文交换或上下文切换。在许多现代操作系统中，进程还可以包含许多子进程，这样便引入了线程的概念。可以将线程看作子进程，即在同一进程中的独立代码执行单元。