Patent ID: 7630777

Claim:
An apparatus comprising: at least one memory configured to store a recipe control module comprising a plurality of phase function blocks, the recipe control module associated with a process for producing at least one product or part thereof, each phase function block associated with a portion of the process; and at least one processor configured to execute the phase function blocks, wherein each of the phase function blocks when executed is configured to: acquire and initiate execution of a resource module providing control over an associated process element, the resource module comprising one of a plurality of resource modules providing control over a plurality of process elements; provide one or more first parameters to the associated resource module, the one or more first parameters defining how the associated resource module implements the portion of the process using the associated process element; retrieve one or more second parameters from the associated resource module, the one or more second parameters associated with results of the execution of the associated resource module; project a state of the associated resource module to a corresponding state of the recipe control module and propagate a state of the recipe control module to a corresponding state of the associated resource module; and release the associated resource module after execution of the associated resource module, wherein acquisition of one of the resource modules by one of the phase function blocks prevents acquisition of the resource module by the other phase function blocks until the resource module is released.