IP Library Granted Patent US 10,651,926
Granted Patent B2
US 10,651,926 · App. 16/422,516 · Granted May 12, 2020

State transfer among satellite platforms

Inventors: Shaun Coleman (San Jose, CA); Darren D. Garber (Rancho Palos Verdes, CA)
Assignee: Lockheed Martin Corporation
H04B7/18519G06F9/45558H04B7/18521H04L41/0668H04L67/10H04L67/1078H04L67/34G06F2009/45579G06F2009/45583H04L67/125
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,651,926
App. No.
16/422,516
Granted
May 12, 2020
Kind
B2
Abstract

Systems, methods, and software described herein provide enhancements for deploying software payloads in satellite systems. In one example, a satellite device comprises a communication interface configured to receive software payloads for execution, and an execution system configured to execute ones of the software payloads as associated virtual nodes that share resources of the satellite device to at least perform activities using one or more on-board systems of the satellite device. The execution system is configured to transfer state information related to execution of ones of the virtual nodes to at least another device over the communication interface, wherein the state information comprises data related to the activities.

Claims (65)

1. An orbital satellite device, comprising:

a communication interface configured to receive software payloads for execution; and

an execution system comprising a storage system and a hypervisor system;

the execution system configured to:

execute ones of the software payloads as associated virtual nodes that share resources of the orbital satellite device to at least perform activities using one or more on-board systems of the orbital satellite device, wherein the hypervisor system is configured to isolate execution and memory resources of the execution system among the ones of the software payloads when executing the associated virtual nodes, and wherein the storage system is configured to store at least the ones of the software payloads in an inactive state when not being executed by the execution system; and

transfer state information related to execution of ones of the virtual nodes to at least another device over the communication interface, wherein the state information comprises data related to the activities.

2. The orbital satellite device of claim 1 , comprising:

the execution system configured to execute the ones of the software payloads as the associated virtual nodes on the orbital satellite device according to at least a resource schedule that indicates a timewise allocation of the associated virtual nodes to the resources of the orbital satellite device.

3. The orbital satellite device of claim 2 , comprising:

the communication interface configured to receive the software payloads over at least one of a ground communication portion and a peer communication portion of the communication interface, wherein the ground communication portion communicates with a ground-based station to receive first ones of the software payloads, and wherein the peer communication portion communicates with at least one other device to receive second ones of the software payloads.

4. The orbital satellite device of claim 1 , wherein the activities comprise sensing activities, and further comprising:

one or more sensor systems communicatively coupled with the execution system over associated communication links;

the execution system configured to provide access for the ones of the virtual nodes to the one or more sensor systems as the resources of the orbital satellite device.

5. The orbital satellite device of claim 4 , comprising:

the execution system configured to receive initial state information over the communication interface related to sensing activities of a first device, and process the initial state information to modify the initial state information with the sensing activities of the orbital satellite device into the state information for transfer to at least the other device and further processing by at least the other device.

6. The orbital satellite device of claim 1 , wherein the activities comprise communication routing activities, and further comprising:

at least one of the virtual nodes configured to provide the communication routing activities; and

the execution system configured to provide access for the ones of the virtual nodes to the communication interface as the resources of the orbital satellite device.

7. The orbital satellite device of claim 6 , wherein the communication routing activities comprise routing communications for delivery to at least one among another orbital satellite device and a ground system.

8. The orbital satellite device of claim 1 , further comprising:

one or more sensor systems communicatively coupled to the execution system, wherein the data related to the activities comprises data resultant from monitored sensor activity of the one or more sensor systems.

9. The orbital satellite device of claim 1 , comprising:

the execution system configured to receive state information related to execution of one or more virtual nodes on a further device;

the execution system configured to establish execution of at least one virtual node on the orbital satellite device in response to receiving the state information, the at least one virtual node continuing at least one activity performed by the further device and indicated in the state information.

10. A method of operating an orbital satellite device, the method comprising:

receiving software payloads;

executing ones of the software payloads as associated virtual nodes that share resources of the orbital satellite device to at least perform activities using one or more on-board systems of the orbital satellite device;

in a hypervisor system, isolating execution and memory resources of an execution system among the ones of the software payloads when executing the associated virtual nodes;

in a storage system, storing at least the ones of the software payloads in an inactive state when not being executed by the execution system; and

transferring state information related to execution of ones of the virtual nodes to at least another device over a communication interface, wherein the state information comprises data related to the activities.

11. The method of claim 10 , further comprising:

