Patent ID: 9703657
Date: 2017-07-11
CPC Classifications: G06F

Claim:
1. A system, comprising: a primary host computer with computer system memory configured to store a primary application which is configured to be executed on said primary host computer with an operating system, wherein said primary application is comprised of one or more processes and each process is comprised of one or more threads; one or more central processing units (CPUs) for said primary host computer operatively connected to said computer system memory and configured to execute said primary application; one or more interceptors configured to intercept calls to the operating system and configured to generate replication messages based on said intercepted calls, wherein said intercepted calls include at least one of process calls, thread calls, resource calls including calls to Input/Output resources, lock calls including calls to mutexes, semaphores, futexes, critical sections and monitors; a messaging layer for said primary application configured to transmit said replication messages to one or more backup applications; an additional messaging layer for each one or more of the backup applications which are configured to receive said replication messages; and wherein each replication message generated for the primary application contains a unique replication sequence number which is one larger than the replication sequence number for the previously sent replication message; and wherein said replication messages received are sorted by replication sequence number and an order of replication messages by sorted sequence number is used to impose a same order of events on the one or more backup application as on the primary application.