IP Library Granted Patent US 9,110,758
Granted Patent B2
US 9,110,758 · App. 13/925,697 · Granted Aug 18, 2015

Cross-platform software framework for embedded systems on data storage device

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 9,110,758
App. No.
13/925,697
Granted
Aug 18, 2015
Kind
B2
Abstract

The embodiments of present invention relates to methods and systems for a cross-platform framework for embedded systems. One embodiment provides a framework for a network attached storage or other storage devices. The framework provides a standardized structure for modules of software, such as plugins, to implement various features on the embedded system. In addition, the framework supports interoperability between software modules written in either native code, such as C, C++, and interpreted code, such as JAVA™.

Claims (29)

1. A method of controlling execution of program code on an embedded device via a framework, said method comprising:

receiving software modules on the embedded device into a directory indicated by a pointer configured in the framework, wherein the software modules are written in one of an interpreted program code and

a program code native to a hardware platform of the embedded device;

authenticating, by the framework, the software modules;

determining a set of permissions to the software modules based on the authentication;

verifying dependencies of the software modules needed for execution of the software modules;

compiling the software modules into program code that is executable on the hardware platform of the embedded device; and

controlling, by the framework, execution of the software modules, wherein the framework provides interoperability between software modules written in interpreted program code and software modules written in native program code.

2. The method of claim 1 , wherein the embedded device is a network attached storage.

3. The method of claim 1 , wherein authenticating the software modules comprises authenticating the software modules based on a digital signature.

4. The method of claim 1 , wherein determining the set of permissions comprises determining the set of permissions based on a digital certificate indicated by a manifest for the software modules.

5. The method of claim 1 , wherein determining dependencies of the software modules comprises determining a dependency on a native program code library based on a header provided in the software modules and a manifest for the software modules.

6. The method of claim 1 , wherein controlling execution of the software modules comprises controlling execution of a software module written in the native program code.

7. The method of claim 1 , wherein controlling execution of the software modules comprises controlling execution of a software module written in C++.

8. An embedded device configured to control execution of program code via a framework implementing a framework, the embedded device comprising:

storage;

a controller coupled to the storage, the controller being configured to:

receive software modules into a directory indicated by a pointer configured in the framework, the software modules being written in one of an interpreted program code and a program code native to a hardware platform of the embedded device;

authenticate the software modules using the framework;

determine a set of permissions to the software modules based on the authentication;

verify dependencies of the software modules needed for execution of the software modules;

compile the software modules into program code that is executable on the hardware platform of the embedded device; and

control, using the framework, execution of the software modules, wherein the framework provides interoperability between software modules written in interpreted program code and software modules written in native program code.

9. The embedded device of claim 8 , wherein the embedded device comprises a network attached storage.

10. The embedded device of claim 8 , wherein the controller is configured to authenticate the software modules based on a digital signature.

11. The embedded device of claim 8 , wherein the controller is further configured to determine the set of permissions based on a digital certificate indicated by a manifest for the software modules.

12. The embedded device of claim 8 , wherein the controller is further configured to determine dependencies by determining a dependency on a native program code library based on a header provided in the software modules and a manifest for the software modules.

13. The embedded device of claim 8 , wherein the controller is further configured to control execution of a software module written in the native program code.

14. The embedded device of claim 8 , wherein the controller is further configured to control execution of a software module written in C++.

Assignments (7)
PATENT COLLATERAL AGREEMENT - DDTL LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 067045/0156 →
PATENT COLLATERAL AGREEMENT - A&R LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 064715/0001 →
RELEASE OF SECURITY INTEREST AT REEL 038744 FRAME 0481 Recorded Feb 8, 2022
From: JPMORGAN CHASE BANK, N.A.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 058982/0556 →
RELEASE OF SECURITY INTEREST Recorded Mar 5, 2018
From: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 045501/0714 →
SECURITY AGREEMENT Recorded May 17, 2016
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 038722/0229 →
SECURITY AGREEMENT Recorded May 17, 2016
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 038744/0281 →
SECURITY AGREEMENT Recorded May 17, 2016
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 038744/0481 →