Legal claims defining the scope of protection, as filed with the USPTO.
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.
2. The method of claim 1 wherein: the device information includes at least a first SAN device identifier associated with a first code module, and in the modified device information the first SAN device identifier is associated with a second code module instead of the first code module; and the operation of loading the second set of code modules referenced by the modified device information into the address space of the executing program comprises loading the second code module into the address space of the executing program.
3. The method of claim 2 further comprising: before receiving the signal: scanning the SAN to discover a set of SAN devices, the set of SAN devices including a first SAN device whose device identifier matches the first SAN device identifier; and using the first code module associated with the first SAN device identifier to monitor the first SAN device; and after loading the second set of code modules referenced by the modified device information into the address space of the executing program: using the second code module instead of the first code module to monitor the first SAN device.
4. The method of claim 1 wherein: the device information includes at least a first SAN device identifier associated with a first code module, and the modified device information includes information identifying a second SAN device identifier and a second code module associated with the second SAN device identifier, the second device identifier not included in the device information before modification; and loading the second set of code modules referenced by the modified device information into the address pace of the executing program comprises loading the second code module associated with the second SAN device identifier into the address space of the executing program.
5. The method of claim 4 further comprising: scanning the SAN to discover a first SAN device, the SAN device identifier associated with the first SAN device matching the second SAN device identifier; and using the second code module associated with the second SAN device identifier to monitor the first SAN device.
6. The method of claim 1 further comprising: before receiving the signal: scanning the SAN to discover a first set of SAN devices; and for each SAN device in the first set of SAN devices: if the identifier associated with the SAN device matches a SAN device identifier in the set of SAN device identifiers included in the device information, using the code module associated with the matching SAN device identifier to monitor the SAN device.
7. The method of claim 1 wherein the device information is stored in a plurality of files, each file including information related to a SAN device identifier from the set of SAN device identifiers and information related to a code module associated with the SAN device identifier.
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.
9. The method of claim 8 wherein: the device information before modification is stored in a set of files, each file including information related to a SAN device identifier from the set of SAN device identifiers and information related to a code module associated with the SAN device identifier, the set of files including a first file including information related to the first SAN device identifier and information identifying the first code module associated with the first SAN device identifier; and the modified device information is stored in a set of files not including the first file.
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.
11. The method of claim 10 further comprising: before receiving the signal: scanning the SAN to identify at least a first device coupled to the SAN; determining an identifier associated with the first device; and if the identifier associated with the first device matches the first SAN device identifier, using the first code module loaded into the address space of the program to monitor the first device; and after loading the second code module: if the identifier associated with the first device matches the first SAN device identifier, using the second code module loaded into the address space of the program module to monitor the first device.
12. The method of claim 11 wherein using the second code module loaded into the address space of the program to monitor the first device comprises: instantiating an object using the second code module: associating the object with the first device; and using the object to monitor the first device.
13. The method of claim 11 wherein determining the identifier associated with the first device comprises using SNMP protocol to determine the identifier.
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.
15. The method of claim 14 further comprising: scanning the SAN to identify a set of devices coupled to the SAN; for each device in the set of devices: determining an identifier associated with a device in the set of devices; if the identifier associated with the device matches the first SAN device identifier, using the first code module loaded into the address space of the program to monitor the device; and if the identifier associated with the device matches the second SAN device identifier, using the second code module loaded into the address space of the program to monitor the device.
16. The method of claim 15 wherein using the second code module loaded into the address space of the program to monitor the device comprises: instantiating an object using the second code module; associating the object with the device whose identifier matches the second SAN device identifier; and using the object to monitor the device.
17. The method of claim 15 wherein determining the identifier associated with the device comprises using SNMP protocol to determine the identifier.
18. The method of claim 14 wherein the device information is stored in a plurality of files, each file including information related to a SAN device identifier from the set of SAN device identifiers and information related to a code module from the first set of code modules associated with the SAN device identifier.
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.
21. The computer program product of claim 20 wherein: the device information includes at least a first SAN device identifier associated with a first code module, and in the modified device information the first SAN device identifier is associated with a second code module instead of the first code module; and the code for loading the second set of code modules referenced by the modified device information into the address space of the executing application program comprises code for loading the second code module into the address space of the executing application program.
22. The computer program product of claim 20 wherein: the 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 the SAN comprises: code for scanning the SAN to discover a set of SAN devices, the set of SAN devices including a first SAN device whose device identifier matches the first SAN device identifier; and code for using the first code module associated with the first SAN device identifier to manage the first SAN device; and the 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 comprise: code for using the second code module instead of the first code module to manage the first SAN device.
23. The computer program product of claim 20 wherein: the device information includes at least a first SAN device identifier associated with a first code module, and the modified device information includes information identifying a second SAN device identifier and a code module associated with the second SAN device identifier, the second device identifier not included in the device information before modification; the 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 the SAN comprises: code for scanning the SAN to discover a first set of SAN devices; and for each SAN device in the first set of SAN devices, if the identifier associated with the SAN device matches a SAN device identifier in the set of SAN device identifiers included in the device information, code for using the code module associated with the matching SAN device identifier to monitor the SAN device; the code for loading the second set of code modules referenced by the modified device information into the address space of the executing application program comprises code for loading the code module associated with the second SAN device identifier into the address space of the executing application program; and the code for using the second set of code modules referenced by the modified device information and loaded into the address space of the application program to manage the SAN comprises: code for scanning the SAN to discover a first SAN device, the SAN device identifier associated with the first SAN device matching the second SAN device identifier; and code for using the code module associated with the second SAN device identifier to monitor the first SAN device.
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.
25. The computer program product of claim 24 wherein: the device information before modification is stored in a set of files, each file including information related to a SAN device identifier from the set of SAN device identifiers and information related to a code module associated with the SAN device identifier, the set of files including a first file including information related to the first SAN device identifier and information identifying the first code module associated with the first SAN device identifier; and the modified device information is stored in a set of files not including the first file.
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; end code for using the second code module to manage devices coupled to the SAN.
27. The computer program product of claim 26 further comprising: the code for using the first code module to manage the devices coupled to the SAN comprises: code for scanning the SAN to identify at least a first device coupled to the SAN; code for determining an identifier associated with the first device; and if the identifier associated with the first device matches the first SAN device identifier, code for using the first code module loaded into the address space of the executing application program to monitor the first device; and the code for using the second code module to manage the devices coupled to the SAN comprises; if the identifier associated with the first device matches the first SAN device identifier: code for instantiating an object using the second code module; code for associating the object with the first device; and code for using the object to manage the first device.
28. The computer program product of claim 27 wherein the code for determining the identifier associated with the first device comprises code for using SNMP protocol to determine the identifier.
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.
30. The computer program product of claim 29 wherein the code for using the loaded code modules corresponding to the set of SAN device identifiers and the second code module to manage the SAN comprises: code for scanning the SAN to identify a set of devices coupled to the SAN; for each device in the set of devices: code for determining an identifier associated with the device; if the identifier associated with the device matches the first SAN device identifier, code for using the first code module loaded into the address space of the executing application program to monitor the device; and if the identifier associated with the device matches the second SAN device identifier, code for using the second code module loaded into the address space of the executing application program to monitor the device.
31. The computer program product of claim 30 wherein the code for using the second code module loaded into the address space of the executing application program to monitor the device comprises: instantiating on object using the second code module; associating the object with the device whose identifier matches the second SAN device identifier; and using the object to manage the device.
32. The computer program product of claim 30 wherein the code for determining the identifier associated with the device comprises code for using SNMP protocol to determine the identifier.
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.
36. The system of claim 35 wherein: the device information before modification is stored in a set of files, each file including information related to a SAN device identifier from the set of SAN device identifiers and information related to a code module associated with the SAN device identifier, the set of files including a first file including information related to the first SAN device identifier and information identifying the first code module associated with the first SAN device identifier; and the modified device information is stored in a set of flies not including the first file.
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.
38. The system of claim 37 wherein: before receiving the signal, the processor is operative with the program to: scan the SAN to identify at least a first device coupled to the SAN; determine an identifier associated with the first device; and if the identifier associated with the first device matches the first SAN device identifier, use the first code module loaded into the address space of the program to monitor the first device; and after loading the second code module, the processor is operative with the program to use the second code module loaded into the address space of the program to monitor the first device if the identifier associated with the first device matches the first SAN device identifier.
39. The system of claim 38 wherein to use the second code module loaded into the address space of the program executed by the processor to monitor the first device, the processor is further operative with the program to: instantiate an object using the second code module; associate the object with the first device; and use the object to monitor the first device.
40. The system of claim 38 wherein in order to determine the identifier associated with the first device, the processor is further operative with the program to use SNMP protocol to determine the identifier.
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.
42. The system of claim 41 wherein the processor is further operative with the program to: scan the SAN to identify a set of devices coupled to the SAN; for each device in the set of devices: determine an identifier associated with the device; if the identifier associated with the device matches the first SAN device identifier, use the first code module loaded into the address space of the program to monitor the device; and if the identifier associated with the device matches the second SAN device identifier, use the second code module loaded into the address space of the program to monitor the device.
43. The system of claim 42 wherein in order to use the second code module loaded into the address space of the program to monitor the device, the processor is further operative with the program to: instantiate an object using the second code module; associate the object with the device whose identifier matches the second SAN device identifier; and use the object to monitor the device.
44. The system of claim 42 wherein in order to determine the identifier associated with the device, the processor is further operative with the program to use SNMP protocol to determine the identifier.
45. The system of claim 41 wherein the device information is stored in a plurality of files, each file including information related to a SAN device identifier from the set of SAN device identifiers and information related to a code module from the first set of code modules associated with the SAN device identifier.
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.
Unknown
March 27, 2007
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.