A device for controlling a plurality of timers of a number of users, each timer being associated with an event and having an associated timer control block in a data processing system having a processor and a memory wherein a user issues a START operation for a timer when an occurrence time of the associated event is awaited within a time-out period (Tv), a RESTART operation when the occurrence time of the associated event has to be delayed, and a STOP operation when the associated event has occurred, said device being characterized in that each timer control block is divided into at least a time-flag field (Tf) which includes a flag-state field set to a state of RUNNING at each START operation to indicate that the associated event is awaited or set to a state of STOP at each STOP operation to indicate that the associated event has already occurred, and a flag-chain field to indicate if the timer control block is CHAINED or UNCHAINED to a timer chain, a time-stamp field (Ts) which is set to a current time at each START operation and updated to the current time at each RESTART operation to enable the associated event to be delayed, a time-out value field (Tv), and an address field, said device comprising:
- a cyclic means having a number N of storing locations in order to classify the timer control blocks for the associated events according to a value in the time-out value field and the current time, said cyclic means being managed by a timer control program stored in said memory and controlled by said processor,
- an addressing means which sequentially addresses each storing location of said cyclic means at regular time intervals, and
- a timer chain pointed to by said addressing means and comprising a plurality of timer control blocks associated with events which should occur before a time T, before said START, RESTART or STOP operations interrupt the timing of said associated events, said timer control blocks being chained to each other by storing in the address field the address of a next timer control block in the timer chain or a special code to indicate the end of the timer chain,
- wherein at regular time intervals, each timer control block chained to the addressed location of the cyclic means is read to unchain the timer control block if its flag-state field is set to STOP, and otherwise, to compute a new time-out value for the time-out value field based on the current time, the time-stamp Ts and the value in said time-out value field by computing new time-out value=time-out value+time-stamp-current time, to control, if the time-out delay has elapsed, the inserting of the timer control block into a new timer chain if the new time-out value is positive, or to unchain and stop the timer control block if said new time-out value is equal to zero and to notify the user that the time-out delay has elapsed.