Patent ID: 7168075

Claim:
A programmable controller for at least one of controlling and monitoring a process, connected to a redundant programmable controller having a memory, said programmable controller comprising: a memory to store at least one user program, having at least one task, and process related data and user-program-related data; a processor to execute said at least one task of the at least one user program and an updating task assigned thereto to transfer contents of a portion of said memory accessed by the at least one task into the memory of the redundant programmable controller and to terminate the updating task when a run time of the task and the updating task exceeds an upper run time limit; and a log memory, coupled to at least one of said memory and said processor, to log accesses of said memory by each task, wherein said processor executes the updating task to transfer the contents of the portion of said memory based on contents of said log memory logged for the task being updated, wherein the updating task is assigned a higher priority than the task to which the respective updating task is assigned, wherein if a cyclic updating task T 1 A, T 2 A, wherein T 1 A is a first updating task and T 2 A is a second updating task, is restarted after a complete transfer of memory contents before a second updating transfer of memory contents is ended, the processor calls up the first updating task T 1 A twice and executes the first updating task T 1 A completely before the second updating task T- 2 A is called up for a first time, and wherein, if an error task for selected error processing or error responses has a priority lower than run time tasks T 1 , T 2 and cannot be executed within a fixed time that is less than a sum of run times of updating tasks T 1 A, T 2 A, the processor resets, for a predetermined period of time, the priority of the error task to a value which results in immediate execution of the error task, correspondingly displacing the updating task T 1 A.