Content area
Full Text
Given Windows' reputation for sluggish performance, it's easy to understand why users want to optimize printing from that environment.
How one goes about improving that performance is less clear. One route currently favored by printer manufacturers involves optimizing a device to print in Windows, sometimes at the expense of printing under other operating systems such as DOS. We tested one such system in this comparison, the NEC SuperScript 610, which relies on its Windows host's RAM for printing. The questions are, do these "Windows printers" (also known as GDI printers) really improve performance, and if so, how do they accomplish it?
Before exploring this technology and how well it works, a brief description of the Windows printing process may be useful. We have simplified this very complicated process for the sake of clarity.
An application running in Windows makes calls to what is known as the Graphics Device Interface (GDI), the imaging kernel in Windows. Requests to image objects on an output device such as a display or printer pass through GDI in one form or another. For the application to print a document, it merely tells GDI that the destination is the printer rather than the display. The application relies on GDI to get the image to the printer. Once Windows has received the GDI calls from the application, it processes them into something referred to as Device Driver Interface (DDI) calls. These are part of another set of commands that are designed to be sent to device drivers such as printer drivers.
One can obtain Windows printer drivers for virtually every printer on the market. The user selects a printer driver that matches or is compatible with the printer in use, or installs the driver via a disk supplied by the manufacturer. Windows uses this driver to communicate with the printer in its own language. The printer driver is also important because it informs GDI of what the printer is capable of doing, thereby allowing GDI to optimize what it sends. The printer driver turns the DDI calls into the associated commands of the printer's native language.
For example, if the application wants to print a circle on the page, GDI will look at the printer driver to determine if the printer...