Patent ID: 7539898

Claim:
A method of assigning processors in a multiprocessor environment to a plurality of processes that are executed in the multiprocessor environment, each process having a process pair defined by (i) a primary process that executes on a first processor, and (ii) a backup process that executes on a second processor, wherein there are a plurality of process pairs, the processors being in communication with one another via a communication network, the processors being associated with a plurality of predefined processor pairs, the method comprising: (a) providing a plurality of process pairs that are initially assigned to a respective plurality of pairs of processors, wherein at least one of the processors in the plurality of pairs of processors is initially assigned to more than one processor pair, wherein the initial assignment defines an initial configuration of processors and process pairs that has a first number of failure modes; and (b) defining a revised configuration of processors and process pairs by: (I) assigning each processor to only one of the predefined processor pairs so that no processor belongs to more than one processor pair; and (II) assigning each of the plurality of process pairs to a respective one of the predefined processor pairs, wherein the revised configuration of processors and process pairs has a second number of failure modes which is less than the first number of failure modes.