Method and system for managing memory for software modules
First Claim
1. A method for reserving memory for a software module, comprising:
- allocating memory for a first software module;
using a first loader to load the first software module into the allocated memory, the first software module having a second loader containing processor executable instructions for loading a second software module into the allocated memory;
registering the first software module for service, thereby reserving the memory allocated to the first software module; and
executing the processor executable instructions of the first software module; and
loading the second software module into the allocated memory.
1 Assignment
0 Petitions
Accused Products
Abstract
The invention provides a method and system for managing memory for software modules in a computer processing environment. According to a first aspect of the invention, a method includes allocating memory for a first software module. The method also includes loading the first software module into the allocated memory. The first software module includes processor executable instructions for loading a second software module into memory. The method further includes registering the first software module for service and loading the second software module. According to a second aspect of the invention, a method is provided for releasing memory allocated according to the first aspect of the invention. Systems and articles of manufacture for managing memory for software modules are also described.
28 Citations
31 Claims
-
1. A method for reserving memory for a software module, comprising:
-
allocating memory for a first software module; using a first loader to load the first software module into the allocated memory, the first software module having a second loader containing processor executable instructions for loading a second software module into the allocated memory; registering the first software module for service, thereby reserving the memory allocated to the first software module; and executing the processor executable instructions of the first software module; and loading the second software module into the allocated memory. - View Dependent Claims (2, 3)
-
-
4. A method for releasing memory reserved for a software module, comprising:
-
executing processor executable instructions of a first software module having a first unloader for releasing a second software module from memory, the first software module residing in reserved memory; releasing the second software module; and unregistering the first software module for service using a second unloader, thereby releasing the memory reserved for the first software module. - View Dependent Claims (5)
-
-
6. A software module, comprising:
-
module registration logic, module unregistration logic, and logic to load a second software module, logic to unload the second software module, and logic to direct calls to the second software module; and creating a second software module containing logic for processing calls passed through the first software module. - View Dependent Claims (7, 8)
-
-
9. A method for utilizing a registration service to dynamically load a software module regardless of the module type, comprising:
-
using a first loader to load a first software module into a reserved memory, the first software module being of a module type authorized to utilize a registration service; executing the instructions of the first software module having a second loader to perform the steps of; loading a second software module, passing a request received by the first software module to the second software module for processing, receiving a result from the second software module, returning the result to a requesting process, unloading the second software module; and releasing the memory reserved for the first software module. - View Dependent Claims (10, 11)
-
-
12. A system for reserving memory for a software module, comprising:
-
a processor; a memory connected to the processor for storing processor executable instructions to control the operation of said processor; the processor executable instructions including; instructions to register a first software module for service; the first software module including instructions to allocate memory and load into the allocated memory a second software module associated with the first software module; instructions to determine whether the first software module is needed for further processing; instructions to unload the second software module from and release the allocated memory; and instructions to unregister the first software module for service. - View Dependent Claims (13, 14, 15, 16)
-
-
17. A system for managing memory, comprising:
-
a processor; a memory connected to said processor storing; a first software module; a second software module associated with the first software module, wherein the first module includes instructions to load the second software module; a switch table for storing a module hold count; and processor executable instructions to control operation of the processor; the processor executable instructions including; instructions to register the first software module for service; instructions to unregister the first software module for service; and instructions to reserve and release memory for the second software module during execution of the first software module. - View Dependent Claims (18)
-
-
19. A computer-readable storage medium encoded with processing instructions for managing memory, including:
-
computer readable instructions that allocate memory for a first software module; computer readable instructions that load the first software module into the allocated memory; computer readable instructions that register the first software module for service; and computer readable instructions that load a second software module associated with the first software module into the allocated memory.
-
-
20. A system for managing memory comprising:
-
a processor, a memory, a first loader for loading a first software module that is a dynamically loadable kernel module, a second software module that is associated with the first software module, wherein the first software module includes a second loader having instructions to load the second software module, means for directing the processor to allocate memory for the first and second software modules, and means for directing the processor to release the memory allocated for the first and second software modules. - View Dependent Claims (21, 22, 23, 24, 25)
-
-
26. A system for managing memory comprising:
-
a first loader, a first software module, a second software module associated with the first software module, memory, wherein the first software module includes a second loader having instructions for loading the second software module, means for releasing memory allocated to at least one of the first software module and the second software module. - View Dependent Claims (27, 28)
-
-
29. A system for dynamically loading a second software module into memory comprising:
-
a first loader, a first software module, a second software module associated with the first software module, wherein the first software module includes a second loader having instructions for loading the second software module, and means for the first software module to load the second software module into memory, wherein the second software module is not recognized as a dynamically loadable type software module. - View Dependent Claims (30, 31)
-
Specification