Un sistema operativo permite la ejecución concurrente de procesos a través de la multitarea. Un proceso puede pasar por estados como en ejecución, listo, bloqueado o terminado. La programación concurrente incluye procesos en múltiples computadoras, procesos concurrentes en una sola computadora a través de multitarea, y hilos dentro de un proceso.