executing the ones of the of software payloads as the associated virtual nodes on the orbital satellite device according to at least a resource schedule that indicates timewise allocations of the associated virtual nodes to the resources of the orbital satellite device.

12. The method of claim 11 , further comprising:

in the communication interface, receiving the software payloads over at least one of a ground communication portion and a peer communication portion, wherein the ground communication portion communicates with a ground-based station to receive first ones of the software payloads, and wherein the peer communication portion communicates with at least one other device to receive second ones of the software payloads.

13. The method of claim 10 , wherein the activities comprise sensing activities, and further comprising:

providing access for the ones of the virtual nodes to one or more sensor systems as the resources of the orbital satellite device, wherein the one or more sensor systems are communicatively coupled with the execution system over associated communication links.

14. The method of claim 13 , further comprising:

receiving initial state information over the communication interface related to sensing activities of a first device, and processing the initial state information to modify the initial state information with the sensing activities of the orbital satellite device into the state information for transfer to at least the other device and further processing by at least the other device.

15. The method of claim 10 , wherein the activities comprise communication routing activities, and further comprising:

in at least one of the virtual nodes, providing the communication routing activities; and

providing access for the ones of the virtual nodes to the communication interface as the resources of the orbital satellite device.

16. The method of claim 15 , wherein the communication routing activities comprise routing communications for delivery to at least one among another orbital satellite device and a ground system.

17. A software execution platform for an orbital satellite device, comprising:

one or more non-transitory computer readable storage media;

a processing system operatively coupled with the one or more non-transitory computer readable storage media; and

an execution service comprising program instructions stored on the one or more non-transitory computer readable storage media that, when read and executed by the processing system, direct the processing system to at least:

store software payloads for execution in a storage system, wherein at least ones of the software payloads are stored in an inactive state when not being executed by the execution service;

execute ones of the software payloads as associated virtual nodes that share resources of the orbital satellite device to at least perform activities using one or more on-board systems of the orbital satellite device, wherein a hypervisor system isolates execution and memory resources employed by the execution service among the ones of the software payloads when the execution service executes the associated virtual nodes; and

transfer state information related to execution of ones of the virtual nodes to at least another device over a communication interface, wherein the state information comprises data related to the activities.

18. The satellite software execution platform of claim 17 , comprising further program instructions, when executed by the processing system, direct the processing system to at least:

receive initial state information from a first device over the communication interface;

establish execution of at least one virtual node on the orbital satellite device in response to receiving the initial state information; and

process the initial state information using the at least one virtual node to modify the initial state information into the state information for transfer to at least the other device.

19. An orbital satellite device, comprising:

a communication interface configured to receive software payloads for execution; and

an execution system configured to:

execute ones of the software payloads as associated virtual nodes that share resources of the orbital satellite device to at least perform activities comprising communication routing activities using one or more on-board systems of the orbital satellite device, wherein at least one of the virtual nodes is configured to provide the communication routing activities;

provide access for ones of the virtual nodes to the communication interface as at least a portion of the resources of the orbital satellite device; and

transfer state information related to execution of the ones of the virtual nodes to at least another device over the communication interface, wherein the state information comprises data related to the activities.

20. A method of operating an orbital satellite device, the method comprising:

receiving software payloads;

executing ones of the software payloads as associated virtual nodes that share resources of the orbital satellite device to at least perform activities comprising communication routing activities using one or more on-board systems of the orbital satellite device;

providing the communication routing activities in at least one of the virtual nodes;

providing access for ones of the virtual nodes to the communication interface as at least a portion of the resources of the orbital satellite device; and

transferring state information related to execution of the ones of the virtual nodes to at least another device over a communication interface, wherein the state information comprises data related to the activities.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 6, 2020
From: VECTOR LAUNCH INC,; GARVEY SPACECRAFT CORPORATION
To: LOCKHEED MARTIN CORPORATION
Reel/Frame 052916/0236 →
SECURITY INTEREST Recorded Nov 22, 2019
From: VECTOR LAUNCH INC.; GARVEY SPACECRAFT CORPORATION
To: LOCKHEED MARTIN CORPORATION
Reel/Frame 051095/0502 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 24, 2019
From: COLEMAN, SHAUN; GARBER, DARREN D.
To: VECTOR LAUNCH INC.
Reel/Frame 049281/0046 →
Continuity (5)
Continuation 16137862 · Sep 21, 2018
Continuation 15859978 · Jan 2, 2018
Continuation 15459472 · Mar 15, 2017
Continuation 15297436 · Oct 19, 2016
Related Publication 20190280764A1 · Sep 12, 2019