Los algoritmos de programación de CPU requieren tiempo de CPU y tiempo de E/S para su ejecución. El tiempo de CPU es el tiempo que tarda la CPU en llevar a cabo el proceso, mientras que el tiempo de E/S ilustra el tiempo requerido por el proceso para la operación de E/S.
La ejecución de múltiples procesos de forma optimizada se basa en diferentes tipos de algoritmos, como FCFS, Shortest Job First, etc., que dependen de los valores del marco de tiempo, como el tiempo de llegada, el tiempo de ráfaga, el tiempo de espera, etc.
1. Hora de llegada (AT):
la hora de llegada es el punto de tiempo en milisegundos en el que un proceso llega a la cola lista para comenzar la ejecución. Es simplemente independiente del tiempo de E/S o de la CPU y solo representa el período de tiempo en el que el proceso está disponible para completar su trabajo especificado. El proceso es independiente de qué proceso se encuentra en estado de ejecución. El tiempo de llegada se puede calcular como la diferencia del tiempo de finalización y el tiempo de respuesta del proceso.
Arrival Time (A.T.) = Completion Time (C.T.) - Turn Around Time (T.A.T)
2. Burst Time (BT):
Burst Time se refiere al tiempo requerido en milisegundos por un proceso para su ejecución. El Burst Time tiene en cuenta el tiempo de CPU de un proceso. El tiempo de E/S no se tiene en cuenta. Se denomina tiempo de ejecución o tiempo de ejecución del proceso. El proceso hace una transición del estado En ejecución al Estado de finalización durante este período de tiempo. El tiempo de ráfaga se puede calcular como la diferencia del Tiempo de finalización del proceso y el Tiempo de espera, es decir,
Burst Time (B.T.) = Completion Time (C.T.) - Waiting Time (W.T.)
La siguiente tabla ilustra el tiempo de llegada y ráfaga de tres procesos P1, P2 y P3. Se asigna una sola CPU para la ejecución de estos procesos.
Procesos | Hora de llegada (en ms) | Tiempo de ráfaga (en ms) |
---|---|---|
P1 | 0 | 3 |
P2 | 4 | 2 |
P3 | 6 | 4 |
Si calculamos el diagrama de Gantt, basado en la programación de FCFS, donde se ejecuta primero el proceso que llega primero en la cola de procesos listos. La llegada de los procesos decide el orden de ejecución del proceso por un tiempo igual a su tiempo de Burst.
Como el proceso P2 llega a 4ms, y el proceso P1 requiere 3ms para su ejecución (=Burst Time), la CPU espera 1ms, que es el tiempo de inactividad de la CPU, donde no realiza ninguna ejecución de proceso. El último proceso en ejecutarse es P3.
La siguiente tabla ilustra las diferencias clave en el tiempo de llegada y de ráfaga respectivamente:
Hora de llegada | Tiempo quemado |
---|---|
Marca el punto de entrada del proceso en la cola. | Marca el punto de salida del proceso en la cola. |
Computado antes de la ejecución del proceso. | Calculado después de la ejecución del proceso. |
Relacionado con el estado Ready de la CPU. | Relacionado con el estado de ejecución de la CPU. |