IP Library Patent Application 19240862
Patent Application
App. No. 19/240,862

Remote Software Updates with Storage Repartition

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 None
App. No.
19/240,862
Abstract

Installing critical software updates on remote devices, such as satellite terminals in inaccessible locations, poses significant challenges, especially since on-site technical support is likely unavailable. To mitigate the risk of installation failures, these devices often store backup software on a separate partition, enabling continued operation if an update fails. Embodiments detailed herein are focused on handling larger updates that require repartitioning the storage device, a process that increases risk but is necessary for accommodating large updates. These approaches are designed to ensure reliable and resilient software updates, even in remote or inhospitable environments, by maintaining system functionality and reducing the operational risks associated with failed installations.

Claims (66)

1 . A method for performing a software update, the method comprising:

receiving, by a communication device, from a remote server system, a request to initiate a software update, wherein the request indicates a required amount of storage space for an operating system, wherein:

a plurality of partitions are defined on a storage device of the communication device, the plurality of partitions comprising at least a first partition, a second partition, a third partition, and a fourth partition;

determining, by the communication device, that the first partition of the storage device is insufficient in size based on the required amount of storage space indicated in the request;

in response to determining that the first partition of the storage device is insufficient in size, decreasing the size of the second partition and increasing the size of the first partition;

redefining the third partition as a factory partition such that only the third partition is trusted and available for booting;

after redefining the third partition as the factory partition, downloading, by the communication device, from the remote server system, the software update to the first partition; and

after downloading the software update, redefining the first partition as the factory partition such that only the first partition is trusted and available for booting.

2 . The method for performing the software update of claim 1 , further comprising:

after redefining the first partition as the factory partition, decreasing the size of the fourth partition and increasing the size of the third partition; and

downloading, by the communication device, from the remote server system, the software update to the third partition.

3 . The method for performing the software update of claim 2 , further comprising:

prior to decreasing the size of the fourth partition, copying data from the fourth partition to the second partition; and

after decreasing the size of the fourth partition, copying the data from the second partition to the fourth partition.

4 . The method for performing the software update of claim 3 , further comprising:

after downloading the software update to the third partition, redefining a boot trust parameter for the communication device to define a temporary level of trust for booting to the third partition and defining factory in the first partition to serve as a backup for booting if booting to the third partition fails or the communication device is rebooted due to failure to communicate with the remote server.

5 . The method for performing the software update of claim 4 , further comprising:

after redefining the boot trust parameter for the communication device to define a temporary level of trust for booting to the third partition, rebooting the communication device; and

in response to booting and communicating with the remote server successfully, redefining the boot trust parameter for the communication device to define a permanent level of trust for booting to the third partition.

6 . The method for performing the software update of claim 1 , wherein the communication device communicates with the remote server system via satellite.

7 . The method for performing the software update of claim 1 , wherein:

when determining whether the first partition of the storage device is at least as large as the required amount of storage space, the first partition is defined as the factory partition; and

when redefining the third partition as the factory partition, such that only the third partition is available for booting, the first partition is no longer defined as the factory partition.

8 . The method for performing the software update of claim 1 , wherein determining that the first partition of the storage device is at least as large as the required amount of storage space comprises analyzing a board support package (BSP) manifest.

9 . A communication device, comprising:

one or more processors; and

one or more machine-readable media storing instructions that are operable, when executed by the one or more processors, to cause the communication device to perform operations comprising:

receiving, from a remote server system, a request to initiate a software update, wherein the request indicates a required amount of storage space for an operating system, wherein:

a plurality of partitions are defined on a storage device of the communication device, the plurality of partitions comprising at least a first partition, a second partition, a third partition, and a fourth partition;

determining that the first partition of the storage device is insufficient in size based on the required amount of storage space indicated in the request;

in response to determining that the first partition of the storage device is insufficient in size, decreasing the size of the second partition and increasing the size of the first partition;

redefining the third partition as a factory partition such that only the third partition is trusted and available for booting;

after redefining the third partition as the factory partition, downloading, from the remote server system, the software update to the first partition; and

after downloading the software update, redefining the first partition as the factory partition such that only the first partition is trusted and available for booting.

10 . The communication device of claim 9 , wherein the machine-readable media storing instructions further cause the communication device to perform operations comprising:

after redefining the first partition as the factory partition, decreasing the size of the fourth partition and increasing the size of the third partition; and

downloading, from the remote server system, the software update to the third partition.

11 . The communication device of claim 10 , wherein the machine-readable media storing instructions further cause the communication device to perform operations comprising:

prior to decreasing the size of the fourth partition, copying data from the fourth partition to the second partition; and

after decreasing the size of the fourth partition, copying the data from the second partition to the fourth partition.

12 . The communication device of claim 11 , wherein the machine-readable media storing instructions further cause the communication device to perform operations comprising:

after downloading the software update to the third partition, redefining a boot trust parameter for the communication device to define a temporary level of trust for booting to the third partition and defining factory in the first partition to serve as a backup for booting if booting to the third partition fails or the communication device is rebooted due to failure to communicate with the remote server.

13 . The communication device of claim 12 , wherein the machine-readable media storing instructions further cause the communication device to perform operations comprising:

after redefining the boot trust parameter for the communication device to define a temporary level of trust for booting to the third partition, rebooting the communication device; and

in response to booting and communicating with the remote server successfully, redefining the boot trust parameter for the communication device to define a permanent level of trust for booting to the third partition.

14 . The communication device of claim 9 , wherein the communication device communicates with the remote server system via satellite.

15 . The communication device of claim 9 , wherein:

determining whether the first partition of the storage device is at least as large as the required amount of storage space, the first partition is defined as the factory partition; and

redefining the third partition as the factory partition, such that only the third partition is available for booting, the first partition is no longer defined as the factory partition.

16 . The communication device of claim 9 , wherein determining that the first partition of the storage device is at least as large as the required amount of storage space comprises analyzing a board support package (BSP) manifest.

17 . A non-transitory processor-readable medium comprising processor-readable instructions configured to cause one or more processors of a communication device to:

receive a request to initiate a software update, wherein the request indicates a required amount of storage space for an operating system, wherein:

a plurality of partitions are defined on a storage device of the communication device, the plurality of partitions comprising at least a first partition, a second partition, a third partition, and a fourth partition;

determine that the first partition of the storage device is insufficient in size based on the required amount of storage space indicated in the request;

in response to determining that the first partition of the storage device is insufficient in size, decrease the size of the second partition and increasing the size of the first partition;

redefine the third partition as a factory partition such that only the third partition is trusted and available for booting;

after redefining the third partition as the factory partition, download from a remote server system the software update to the first partition; and

after downloading the software update, redefine the first partition as the factory partition such that only the first partition is trusted and available for booting.

18 . The non-transitory processor-readable medium of claim 17 , wherein the machine-readable media storing instructions further cause the one or more processors to:

after redefining the first partition as the factory partition, decrease the size of the fourth partition and increasing the size of the third partition; and

downloading, from the remote server system, the software update to the third partition.

19 . The non-transitory processor-readable medium of claim 18 , wherein the machine-readable media storing instructions further cause the one or more processors to:

prior to decreasing the size of the fourth partition, copy data from the fourth partition to the second partition; and

after decreasing the size of the fourth partition, copy the data from the second partition to the fourth partition.

20 . The non-transitory processor-readable medium of claim 19 , wherein the machine-readable media storing instructions further cause the one or more processors to:

after downloading the software update to the third partition, redefine a boot trust parameter for the communication device to define a temporary level of trust for booting to the third partition and defining factory in the first partition to serve as a backup for booting if booting to the third partition fails or the communication device fails to communicate with the remote server.

Assignments (2)
SECURITY INTEREST Recorded Sep 29, 2025
From: HUGHES NETWORK SYSTEMS, LLC
To: U.S. BANK NATIONAL ASSOCIATION
Reel/Frame 072955/0166 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 17, 2025
From: VEDULA, SHANTI SWARUP; RADHAKRISHNAN, MAHESH
To: HUGHES NETWORK SYSTEMS, LLC
Reel/Frame 071438/0955 →