Method and apparatus for providing hot swapping capability in a computer system with static peripheral driver software
First Claim
1. Apparatus for providing hot swapping capability in a computer system having an adapter card coupled, thereto the adapter card having a plurality of adapter slots and a peripheral device coupled to one of the adapter slots, the apparatus comprising:
- a static peripheral device driver, stored in a memory of the computer, the static peripheral device driver for managing system resources associated with the peripheral device, the static peripheral device driver having a common portion and a device specific portion, wherein the common portion of the static peripheral device driver is normally operative to identify the peripheral device coupled to the computer system only during system initialization;
means for monitoring each of the plurality of adapter slots and for detecting when the peripheral device has been connected to the adapter slot and for detecting when the peripheral device has been disconnected from the adapter slot;
means cooperating with the monitoring means for generating a first inter-device communications data packet when the peripheral device has been connected to the adapter slot and for generating a second inter-device communications data packet when the peripheral device has been disconnected from the adapter slot; and
means for sending the first and second inter-device communications data packets to the common portion of said static peripheral device driver wherein;
in response to the first inter-device communications data packets the common portion of the static peripheral device driver installs system resources after system initialization has taken place; and
in response to the second inter-device communications data packet, the common portion of the static peripheral device driver releases system resources after system initialization has taken place.
0 Assignments
0 Petitions
Accused Products
Abstract
A computer system which utilizes a "static" peripheral device driver that recognizes configuration changes only on system initialization is modified to provide hot insertion capability. In particular, in order to provide hot insertion capability, software which allows operation with PCMCIA compatible peripherals is loaded into the computer and the static peripheral device driver is modified to communicate directly with the PCMCIA software. In this manner the conventional PCMCIA software recognizes hot insertions and removals and these vents are communicated to the static driver by means of internal data packets.
-
Citations
25 Claims
-
1. Apparatus for providing hot swapping capability in a computer system having an adapter card coupled, thereto the adapter card having a plurality of adapter slots and a peripheral device coupled to one of the adapter slots, the apparatus comprising:
-
a static peripheral device driver, stored in a memory of the computer, the static peripheral device driver for managing system resources associated with the peripheral device, the static peripheral device driver having a common portion and a device specific portion, wherein the common portion of the static peripheral device driver is normally operative to identify the peripheral device coupled to the computer system only during system initialization; means for monitoring each of the plurality of adapter slots and for detecting when the peripheral device has been connected to the adapter slot and for detecting when the peripheral device has been disconnected from the adapter slot; means cooperating with the monitoring means for generating a first inter-device communications data packet when the peripheral device has been connected to the adapter slot and for generating a second inter-device communications data packet when the peripheral device has been disconnected from the adapter slot; and means for sending the first and second inter-device communications data packets to the common portion of said static peripheral device driver wherein; in response to the first inter-device communications data packets the common portion of the static peripheral device driver installs system resources after system initialization has taken place; and in response to the second inter-device communications data packet, the common portion of the static peripheral device driver releases system resources after system initialization has taken place. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A computer system having hot swapping capability for a plurality of peripheral devices which can be connected to, or disconnected from, the computer system through a plurality of peripheral adapter slots, the computer system comprising:
-
static peripheral device driver software which manages system resources associated with each of the plurality of peripheral devices and is normally operative to identify a peripheral device coupled to the computer system only during system initialization; means for determining when one of the plurality of peripheral devices has been connected to, and disconnected from, the computer system by examining registers which are associated with each peripheral adapter slot and which are physically located on a peripheral adapter; means cooperating with the determining means for generating an identifying code identifying one of the peripheral adapter slots through which the one peripheral device has been connected to, and disconnected from, the computer system; means cooperating with the determining means and the generating means for generating an inter-device communications data packet when the peripheral device has been connected to, and disconnected from, the computer system, the inter-device communications data packet having information indicating the identifying code and a command code indicating whether the peripheral device has been connected to, or disconnected from, the computer system; means for sending the inter-device communications data packet to the static peripheral device driver; and means responsive to the inter-device communications data packet for controlling the static peripheral device driver to allocate and release the system resources corresponding to the one peripheral device has been connected to, and disconnected from the computer system after system initialization has taken place. - View Dependent Claims (8, 9)
-
-
10. A computer system comprising:
-
a computer having a plurality of card slots; a plurality of peripheral devices, at least one of the plurality of peripheral devices conforming to a first standard which permits hot swapping of peripheral devices; an adapter card having coupled thereto one of the plurality of peripheral devices conforming to the first standard which permits hot swapping of peripheral devices, the adapter card conforming to electrical, mechanical and timing specifications for one of the plurality of card slots and disposed in the one slot, the adapter card providing an interface between the computer and the one of the plurality of peripheral devices that conforms to the first standard which permits hot swapping of peripheral devices; a static peripheral device driver operating in cooperation with the computer to support each of the plurality of peripheral devices coupled to the computer, the static peripheral device driver including a common portion and a device specific portion, the common portion for polling, only at the time of system initialization, each of the plurality of card slots to determine which of the plurality of card slots have a peripheral device coupled thereto; a client driver which provides device-specific support to a predetermined type of peripheral device which also conforms to the first standard which permits hot swapping of peripheral devices, the client driver comprising a mechanism for generating control information packet for communicating card insertion and card removal information to the static peripheral device driver; and wherein the static peripheral device driver further comprises means for receiving and interpreting the control information packet from the client driver and releasing or allocating system resources based on the control information packet after system initialization has taken place. - View Dependent Claims (11, 12, 13)
-
-
14. A method for providing hot swapping capability for a peripheral device in a computer system having static peripheral device driver software which manages system resources associated with the peripheral device and is normally operative to identify a peripheral device coupled to the computer system only during system initialization, the method comprising the steps of:
-
A. determining when the peripheral device has been connected to, and disconnected from, the computer system; B. generating an inter-device communications data packet when the peripheral device has been connected to, and disconnected from, the computer system; C. sending the inter-device communications data packet to the static peripheral device driver; and D. using the inter-device communications data packet to control the static peripheral device driver to allocate and release the system resources associated with the peripheral device after system initialization has taken place. - View Dependent Claims (15, 16, 17, 18, 19, 20)
-
-
21. A method for permitting a computer system to continue operation when peripheral devices are hot swapped from the system, the computer system employing a static peripheral device driver which polls a plurality of peripheral ports only at system initialization to determine the peripheral port configuration and further employing adapters, peripheral devices, and software which conform to the PCMCIA standard, the method comprising the steps of:
-
A. obtaining card insertion/removal information from PCMCIA software modules; B. requesting allocation of resources from PCMCIA software modules; C. sending an inter-device communications packet from a PCMCIA device driver to the static peripheral device driver, the packet containing a command, an IRQ number, a communications port number, and a bus address; D. forcing the static peripheral device driver to read the packet and respond to the command; and E. Controlling the static peripheral device driver to allocate system resources and deallocate system resources in response to the command after system initialization has taken place. - View Dependent Claims (22)
-
-
23. A computer program product for providing hot swapping capability in a computer system having a static peripheral device driver stored in a memory of the computer system, the static peripheral device driver for managing system resources associated with the peripheral device, the static peripheral device driver having a common portion and a device specific portion, wherein the common portion of the static peripheral device driver is normally operative to identify peripheral devices coupled to the computer system only during system initialization, the computer program product comprising:
-
first computer readable program code means for monitoring each of a plurality of adapter slots and for detecting when a peripheral device has been connected to one of the plurality of adapter slots and for detecting when the peripheral device has been disconnected from one of the plurality of adapter slots; second computer readable program code means cooperating with the first computer readable program code means, the second computer readable program code means for generating a first inter-device communications data packet when a peripheral device has been connected to the adapter slot and for generating a second inter-device communications data packet when a peripheral device has been disconnected from, the adapter slot; third computer readable program code means for sending for sending the first and second inter-device communications data packets to the common portion of the static peripheral device driver wherein; in response to the first inter-device communications data packet, the common portion of the static peripheral device driver installs system resources user system initialization has taken place; and in response to the second inter-device communications data packet, the common portion of the static peripheral device driver releases system resources after system initialization has taken place. - View Dependent Claims (24, 25)
-
Specification