Ejecución retardada y rechazo de eventos del mismo tipo
El término "eventos del mismo tipo" designa en lo sucesivo los eventos procedentes de una
misma fuente, p. ej., los eventos de arranque de un determinado OB de alarma cíclica.
Con el parámetro de OB "Número de eventos en cola" se limita el número de eventos del
mismo tipo que el sistema operativo pone en la correspondiente cola de espera para su
posterior procesamiento. Así, por ejemplo, si este parámetro tiene el valor 1, se guarda un
solo evento en la memoria intermedia.
Nota
El procesamiento a posteriori de eventos cíclicos a menudo no es deseable, ya que puede
derivar en una sobrecarga en el caso de OB de igual o menor prioridad. Por tanto,
normalmente es más conveniente rechazar eventos similares y reaccionar a la situación de
sobrecarga en la siguiente ejecución normal de OB. Un valor bajo del parámetro "Número
de eventos en cola" hace que una situación de sobrecarga no empeore, sino que mejore.
Por ejemplo, si en la cola de espera se alcanza el número máximo de eventos de arranque
de un OB de alarma cíclica (Cyclic interrupt), cada nuevo evento de arranque tan solo se
contabiliza y seguidamente se rechaza. En el siguiente procesamiento normal de OB, la
CPU indica el número de eventos de arranque rechazados en el parámetro de entrada
"Event_Count" (en la información de arranque). Entonces se puede reaccionar
apropiadamente a la situación de sobrecarga. Seguidamente, la CPU pone a cero el
contador de eventos perdidos.
A modo de ejemplo, si la CPU rechaza por primera vez un evento de arranque de un OB de
alarma cíclica, su posterior comportamiento dependerá del parámetro de OB "Entrada en el
búfer de diagnóstico al desbordarse los eventos": si la casilla de verificación está activada,
la CPU registra una vez el evento DW#16#0002:3507 en el búfer de diagnóstico para la
situación de sobrecarga en esta fuente de eventos. La CPU suprime el resto de entradas del
evento DW#16#0002:3507 que se refieran a esta fuente de eventos hasta que se hayan
terminado de procesar todos los eventos procedentes de esta fuente.
Mecanismo de valores umbral para la solicitud del OB de error de tiempo
Con el parámetro del OB de alarma cíclica "Habilitar error de tiempo" se define si para
eventos del mismo tipo se debe llamar al OB de error de tiempo cuando existe una
determinada sobrecarga. Encontrará el parámetro de OB "Habilitar error de tiempo" en las
propiedades del OB, en la categoría "Atributos".
Si se habilita el OB de error de tiempo (casilla de verificación activada), con el parámetro de
OB "Umbral de eventos para error de tiempo" se especifica el número de eventos del mismo
tipo incluidos en la cola de espera con el que el programa de usuario debe llamar el OB de
error de tiempo. Si este parámetro tiene el valor 1, por ejemplo, cuando se produce el
segundo evento la CPU registra el evento DW#16#0002:3502 una vez en el búfer de
diagnóstico y solicita el OB de error de tiempo. La CPU inhibe el resto de entradas del
evento DW#16#0002:3502 en el búfer de diagnóstico hasta que se hayan terminado de
procesar todos los resultados procedentes de esta fuente.
De esta manera es posible programar una reacción en caso de sobrecarga mucho antes de
que se alcance el límite de eventos del mismo tipo y, con ello, antes de que se rechacen
eventos.
Para el parámetro "Umbral de eventos para error de tiempo" se aplica el siguiente rango de
valores: 1 ≤ "Umbral de eventos para error de tiempo" ≤ "Número de eventos en cola".
Sistema de periferia descentralizada
Manual de sistema, 12/2016, A5E03576852-AG
Principios básicos de la ejecución del programa
7.2 Comportamiento de sobrecarga de la CPU
161