Methods and apparatus for dynamic version transition of management applications and attached subsystems
First Claim
1. A method for updating firmware in an I/O subsystem coupled to a management application comprising the steps of:
- instantiating from said management application a first script engine cooperable with said management application wherein said first script engine has a first script version associated therewith and wherein firmware presently operable in said I/O subsystem has a first firmware version associated therewith compatible with said first script version and wherein said first script engine is operable to effectuate communication with said I/O subsystem in accordance with script commands;
upgrading firmware in said I/O subsystem by providing script commands from said management application to said script engine wherein the upgraded firmware has a second firmware version associated therewith and wherein said second firmware version is incompatible with said first script version;
notifying said management application from said first script engine that said I/O subsystem is presently operating with an incompatible version of firmware; and
instantiating from said management application a second script engine cooperable with said management application wherein said second script engine has a second script version associated therewith and wherein said second firmware version is compatible with said second script version and wherein said second script engine is operable to effectuate communication with said I/O subsystem in accordance with script commands.
2 Assignments
0 Petitions
Accused Products
Abstract
Methods and associated structure for on the fly (dynamic) transition between versions among a management application process and an associated I/O subsystem. A management application program operable on a management system coupled to the I/O subsystem instantiates a script engine to execute script language commands for communicating with the I/O subsystem on behalf of the management application. The particular script engine instantiated is one that is compatible with the present revision of firmware operable in the I/O subsystem. When a script command execution causes a firmware upgrade in the I/O subsystem, the present script engine saves its state of operation, notifies the management application of the upgrade and resultant incompatibility and terminates. The management application then instantiates a new script engine compatible with the newly upgraded firmware version in the I/O subsystem. The newly instantiated script engine then restores the state information saved by its predecessor script engine and continues operation on behalf of the management application with no perceptible interruption in the processing of the script commands.
59 Citations
15 Claims
-
1. A method for updating firmware in an I/O subsystem coupled to a management application comprising the steps of:
-
instantiating from said management application a first script engine cooperable with said management application wherein said first script engine has a first script version associated therewith and wherein firmware presently operable in said I/O subsystem has a first firmware version associated therewith compatible with said first script version and wherein said first script engine is operable to effectuate communication with said I/O subsystem in accordance with script commands;
upgrading firmware in said I/O subsystem by providing script commands from said management application to said script engine wherein the upgraded firmware has a second firmware version associated therewith and wherein said second firmware version is incompatible with said first script version;
notifying said management application from said first script engine that said I/O subsystem is presently operating with an incompatible version of firmware; and
instantiating from said management application a second script engine cooperable with said management application wherein said second script engine has a second script version associated therewith and wherein said second firmware version is compatible with said second script version and wherein said second script engine is operable to effectuate communication with said I/O subsystem in accordance with script commands. - View Dependent Claims (2, 3, 4, 5, 6, 7)
continuing communication with said I/O subsystem following the instantiation of said second script engine.
-
-
3. The method of claim 2 further comprising:
saving the present state of said first script engine in response to the upgrading of said firmware in said I/O subsystem.
-
4. The method of claim 3 further comprising:
restoring, within said second script engine, the saved state of said first script engine in response to instantiation of said second script engine.
-
5. The method of claim 4 further comprising the step of:
terminating operation of said first script engine prior to instantiation of said second script engine.
-
6. The method of claim 4
wherein the step of saving comprises the step of returning said present state information to said management application, and wherein the step of restoring includes the step of receiving said present state information from said management application as a parameter of the instantiation of said second script engine. -
7. The method of claim 4
wherein the step of saving comprises the step of storing said present state information in a memory associated with said first script engine, and wherein the step of restoring includes the step of retrieving said present state information from said memory.
-
8. A system for management of an I/O subsystem comprising:
-
a management console program for interacting with an administrative user for purposes of managing the I/O subsystem;
a first script engine instantiated by said management console program and coupled to said management console program for processing script commands on behalf of said management console program to effectuate communication with said I/O subsystem on behalf of said management console program, and a revision exception generator within said first script engine for notifying said management console program of an update in firmware operable in said I/O subsystem, wherein said first script engine has a revision attribute compatible with a corresponding revision attribute associated with said I/O subsystem, wherein said management console program is operable, in response to notification from said revision exception generator, to terminate said first script engine and to instantiate a second script engine selected from said plurality of script engines according to a revision attribute of each script engine of said plurality of script engines. - View Dependent Claims (9, 10, 11)
a memory device coupled to said management console program; and
a plurality of script engines stored on said memory device, wherein said management console program is operable to select said first script engine from said plurality of script engines according to a revision attribute of each script engine of said plurality of script engines.
-
-
10. The system of claim 9 further comprising:
a state memory coupled to said first script engine and to said second script engine for saving state information wherein said first script engine is operable to save state information prior to termination of said first script engine and wherein said second script engine is operable to restore the saved state information to continue communications with said I/O subsystem.
-
11. The system of claim 8 wherein said revision exception generator is further operable to return saved state information regarding operation of said first script engine and wherein said management console program is operable to transmit said saved state information to said second script engine as a parameter of instantiation thereof.
-
12. A system for communicating with an intelligent I/O device comprising:
-
a management application for exchanging information with said intelligent I/O device in accordance with script commands;
a communication medium coupling said management application to said intelligent I/O device;
a plurality of script engine means associated with said management application for processing said script commands to effectuate communication with said intelligent I/O device;
means associated with said management application for determining a revision attribute associated with firmware operable in said intelligent I/O device;
selection means associated with said management application for selecting a first script engines means of said plurality of script engine means wherein said first script engine means is compatible with said revision attribute of said firmware; and
instantiation means in said management application for instantiating said first script engine means in response to selection of said first script engine means by said selection means;
a revision exception generator within said first script engine means for notifying said management console program of an updated revision attribute of firmware operable in said intelligent I/O device; and
revision exception sensing means coupled with said instantiation means and with said selection means for selecting a second script engine means of said plurality of script engine means wherein said second script engine means is compatible with said updated revision attribute and for instantiating said second script engine means. - View Dependent Claims (13, 14, 15)
state saving means associated with said management application for receiving saved state information from said first script engine means and for providing said saved state information to said second script engine means.
-
-
15. The system of claim 12 further comprising:
a memory means associated with said first script engine means and with said second script engine means such that said first script engine means saves said state information in said memory means and said second script engine means restores said saved state information from said memory means.
Specification