Advanced graphics driver architecture with extension capability
First Claim
1. An apparatus for facilitating extension of processing capabilities associated with a device driver in a data processing system, the apparatus comprising:
- a graphics adapter configured to process driver-output signals;
a device driver, associated with the graphics adapter, for (1) receiving graphics commands, said graphics commands including a function call belonging to either a first set or a second set of function calls, (2) processing function calls within said first set of function calls into driver-output signals, and (3) outputting function calls within said second set of function calls;
a device driver expansion module, uniquely associated with the device driver, wherein said device driver expansion module receives function calls within said second set of function calls from said device driver and processes said function calls within said second set of function calls into driver-output signals;
a video manager for (1) receiving graphics commands from a graphics engine, and (2) routing the graphics commands to the device driver for processing; and
a library of graphic functions, the video manager being configured to (1) locate, in the library, graphic functions corresponding to function calls, specified within graphic commands, that are not supported by any device driver in said data processing system, and (2) cause processing of the graphic functions into driver-output signals for processing by the graphics adapter.
2 Assignments
0 Petitions
Accused Products
Abstract
Disclosed is a support architecture that facilitates use of display device drivers containing a minimum of hardware-specific software code. A driver need support only a relatively few common functions, which act as building blocks for the larger, more complex operations typically requested by graphics engines. In order to mediate between the limited-instruction-set device driver and the various higher-level graphics engines, the invention includes a series of translation modules that simplify engine-originated instructions into simpler graphic components. A video manager supervises routing of instructions to the specific drivers they designate, and serializes access to hardware components so that graphic commands execute atomically (i.e., without interruption). The invention also includes a graphics library containing device-level instruction sets, as well as the on-board capability to execute those commands, for a broad range of graphic operations; and allows driver capability to be expanded by means of add-on extension modules, which relieve the designers of the need to fully rewrite a driver to test or implement an expanded function set.
165 Citations
15 Claims
-
1. An apparatus for facilitating extension of processing capabilities associated with a device driver in a data processing system, the apparatus comprising:
-
a graphics adapter configured to process driver-output signals; a device driver, associated with the graphics adapter, for (1) receiving graphics commands, said graphics commands including a function call belonging to either a first set or a second set of function calls, (2) processing function calls within said first set of function calls into driver-output signals, and (3) outputting function calls within said second set of function calls; a device driver expansion module, uniquely associated with the device driver, wherein said device driver expansion module receives function calls within said second set of function calls from said device driver and processes said function calls within said second set of function calls into driver-output signals; a video manager for (1) receiving graphics commands from a graphics engine, and (2) routing the graphics commands to the device driver for processing; and a library of graphic functions, the video manager being configured to (1) locate, in the library, graphic functions corresponding to function calls, specified within graphic commands, that are not supported by any device driver in said data processing system, and (2) cause processing of the graphic functions into driver-output signals for processing by the graphics adapter. - View Dependent Claims (2, 3, 4, 5)
-
-
6. An apparatus for outputting graphics function calls issued by at least one graphics engine, the apparatus comprising:
-
a frame buffer for storing an array of pixel values; a video display having a visual appearance determined by the array of pixel values; a graphics adapter coupled to the frame buffer and responsive to output signals, wherein the graphics adapter executes graphic operations represented by the output signals on pixel values in the frame buffer; a device driver for (1) receiving graphics commands, said graphics commands including a function call belonging to either a first set or a second set of function calls, (2) processing function calls within said first set of function calls into output signals, and (3) outputting function calls within said second set of function calls; a device driver expansion module, wherein said device driver expansion module receives function calls within said second set of function calls from said device driver and processes said function calls within said second set of function calls into output signals; a video manager for (1) receiving a graphics command from a graphics engine, and (2) routing the graphics command to the device driver; and a library of graphic functions, the video manager being configured to (1) locate, in the library, graphic functions corresponding to function calls, specified within graphic commands, that are not supported by any device driver in said data processing system, and (2) cause processing of the graphic functions into driver-output signals for processing by the graphics adapter. - View Dependent Claims (7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A computer program product for use in a computer system having a graphics adapter configured to process driver-output signals and a device driver, associated with the graphics adapter, for processing a first set of function calls into driver-output signals, the computer program product comprising:
-
a computer usable medium having computer readable program code embodied therein for facilitating the extension of processing capabilities associated with the device driver that is configured to process function calls within a first set of function calls into driver-output signals that drive the graphics adapter, the computer readable code including; first program code, uniquely associated with the device driver, for processing function calls within a second set of function calls into driver-output signals; second program code for managing video, said second program code including; means for receiving graphics commands including a function call within said first set of function calls and said second set of function calls from a graphics engine; means for causing said computer system to route said graphics commands to the device driver; means for causing said device driver to route a function call to the first program code means for processing if the function call is a member of the second set; and a library of graphic functions, the second program code being configured to (1) locate, in the library, graphic functions corresponding to function calls, specified within graphic commands, that are not supported by any device driver in said data processing system, and (2) cause processing of the graphic functions into driver-output signals for processing by the graphics adapter.
-
Specification