Patent ID: 8645969

Claim:
A method by which processors within a multi-processor device dynamically configure themselves by exchanging availability messages that identify capabilities of each processor, the method comprising: each processor advertising its availability message to all other processors within the multi-processor device in an agnostic processor scalable communication format; each processor receiving availability messages from each other processor within the multi-processor device; each processor using the received availability messages to discover capabilities of each other processor within the multi-processor device including an operation that the advertising processor can perform for the multi-processor device; and each processor automatically configuring itself to utilize at least some of the discovered capabilities of each other processor within the multi-processor device, wherein the advertised and received availability messages include at least one of identification information, transport type information, port information, technology information, features information, and any combinations of such information properties, and wherein: a foreign agent in each processor generates the advertised availability message; the foreign agent in each processor receives the received availability message from each other processor within the multi-processor device and passes the discovered capabilities to a service daemon within its processor; and the service daemon in each processor writes the discovered capabilities to a memory in its processor; and wherein each processor automatically configuring itself to utilize the discovered capabilities of each other processor within the multi-processor device comprises: a local agent in each processor obtaining the discovered capabilities from the memory via the service daemon in the processor and using the discovered capabilities to configure the processor to accomplish inter-processor communications; and the service daemon providing a notification to the local agent when a processor property is updated by the foreign agent when the local agent registers to receive updates for the processor property from the foreign agent.