Computer architecture utilizing layered device drivers
First Claim
1. A method for dynamically adding a device driver into a layered stack of device drivers in a computer system comprising:
- suspending I/O operations for the layered stack;
unbinding an upper driver in the stack from a lower driver in the stack, wherein the lower driver emulates a device, the device having a first device name;
binding the device driver to the lower driver to form a layered device, wherein upon forming the layered device, the layered device is given a second device name different than the first device name;
binding the upper driver to the layered device;
exporting the layered device under the second device name to the upper driver for use in the layered stack; and
restarting I/O operations for the layered stack.
9 Assignments
0 Petitions
Accused Products
Abstract
A computer storage architecture utilizing layered device drivers enables a user to create and install a device driver into a computer. The device driver is installed into the storage unit through a registration process. In order to permit the user to specify a device driver stack for the device driver and specify the relative position of the device driver within the device driver stack, a novel layered device driver registration system that is separate from a operating system device driver registration system is utilized. The layered device driver registration system enables the user to install one or more device drivers and to specify the placement of each device driver by relative to the other device drivers in various device driver stacks. The layered device driver registration system allows a device driver to be dynamically inserted into or removed from a particular device driver stack.
-
Citations
9 Claims
-
1. A method for dynamically adding a device driver into a layered stack of device drivers in a computer system comprising:
-
suspending I/O operations for the layered stack;
unbinding an upper driver in the stack from a lower driver in the stack, wherein the lower driver emulates a device, the device having a first device name;
binding the device driver to the lower driver to form a layered device, wherein upon forming the layered device, the layered device is given a second device name different than the first device name;
binding the upper driver to the layered device;
exporting the layered device under the second device name to the upper driver for use in the layered stack; and
restarting I/O operations for the layered stack. - View Dependent Claims (2)
-
-
3. A method for dynamically adding a device driver into a layered stack of device drivers in a computer system comprising:
-
suspending I/O operations for the layered stack;
unbinding an upper driver in the stack from a lower driver in the stack, wherein the lower driver emulates a device, the device having a first device name;
binding the device driver to the lower driver to form a layered device wherein upon forming the layered device, the layered device is given a second device name different than the first device name, wherein the first device name and the second device name are unique to a particular stage of re-layering;
binding the upper driver to the layered device; and
restarting I/O operations for the layered stack. - View Dependent Claims (4)
-
-
5. A method for dynamically adding a device driver into a layered stack of device drivers in a computer system comprising:
-
suspending I/O operations for the layered stack;
unbinding an upper driver in the stack from a lower driver in the stack, wherein the lower driver emulates a device, the device having a first device name;
binding the device driver to the lower driver to form a layered device wherein upon forming the layered device, the layered device is given a second device name different than the first device name, wherein the first device name and the second device name are unique across all stages of re-layering;
binding the upper driver to the layered device; and
restarting I/O operations for the layered stack. - View Dependent Claims (6)
-
-
7. A method for dynamically adding a device driver into a layered stack of device drivers in a computer system having an operating system and a layered device driver registration system, wherein the layered device driver registration system comprises a driver list and a driver order file, said method comprising:
-
registering the device driver with the operating system;
registering the device driver with the layered device driver registration system by adding the device driver to the driver list, and specifying in the driver order file a relative position for the device driver within the layered stack;
suspending I/O operations for the layered stack;
unbinding an upper driver in the stack from a lower driver in the stack;
binding the device driver to the lower driver to form a layered device;
binding the upper driver to the layered device; and
restarting I/O operations for the layered stack. - View Dependent Claims (8, 9)
-
Specification