IP Library Granted Patent US 10,445,081
Granted Patent B2
US 10,445,081 · App. 15/222,557 · Granted Oct 15, 2019

Techniques of automatically generating dependencies for applications in embedded systems

Inventors: Samvinesh Christopher (Suwanee, GA); Winston Thangapandian (Duluth, GA); Anurag Bhatia (Liburn, GA)
Assignee: AMERICAN MEGATRENDS INTERNATIONAL, LLC
G06F8/61
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,445,081
App. No.
15/222,557
Granted
Oct 15, 2019
Kind
B2
Abstract

In an aspect of the disclosure, a method, a computer-readable medium, and an apparatus are provided. The apparatus may be a management device. The management device obtains an organizational file of an executable program. The management device determines a list of libraries that are depended to execute the executable program. The management device obtains the list of libraries from one or more library collections. The library collections include at least one library that is not in the list of libraries. The management device constructs an embedded-system device with the executable program and the list of libraries without the at least one library.

Claims (37)

1. A method of installing firmware to an embedded-system device, comprising:

obtaining, at an installation device external to the embedded-system device, an organizational file of an executable program;

determining, at the installation device, a list of libraries that are depended to execute the executable program;

obtaining, at the installation device, the list of libraries from one or more library collections, the one or more library collections including at least one library that is not in the list of libraries;

generating, at the installation device, firmware for the embedded-system device with the executable program and the list of libraries without the at least one library;

installing the firmware from the installation device to a storage device of the embedded-system device, wherein the storage device is external to a primary memory of the embedded-system device, wherein a processing unit of the embedded-system device loads the executable program and the list of libraries from the storage device into the primary memory for execution.

2. The method of claim 1 , wherein the organizational file is an Executable and Linkable Format (ELF) file.

3. The method of claim 1 , wherein each library of the list of libraries is a dynamic library.

4. The method of claim 1 , wherein each library collection of the one or more library collections includes a member library that is in the list of libraries, wherein the embedded-system device is constructed without installing the one or more library collections in entirety.

5. The method of claim 1 , wherein the obtaining the organizational file includes scanning the executable program to locate the organizational file.

6. The method of claim 1 , wherein the determining the list includes parsing the organizational file to locate a section indicating library dependency of the executable program.

7. The method of claim 6 , wherein the section indicating library dependency includes indications of dynamic libraries utilized by the executable program.

8. An apparatus, the apparatus being an installation device external to an embedded-system device, comprising:

a memory; and

at least one processor coupled to the memory and configured to:

obtain, at the installation device, an organizational file of an executable program;

determine, at the installation device, a list of libraries that are depended to execute the executable program;

obtain, at the installation device, the list of libraries from one or more library collections, the one or more library collections including at least one library that is not in the list of libraries;

generate, at the installation device, firmware for the embedded-system device with the executable program and the list of libraries without the at least one library; and

install the firmware from the installation device to a storage device of the embedded-system device, wherein the storage device is external to a primary memory of the embedded-system device, wherein a processing unit of the embedded-system device loads the executable program and the list of libraries from the storage device into the primary memory for execution.

9. The apparatus of claim 8 , wherein the organizational file is an Executable and Linkable Format (ELF) file.

10. The apparatus of claim 8 , wherein each library of the list of libraries is a dynamic library.

11. The apparatus of claim 8 , wherein each library collection of the one or more library collections includes a member library that is in the list of libraries, wherein the embedded-system device is constructed without installing the one or more library collections in entirety.

12. The apparatus of claim 8 , wherein the obtaining the organizational file includes scanning the executable program to locate the organizational file.

13. The apparatus of claim 8 , wherein the determining the list includes parsing the organizational file to locate a section indicating library dependency of the executable program.

14. The apparatus of claim 13 , wherein the section indicating library dependency includes indications of dynamic libraries utilized by the executable program.

15. A non-transitory computer-readable medium storing computer executable code for operating an installation device external to an embedded-system device, comprising code to:

obtain, at the installation device, an organizational file of an executable program;

determine, at the installation device, a list of libraries that are depended to execute the executable program;

obtain, at the installation device, the list of libraries from one or more library collections, the one or more library collections including at least one library that is not in the list of libraries;

generate, at the installation device, firmware for the embedded-system device with the executable program and the list of libraries without the at least one library; and

install the firmware from the installation device to a storage device of the embedded-system device, wherein the storage device is external to a primary memory of the embedded-system device, wherein a processing unit of the embedded-system device loads the executable program and the list of libraries from the storage device into the primary memory for execution.

16. The non-transitory computer-readable medium of claim 15 , wherein the organizational file is an Executable and Linkable Format (ELF) file.

17. The non-transitory computer-readable medium of claim 15 , wherein each library of the list of libraries is a dynamic library.

18. The non-transitory computer-readable medium of claim 15 , wherein each library collection of the one or more library collections includes a member library that is in the list of libraries, wherein the embedded-system device is constructed without installing the one or more library collections in entirety.

19. The non-transitory computer-readable medium of claim 15 , wherein the obtaining the organizational file includes scanning the executable program to locate the organizational file.

20. The non-transitory computer-readable medium of claim 15 , wherein the determining the list includes parsing the organizational file to locate a section indicating library dependency of the executable program.

Assignments (5)
PATENT SECURITY AGREEMENT Recorded Oct 23, 2024
From: AMERICAN MEGATRENDS INTERNATIONAL, LLC
To: BAIN CAPITAL CREDIT, LP, AS ADMINISTRATIVE AGENT AND COLLATERAL AGENT
Reel/Frame 069229/0834 →
RELEASE OF SECURITY INTEREST Recorded Oct 17, 2024
From: MIDCAP FINANCIAL TRUST
To: AMERICAN MEGATRENDS INTERNATIONAL, LLC
Reel/Frame 069205/0795 →
SECURITY INTEREST Recorded May 6, 2019
From: AMERICAN MEGATRENDS INTERNATIONAL, LLC
To: MIDCAP FINANCIAL TRUST, AS COLLATERAL AGENT
Reel/Frame 049087/0266 →
ENTITY CONVERSION Recorded Apr 15, 2019
From: AMERICAN MEGATRENDS, INC.
To: AMERICAN MEGATRENDS INTERNATIONAL, LLC
Reel/Frame 049091/0973 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 28, 2016
From: CHRISTOPHER, SAMVINESH; THANGAPANDIAN, WINSTON; BHATIA, ANURAG
To: AMERICAN MEGATRENDS, INC.
Reel/Frame 039504/0074 →
Continuity (1)
Related Publication 20180032564A1 · Feb 1, 2018
Cited By (1)
US 12,197,901