Patent ID: 8745467

Claim:
A dual redundant process controller, comprising: a first processor; a first memory; a first instance of a multitasking real-time operating system (RTOS); a first instance of a process control application stored in the first memory; a second processor; a second memory; a second instance of the multitasking real-time operating system; and a second instance of the process control application stored in the second memory, wherein, when executed by the first processor in a context provided by the first instance of the multitasking real-time operating system, the first instance of the process control application: writes a first synchronization information to the second memory using a synchronization function provided by the first instance of the multitasking real-time operating system, reads a second synchronization information from the first memory, performs a resynchronization function when the second synchronization information disagrees with the first synchronization information after passage of a predetermined time-out interval, and calls the synchronization function provided by the first instance of the multitasking real-time operating system before invoking a set events function provided by the first instance of the multitasking real-time operating system, and wherein, when executed by the second processor, the second instance of the process control application: writes the second synchronization information to the first memory using the synchronization function provided by the second instance of the multitasking real-time operating system, reads the first synchronization information from the second memory, and performs the resynchronization function when the first synchronization information disagrees with the second synchronization information after passage of the predetermined time-out interval.