-
公开(公告)号:US10785296B1
公开(公告)日:2020-09-22
申请号:US15454437
申请日:2017-03-09
Applicant: X DEVELOPMENT LLC
Inventor: David Allison
Abstract: Techniques are provided for making data stored in channels of shared memory available across a communication network that couples multiple distinct processing units (e.g., of a robot). In various implementations, a channel may be established in shared memory of a first processing unit. A publisher process executing on the first processing unit may publish data to the channel, and a remote subscriber process executing on a second processing unit may subscribe to the channel. A persistent network connection over a communication network may be established between the first and second processing units. Data published to the channel by the publisher process may be read directly from the local memory of the first processing unit by or on behalf of one or more local subscriber processes, and may be transmitted over the communication network to the remote subscriber process using the persistent network connection.
-
公开(公告)号:US11436063B1
公开(公告)日:2022-09-06
申请号:US17168129
申请日:2021-02-04
Applicant: X Development LLC
Inventor: David Allison , Nathan Pooley , Craig Latimer
Abstract: A method includes creating a publisher configured to send messages over a channel having a shared memory. The method includes creating at least one subscriber configured to receive the messages over the channel by sequentially referencing memory slots of the plurality of memory slots. The method includes determining that the next sequential memory slot is currently referenced by a subscriber. The method includes delaying sending the message by the publisher based on determining that the next sequential memory slot is currently referenced by the subscriber. The method includes receiving an event trigger indicative of message reading by the subscriber. The method includes, responsive to receiving the event trigger, determining that the next sequential memory slot is not currently referenced. The method includes sending the message to the next sequential memory slot based on determining that the next sequential memory slot is not currently referenced.
-
公开(公告)号:US10922154B1
公开(公告)日:2021-02-16
申请号:US16890354
申请日:2020-06-02
Applicant: X Development LLC
Inventor: David Allison , Nathan Pooley , Craig Latimer
Abstract: A method includes creating a publisher configured to send messages over a channel having a shared memory. The method includes creating at least one subscriber configured to receive the messages over the channel by sequentially referencing memory slots of the plurality of memory slots. The method includes determining that the next sequential memory slot is currently referenced by a subscriber. The method includes delaying sending the message by the publisher based on determining that the next sequential memory slot is currently referenced by the subscriber. The method includes receiving an event trigger indicative of message reading by the subscriber. The method includes, responsive to receiving the event trigger, determining that the next sequential memory slot is not currently referenced. The method includes sending the message to the next sequential memory slot based on determining that the next sequential memory slot is not currently referenced.
-
公开(公告)号:US20220374295A1
公开(公告)日:2022-11-24
申请号:US17880207
申请日:2022-08-03
Applicant: X Development LLC
Inventor: David Allison , Nathan Pooley , Craig Latimer
IPC: G06F9/54
Abstract: A method includes creating a publisher configured to send messages over a channel having a shared memory. The method includes creating at least one subscriber configured to receive the messages over the channel by sequentially referencing memory slots of the plurality of memory slots. The method includes determining that the next sequential memory slot is currently referenced by a subscriber. The method includes delaying sending the message by the publisher based on determining that the next sequential memory slot is currently referenced by the subscriber. The method includes receiving an event trigger indicative of message reading by the subscriber. The method includes, responsive to receiving the event trigger, determining that the next sequential memory slot is not currently referenced. The method includes sending the message to the next sequential memory slot based on determining that the next sequential memory slot is not currently referenced.
-
公开(公告)号:US11656923B2
公开(公告)日:2023-05-23
申请号:US17880207
申请日:2022-08-03
Applicant: X Development LLC
Inventor: David Allison , Nathan Pooley , Craig Latimer
Abstract: A method includes creating a publisher configured to send messages over a channel having a shared memory. The method includes creating at least one subscriber configured to receive the messages over the channel by sequentially referencing memory slots of the plurality of memory slots. The method includes determining that the next sequential memory slot is currently referenced by a subscriber. The method includes delaying sending the message by the publisher based on determining that the next sequential memory slot is currently referenced by the subscriber. The method includes receiving an event trigger indicative of message reading by the subscriber. The method includes, responsive to receiving the event trigger, determining that the next sequential memory slot is not currently referenced. The method includes sending the message to the next sequential memory slot based on determining that the next sequential memory slot is not currently referenced.
-
-
-
-