Method and system for caching managed code for efficient execution on resource-constrained devices
First Claim
1. In a computing device, a method comprising:
- loading from a storage at least one section of a managed code program into memory;
maintaining at least one section in the memory such that the selected section or sections are not removed in ordinary operation while running the managed code program; and
loading at least some code and/or data of the managed code program into memory on demand.
2 Assignments
0 Petitions
Accused Products
Abstract
Described is a system and method that separates a managed code runtime library or program into four parts, comprising a header, resources, metadata and method implementations. The metadata and some or all of the resources are maintained in system memory (RAM) the entire time that the program is running. The method implementations and any non-maintained resources are loaded on demand, and then discarded such as via garbage collection. The amount of memory consumed by a managed code program is thus reduced relative to non-separated environments, but because the metadata and selected resources are in memory, the program execution is highly efficient due to significantly reduced access of data in non-volatile storage. The parts of the assembly that are maintained in RAM can be saved as code library files, providing shared use by programs and efficient loading by eliminating any need to again parse a program to identify the separate parts.
16 Citations
20 Claims
-
1. In a computing device, a method comprising:
-
loading from a storage at least one section of a managed code program into memory;
maintaining at least one section in the memory such that the selected section or sections are not removed in ordinary operation while running the managed code program; and
loading at least some code and/or data of the managed code program into memory on demand. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. In a computing device, a system comprising:
-
a storage that contains managed code programs;
a memory; and
a loader mechanism coupled to the storage to load a managed code program into the memory, the loader mechanism differentiating at least one selected section of the managed code program from at least one other section, such that the selected section and/or sections are loaded into memory and not removed in ordinary operation while running the managed code program. - View Dependent Claims (12, 13, 15, 16)
-
-
14. The system of claim 14 wherein the subset of program resources comprises at least one item of a set, the set containing strings and other user interface elements.
-
17. At least one computer-readable medium having computer-executable instructions, which when executed perform steps, comprising:
-
receiving a request to execute a managed code program;
loading at least one selected section of the managed code program from a storage into memory, including loading program metadata such that the selected data are not removed in ordinary operation while executing the managed code program;
loading at least one other section of the managed code program on demand, including loading a method implementation when needed for managed code program execution. - View Dependent Claims (18, 19, 20)
-
Specification