Un sistema en tiempo real tiene una restricción establecida como: el sistema debe responder a un evento dentro de 10 ms.
O bien: el sistema debe ejecutar el control de bucle PID a una velocidad fija de 10 kHz. Implícitamente se usa un período de 100us.
Ambos están bien establecidos límites de tiempo máximo. Sin embargo, no son exactamente deterministas; una actualización de bucle PID puede tardar 10 us, mientras que la siguiente puede tomar 15 us. Tampoco dice acerca del tiempo transcurrido entre las actualizaciones; p.ej. la "fase".
Este "jitter" puede ser un problema en algunos sistemas. Determinista describe que el "ruido" es muy bajo; es decir, es muy predecible cuánto tiempo se ejecutará un algoritmo, no variará mucho (o puede determinarse y compensarse) dadas las diferentes entradas o estados del programa.
Determinista puede ser importante al producir señales temporizadas, por ejemplo, video.
En ese caso, querrá saber exactamente cuánto tardan en completarse las operaciones (intermedias), incluso cuando el algoritmo necesita ramas que demoren más o más tiempo en ejecutarse.
Algunos sistemas de alto rendimiento son desafiantes, ya que son CPU "aceleradas" que incorporan líneas de instrucciones y cachés que pueden detener la ejecución del código en algunas condiciones. Predecir / determinar estas condiciones puede ser casi imposible, por lo que determinista es muy difícil en plataformas complejas.