Communication in multiprocessor using proxy sockets
View Patent ↗Systems and methods for implementing communication in a multiprocessor are disclosed. In one exemplary implementation a first processor receives a request to provide a communication resource for an application executing on the first processor to communicate with a remote application. In response to the communication request, the first processor opens a communication resource on a second processor, and manages communication operations between the application executing on the first processor and the remote application using the communication resource on the second processor.
1. A computing system, comprising:
a first processor and a second processor;
first network communication resources operable on the first processor that enable network communication operations;
second network communication resources operable on the second processor that enable network communication operations;
inter-processor communication resources operable on the first processor and the second processor that enable communication between the first processor and the second processor; and
a demultiplexer module operable on the first processor that enables network communication operations between an application executing on the first processor and a remote application using the second network communication resources.
2. The computer system of claim 1 , wherein the network communication between the resources on the first and second processors proceeds on a first channel and communications between the first processor and remote application proceeds on a second different channel.
3. The computer system of claim 2 , wherein at least a portion of the communication required by the remote application travels from the second processor to the first processor and subsequently to the remote application.
4. The computing system of claim 1 , wherein the first network communication resources comprises a local socket I/O API that provides an interface with an underlying communication protocol stack executing on the first processor.
5. The computing system of claim 1 , wherein the second network communication resources comprises a local socket I/O API that provides an interface with an underlying communication protocol stack executing on the second processor.
6. The computing system of claim 1 , wherein the inter-processor communication resources implement remote procedure calls to communicate via a shared memory module.
7. The computing system of claim 1 , wherein the demultiplexer module assigns communication resources to communication requests.
8. The computing system of claim 1 , wherein the demultiplexer module manages a plurality of data tables that provide a mapping between a communication resource and specific communication operations that may be implemented by the communication resource.
9. The computer system of claim 1 , wherein a remote application comprises application module that creates an endpoint for communication with at least one external device.