A symbiotic computing system includes a plurality of symbiotic partners that
are
communicatively coupled with one another and each of which has a respective instance
of a managed resource. One (or more) of the symbiotic partners receive input that
affects a respective instance of the managed resource. Based upon the input, the
symbiotic partner produces actions and transmits the actions to each other of the
symbiotic partners. Upon receipt, each other of the symbiotic partners receives
the actions and uses the actions to affect a respective instance of the managed
resource to maintain coherency of the managed resource. The managed resource may
include data entities such as data file, data bases, configuration files and source
files and other types of resources such as video images, symbiotic relationship
configurations and executables. Alterations made to an instance of the managed
resource are made to each other instance of the managed resource to maintain coherency.
When establishing a symbiotic relationship among symbiotic partners, instances
of managed resources are first synchronized to ensure that a common starting point
exists. Then, each instance of the managed resource is operated upon based upon
the actions, typically via an application program. The actions are generated from
user input at one of the symbiotic partners. Prior to their use, the actions may
be converted to commands that are readily received by the application program to
operate upon a managed resource. In a symmetric symbiotic relationship, actions
may be created by both of a set of two symbiotic partners to affect the managed
resources. In an asymmetric symbiotic relationship, only one of a set of two symbiotic
partners may create actions that affect the managed resources.