Method and apparatus for dynamic installation of a driver on a computer system
First Claim
1. A method for dynamically installing a driver on a computer system, the computer system having a first processor, and a second processor, the method comprising the steps of:
- (a) the first processor sending a quiesce command to the second processor, while the second processor operates in a first operating state according to a first operating code;
(b) the second processor, in response to the quiesce command, exiting the first operating state, entering a quiesced state, and sending a notify message to the first processor indicating that the second processor is in the quiesced state;
(c) the first processor, in response to the notify message, queuing a first request sent to the second processor from an external source, and sending the second processor an execute command while the second processor is in the quiesced state;
(d) the second processor, in response to the execute command, exiting the quiesced state, entering a second operating state to operate according to a second operating code having the driver, and sending an acknowledgment message to the first processor indicating that the second processor is in the second operating state;
(e) the first processor, in response to the acknowledgment message, issuing the queued first request to the second processor; and
(f) the second processor executing the issued first request while operating in the second operating state according to the second operating code.
3 Assignments
0 Petitions
Accused Products
Abstract
A method is provided for dynamic installation of a driver on a computer system. The computer system has a first operator processor with a first memory and an operating system, a second processor with a second memory and operating code configurable to accept a driver, and a data channel supporting communication between the first processor and the second processor, the first processor sending requests to the second processor for processing. The method includes the steps of: (a) storing a driver in the first memory; (b) uploading a copy of the operating code to the first memory from the second memory; (c) testing the driver for compatibility with a current configuration of the operating code; (d) linking the driver with the copy of the operating code to produce a reinforced operating code in the first memory while the second processor is executing the operating codel and (e) downloading, by the first processor, a copy of the reconfigured operating code to the second memory to switch the second processor from executing the operating code to executing the copy of the reconfigured operating code.
-
Citations
22 Claims
-
1. A method for dynamically installing a driver on a computer system, the computer system having a first processor, and a second processor, the method comprising the steps of:
-
(a) the first processor sending a quiesce command to the second processor, while the second processor operates in a first operating state according to a first operating code; (b) the second processor, in response to the quiesce command, exiting the first operating state, entering a quiesced state, and sending a notify message to the first processor indicating that the second processor is in the quiesced state; (c) the first processor, in response to the notify message, queuing a first request sent to the second processor from an external source, and sending the second processor an execute command while the second processor is in the quiesced state; (d) the second processor, in response to the execute command, exiting the quiesced state, entering a second operating state to operate according to a second operating code having the driver, and sending an acknowledgment message to the first processor indicating that the second processor is in the second operating state; (e) the first processor, in response to the acknowledgment message, issuing the queued first request to the second processor; and (f) the second processor executing the issued first request while operating in the second operating state according to the second operating code. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method for dynamically replacing first operating code with second operating code on a computer system, the computer system having a first processor and a second processor the method comprising the steps of:
-
(a) the first processor sending a quiesce command to the second processor while the second processor operates in a first operating state according to the first operating code; (b) the second processor, in response to the quiesce command, exiting the first operating state, entering a quiesced state, and sending a notify message to the first processor indicating that the second processor is in the quiesced state; (c) the first processor, in response to the notify message, queuing a first request sent to the second processor from an external source, and sending the second processor an execute command, while the second processor is in the quiesced state; (d) the second processor, in response to the execute command, exiting the quiesced state, entering a second operating state to operate according to the second operating code, and sending an acknowledgment message to the first processor indicating that the second processor is in the second operating state; (e) the first processor, in response to the acknowledgment message, issuing the queued first request to the second processor; and (f) the second processor executing the issued first request while operating in the second operating state according to the second operating code. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A computer system for dynamically installing a driver, comprising:
-
a first processor including a first memory; a second processor including a second memory; and a data channel supporting communication between the first processor and the second processor; wherein the first processor further includes means for sending a quiesce command to the second processor through the data channel, while the second processor operates in a first operating state according to a first operating code stored in the second memory;
means for queuing, in response to a notify message, a first request sent to the second processor from an external source, and sending the second processor an execute command through the data channel, while the second processor is in a quiesced state; and
means for issuing, in response to an acknowledgment message, the first request to the second processor through the data channel; andwherein the second processor further includes means for exiting, in response to the quiesce command, the first operating state, entering a quiesced state, and sending the notify message to the first processor indicating that the second processor is in the quiesced state;
means for exiting, in response to the execute command, the quiesced state, entering a second operating state to operate according to a second operating code transferred to the second memory from the first memory through the data channel, and sending the acknowledgment message to the first processor indicating that the second processor is in the second operating state; and
means for executing the issued first request while operating in the second operating state according to the second operating code. - View Dependent Claims (16)
-
-
17. A method for dynamically replacing first operating code with second operating code on a computer system, the computer system having a first processor and a second processor, the method comprising the steps of:
-
(a) the second processor, while operating in an operating state according to the first operating code, receiving a first request, executing the first request, and receiving a quiesce command from the first processor; (b) the second processor, in response to the received quiesce command and before the first request is completely executed, exiting the operating state, and entering a quiesced state; (c) the first processor queuing the first request in a first queue before the first request is completely executed by the second processor; (d) the first processor, while the second processor is in the quiesced state, transferring the second operating code from the first memory to the second memory, and sending a resume command to the second processor; (e) the second processor, in response to the resume command sent from the first processor, exiting the quiesced state and entering the operating state to operate according to the second operating code; (f) the first processor, after the second operating code is transferred to the second memory, issuing the queued first request to the second processor; and (g) the second processor, while operating in the operating state according to the second operating code, receiving the first request from the first processor, and executing the first request. - View Dependent Claims (18, 19)
-
-
20. A method for installing a driver on a computer system, the computer system including a first processor coupled to a first memory, and a second processor coupled to a second memory, the method comprising the steps of:
-
(a) the second processor, while operating in an operating state according to original operating code, receiving a first request, executing the first request, and receiving a quiesce command from the first processor; (b) the second processor, in response to the received quiesce command and before the first request is completely executed, exiting the operating state, and entering a quiesced state; (c) the first processor queuing the first request in a first queue before the first request is completely executed by the second processor; (d) the first processor, while the second processor is in the quiesced state, transferring new operating code including the driver from the first memory to the second memory, and sending a resume command to the second processor; (e) the second processor, in response to the resume command sent from the first processor, exiting the quiesced state and entering the operating state to operate according to the new operating code; (f) the first processor, after the new operating code is transferred to the second memory, issuing the queued first request to the second processor; and (g) the second processor, while operating in the operating state according to the new operating code, receiving the first request from the first processor, and executing the first request. - View Dependent Claims (21, 22)
-
Specification