Techniques for dynamically loading modules for devices discovered in a storage network
First Claim
Patent Images
1. In a network environment comprising a data processing system coupled to a storage area network (SAN), a method of dynamically loading code modules, the method comprising:
- executing a program on the data processing system, and upon execution;
accessing device information, the device information comprising information identifying a set of SAN device identifiers and a first set of code modules associated with the set of SAN device identifiers;
loading the first set of code modules referenced by the device information into an address space of the executing program;
while executing the program;
providing a signal to the executing program indicating that the device information has been modified to produce modified device information;
in response to the signal;
deleting the first set of code modules referenced by the device information before modification from the address space of the executing program;
accessing the modified device information; and
loading a second set of code modules referenced by the modified device information into the address space of the executing program.
14 Assignments
0 Petitions
Accused Products
Abstract
Techniques for dynamically loading or changing code modules in applications for monitoring and/or managing SANs without having to restart the applications or power down the SANs. The code modules loaded by an application, while the application is executing, may be used by the application to perform a variety of SAN related functions including automated discovery and visualization, device management, performance and status monitoring, and other like functions.
63 Citations
46 Claims
-
1. In a network environment comprising a data processing system coupled to a storage area network (SAN), a method of dynamically loading code modules, the method comprising:
-
executing a program on the data processing system, and upon execution; accessing device information, the device information comprising information identifying a set of SAN device identifiers and a first set of code modules associated with the set of SAN device identifiers; loading the first set of code modules referenced by the device information into an address space of the executing program; while executing the program; providing a signal to the executing program indicating that the device information has been modified to produce modified device information; in response to the signal; deleting the first set of code modules referenced by the device information before modification from the address space of the executing program; accessing the modified device information; and loading a second set of code modules referenced by the modified device information into the address space of the executing program. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. In a network environment comprising a data processing system coupled to a storage area network (SAN), a method of loading code modules, the method comprising:
-
executing a program on the data processing system; accessing device information, the device information including information related to a set of SAN device identifiers and information identifying a first set of code modules associated with the set of SAN device identifiers, the device information including information related to a first SAN device identifier and a first code module associated with the first SAN device identifier; loading the first set of code modules identified in the device information into an address space of the executing program; using the first set of code modules to monitor devices coupled to the SAN whose device identifiers match identifiers in the set of SAN device identifiers; while executing the program; providing a signal to the executing program indicating that the device information has been modified, the modified device information not including information related to the first SAN device identifier; and in response to the signal; deleting the first code module associated with the first SAN device identifier from the address space of the executing program. - View Dependent Claims (9)
-
-
10. In a network environment comprising a data processing system coupled to a storage area network (SAN), a method of loading code modules, the method comprising:
-
executing a program on the data processing system; accessing information related to a first SAN device identifier, the information related to the first SAN identifier including information identifying a first code module associated with the first SAN device identifier; loading the first code module into an address space of the executing program; while executing the program; receiving a signal indicating that the information related to the first SAN device identifier has been modified, the modified information identifying a second code module associated with the first SAN device identifier instead of the first code module; in response to the signal; deleting the first code module associated with the first SAN device identifier from the address space of the executing program; and loading the second code module into the address space of the executing program. - View Dependent Claims (11, 12, 13)
-
-
14. In a network environment comprising a data processing system coupled to a storage area network (SAN), a method of loading code modules, the method comprising:
-
executing a program on the data processing system; accessing device information comprising a set of SAN device identifiers including a first SAN device identifier, the device information further comprising information identifying a first code modules associated with SAN device identifiers in the set of SAN device identifiers including information identifying a first code module associated with the first SAN device identifier; loading the first set of code modules associated with the set of SAN device identifiers including the first code module into an address space of the executing program; while executing the program; receiving a signal indicating that the device information has been modified, the modified device information including a second SAN device identifier and a second code module associated with the second SAN device identifier, the second SAN device identifier not included in the set of SAN device identifiers included in the device information before modification; in response to the signal; loading the second code module into the address space of the executing program. - View Dependent Claims (15, 16, 17, 18)
-
-
19. In a network environment comprising a data processing system coupled to a storage area network (SAN), a method of loading code modules, the method comprising:
-
executing a program on the data processing system; accessing information related to a SAN device identifier, the information related to the SAN identifier including information identifying a code module associated with the SAN device identifier; loading the code module into an address space of the executing program; while executing the program; receiving a signal indicating that the code module has been modified; in response to the signal; deleting the previously loaded code module from the address space of the executing program; and loading the modified code module into the address space of the executing program.
-
-
20. A computer program product stored on a computer-readable medium for dynamically loading code modules, the computer program product comprising:
-
code for accessing device information, the device information comprising Information identifying a set of SAN device identifiers and a first set of code modules associated with the set of SAN device identifiers; and code for loading the first set of code modules referenced by the device information into an address space of an executing application program; code for using the first set of code modules referenced by the device information and loaded into the address space of the executing application program to manage a storage area network (SAN); code for receiving a signal while the application program is executing, the signal indicating that the device information has been modified to produce modified device information; code for deleting the first set of code modules referenced by the device information before modification from the address space of the executing application program in response to the signal; code for accessing the modified device information; code for loading a second of code modules referenced by the modified device information into the address space of the executing application program; and code for using the second set of code modules referenced by the modified device information and loaded into the address space of the executing application program to manage the SAN. - View Dependent Claims (21, 22, 23)
-
-
24. A computer program product stored on a computer readable medium for dynamically loading code modules, the computer program product comprising:
-
code for accessing device information, the device information including information related to a set of SAN device identifiers and information identifying a first set of code modules associated with the set of SAN device identifiers, the device information including information related to a first SAN device identifier and a first code module associated with the first SAN device identifier; code for loading the first set of code modules identified in the device information into an address space of an executing application program; code for using the first set of code modules to manage devices coupled to the SAN whose device identifiers match identifiers in the set of SAN device identifiers; code for receiving a signal from the executing application program, the signal indicating that the device information has been modified, the modified device information not including information related to the first SAN device identifier, and code for deleting the first code module associated with the first SAN device identifier from the address spate of the executing program in response to the signal. - View Dependent Claims (25)
-
-
26. A computer program product stored on a computer readable medium for loading code modules, the computer program product comprising:
-
code for accessing information related to a first SAN device identifier, the information related to the first SAN Identifier including information identifying a first code module associated with the first SAN device identifier; code for loading the first code module into an address space of an executing application program; code for using the first code module to manage devices coupled to the SAN; code for receiving a signal indicating that the information related to the first SAN device identifier has been modified, the modified information identifying a second code module associated with the first SAN device identifier instead of the first code module; code for deleting the first code module associated with the first SAN device identifier from the address space of the executing application program in response to the signal; code for loading the second code module into the address space of the executing application program;
endcode for using the second code module to manage devices coupled to the SAN. - View Dependent Claims (27, 28)
-
-
29. A computer program product stored on a computer readable medium for loading code modules, the computer program product comprising:
-
code for accessing device information comprising a set of SAN device identifiers including a first SAN device identifier, the device information further comprising information identifying code modules associated with each SAN device identifier in the set of SAN device identifiers including information identifying a first code module associated with the first SAN device identifier; code for loading the code modules associated with the set of SAN device identifiers into an address space of an executing application program; code for using the loaded code modules to manage a SAN; code for receiving a signal indicating that the device information has been modified, the modified device information including a second SAN device identifier and a second code module associated with the second SAN device identifier, the second SAN device identifier not included in the set of SAN device identifiers included in the device information before modification; code for loading the second code module into the address space of the executing application program in response to the signal; and code for using the loaded code modules corresponding to the set of SAN device identifiers and the second code module to manage the SAN. - View Dependent Claims (30, 31, 32)
-
-
33. A computer program product stored on a computer readable medium for dynamically loading code modules, the computer program product comprising:
-
code for accessing information related to a SAN device identifier, the information related to the SAN identifier including information identifying a code module associated with the SAN device identifier; code for loading the code module into an address space of an executing application program; code for using the loaded code modules to manage devices in a SAN; code for receiving a signal indicating that the code module has been modified; code for deleting the previously loaded code module from the address space of the executing application program in response to the signal; and code for loading the modified code module into the address space of the executing application program.
-
-
34. A network system comprising:
-
a SAN network comprising at least one SAN device; and a computer system coupled to the SAN network, the computer system comprising; a processor; a memory coupled to the processor, the memory configured to store a program for controlling the processor; and the processor operative with the program to access device information, the device information comprising information identifying a set of SAN device identifiers and a first set of code modules associated with the set of SAN device identifiers; load the first set of code modules referenced by the device information into an address space of the program executed by the processor; receive, while the program is executed by the processor, a signal indicating that the device information has been modified to produce modified device information; in response to the signal; delete the first set of code modules referenced by the device information before modification from the address space of the program executed by the processor, access the modified device information; and load a second set of code modules referenced by the modified device information into the address space of the program executed by the processor.
-
-
35. A network system comprising:
-
a SAN network comprising a plurality of devices; and a computer system coupled to the SAN network, the computer system comprising; a processor; a memory coupled to the processor, the memory configured to store a program for controlling the processor, and the processor operative with the program to access device information the device information including information related to a set of SAN device identifiers and information identifying a first set of code modules associated with the set of SAN device identifiers, the device information including information related to a first SAN device identifier and a first code module associated with the first SAN device identifier; load the first set of code modules identified in the device information into an address space of the program executed by the processor; use the first set of code modules to manage devices from the plurality of devices coupled to the SAN whose device identifiers match identifiers in the set of SAN device identifiers; receive, while the program is executed by the processor, a signal indicating that the device information has been modified, the modified device information not including information related to the first SAN device identifier; in response to the signal, delete the first code module associated with the first SAN device identifier from the address space of the program executed the processor. - View Dependent Claims (36)
-
-
37. A network system comprising:
-
a SAN network comprising a plurality of devices; and a computer system coupled to the SAN network, the computer system comprising; a processor; a memory coupled to the processor, the memory configured to store a program for controlling the processor; and the processor operative with the program to access information related to a first SAN device identifier, the information related to the first SAN identifier including information identifying a first code module associated with the first SAN device identifier; load the first code module into an address space of the program executed by the processor; receive, while the program is executed by the processor, a signal indicating that the information related to the first SAN device identifier has been modified, the modified information identifying a second code module associated with the first SAN device identifier instead of the first code module; and in response to the signal; delete the first code module associated with the first SAN device identifier from the address space of the executing program; and load the second code module into the address space of the program executed by the processor. - View Dependent Claims (38, 39, 40)
-
-
41. A network system comprising:
-
a SAN network comprising a plurality of devices; and a computer system coupled to the SAN network, the computer system comprising; a processor; a memory coupled to the processor, the memory configured to store a program for controlling the processor; and the processor operative with the program to access device information comprising a set of SAN device identifiers including a first SAN device identifier, the device information further comprising information identifying code modules associated with SAN device identifiers in the set of SAN device identifiers including information identifying a first code module associated with the first SAN device identifier; load the first set of code modules associated with the set of SAN device identifiers including the first code module into an address space of the program executed by the processor; and receive, while the program is executed by the processor, a signal indicating that the device information has been modified, the modified device information including a second SAN device identifier and a second code module associated with the second SAN device identifier, the second SAN device identifier not included in the set of SAN device identifiers included in the device information before modification; in response to the signal, load the second code module into the address space of the program executed by the processor. - View Dependent Claims (42, 43, 44, 45)
-
-
46. A network system comprising:
-
a SAN network comprising a plurality of devices; and a computer system coupled to the SAN network, the computer system comprising; a processor; a memory coupled to the processor, the memory configured to store a program for controlling the processor; and the processor operative the program to access information related to a SAN device identifier, the information related to the SAN identifier including information identifying a code module associated with the SAN device identifier; load the code module into an address space of the program executed by the processor; receive, while the program is executed by the processor, a signal indicating that the code module has been modified; in response to the signal; delete the previously loaded code module from the address space of the executing program; and load the modified code module into the address space of the executing program.
-
Specification