Procesamiento Batch, Tiempo Compartido y Tiempo Real: Características y Diferencias
Clasificado en Informática
Escrito el en español con un tamaño de 2,85 KB
Procesamiento Batch
El procesamiento batch (o procesamiento por lotes) es la forma más antigua y tradicional de ejecutar tareas. Se introdujo en 1956 para aumentar la capacidad de procesamiento. No es interactivo y se utiliza para trabajos largos, repetitivos y tediosos. Se emplean scripts o guiones para indicar qué se debe ejecutar y para recibir los recursos. Existe un gestor de trabajos que asigna los recursos. Si está bien planificado, se alcanzan tiempos de ejecución bastante altos, consiguiendo que los recursos disponibles estén en uso constantemente. Se puede implementar en sistemas operativos muy simples, que no necesariamente sean de tiempo compartido.
Ventajas del Procesamiento Batch
- Permite compartir mejor los recursos entre muchos usuarios.
- Realiza trabajos en el momento en que los recursos del sistema tienen menos carga.
- Evita desaprovechar recursos del sistema al no requerir interacción constante.
- En supercomputadores, ayuda a reducir costos.
Desventajas del Procesamiento Batch
- Complejidad o dificultad para conocer y planificar trabajos previamente.
- Como no posee interacción con el usuario, cualquier error puede llevar a resultados erróneos.
Procesamiento en Sistemas de Tiempo Compartido
El procesamiento en sistemas de tiempo compartido es una variante de la multiprogramación. Cada usuario tiene una terminal en línea. Se trabaja con procesos interactivos (es decir, con comunicación con el usuario). Es necesario el uso de hardware de protección. El primer sistema de tiempo compartido significativo fue CTSS (Compatible Time-Sharing System). Utiliza algoritmos más complejos que un sistema de procesamiento batch. Se le asigna a cada proceso un quantum de CPU. La planificación se realiza con dos grandes familias de algoritmos:
- Apropiativo: Escoge un proceso y le permite ejecutarse solo por un tiempo. Al terminar ese quantum, se suspende el proceso y se ejecuta el próximo.
- No Apropiativo: Escoge un proceso y lo ejecuta hasta que este quede en estado bloqueado o ceda voluntariamente la CPU.
Procesamiento en Sistemas de Tiempo Real
En el procesamiento en sistemas de tiempo real, el tiempo desempeña un papel fundamental. Existen dos tipos:
- Sistemas Rigurosos: Hay plazos que se deben cumplir estrictamente, sin excepciones.
- Sistemas No Rigurosos: Se pueden tolerar incumplimientos ocasionales, aunque se busca que no ocurran.
Los sucesos que ocurren pueden ser periódicos o aperiódicos. Un sistema de tiempo real (STR) podría no ser capaz de ejecutar más procesos de los que puede atender.