ON-DEMAND LOADING OF DYNAMIC SCRIPTING LANGUAGE CODE FOR REDUCED MEMORY USAGE
First Claim
1. A system for reducing a memory space required to store an application written in a dynamic scripting language, the system comprising:
- an input/output device that receives a request corresponding to a segment of program code in a program module in the dynamic scripting language;
an on-demand loader that determines whether or not the segment of program code is in a memory and identifies, in response to having determined the segment of program code is not in the memory, a location in a storage where at least a portion of the program module containing the segment of program code is stored, locates the segment of program code in a second copy of the portion of the program module, and copies the segment of program code into a first copy of the program module in the memory; and
a code loader that loads the second copy of the portion of the program module containing the segment of program code from the storage into the memory.
1 Assignment
0 Petitions
Accused Products
Abstract
A computer-implemented method and system for reducing the amount of memory space required to store applications written in dynamic scripting languages loads a program module into memory and removes a category of program code, such as debug information or function definitions, from the program module. The method and system also receives a request for debug information, or a function call or query, and determines whether or not the corresponding program code is in memory. If not, then the location in storage is identified where the program module is stored, and another copy containing the corresponding program code is loaded into memory. The corresponding program code is located and copied into the program module in memory, and a response is provided to the request.
9 Citations
20 Claims
-
1. A system for reducing a memory space required to store an application written in a dynamic scripting language, the system comprising:
-
an input/output device that receives a request corresponding to a segment of program code in a program module in the dynamic scripting language; an on-demand loader that determines whether or not the segment of program code is in a memory and identifies, in response to having determined the segment of program code is not in the memory, a location in a storage where at least a portion of the program module containing the segment of program code is stored, locates the segment of program code in a second copy of the portion of the program module, and copies the segment of program code into a first copy of the program module in the memory; and a code loader that loads the second copy of the portion of the program module containing the segment of program code from the storage into the memory. - View Dependent Claims (2, 3, 4)
-
-
5. A method of reducing a memory space required to store an application written in a dynamic scripting language, the method comprising:
-
receiving, with a processor, a request corresponding to a segment of program code in a program module in the dynamic scripting language; determining whether or not the segment of program code is in a memory; identifying, in response to having determined the segment of program code is not in the memory, a location in a storage where at least a portion of the program module containing the segment of program code is stored; loading a second copy of the portion of the program module containing the segment of program code from the storage into the memory; locating the segment of program code in the second copy of the portion of the program module; and copying the segment of program code into a first copy of the program module in the memory. - View Dependent Claims (6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A method of reducing a memory space required to store an application written in a dynamic scripting language, the method comprising:
-
receiving, with a processor, a request corresponding to a segment of debug information in a program module in the dynamic scripting language; determining whether or not the segment of debug information is in a memory; identifying, in response to having determined the segment of debug information is not in the memory, a location in a storage where at least a portion of the program module containing the segment of debug information is stored; loading a second copy of the portion of the program module containing the segment of debug information from the storage into the memory; locating the segment of debug information in the second copy of the portion of the program module; and copying the segment of debug information into a first copy of the program module in the memory. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification