18.9 Windows Terminal Servers (WTS) as CUPS Clients
This setup may be of special interest to people experiencing major problems in WTS environments. WTS often need a multitude of non-PostScript drivers installed to run their clients' variety of different printer models. This often imposes the price of much increased instability.
18.9.1 Printer Drivers Running in " Kernel Mode " Cause Many Problems
In Windows NT printer drivers which run in " Kernel Mode ", introduces a high risk for the stability of the system if the driver is not really stable and well- tested . And there are a lot of bad drivers out there! Especially notorious is the example of the PCL printer driver that had an additional sound module running, to notify users via soundcard of their finished jobs. Do I need to say that this one was also reliably causing " blue screens of death " on a regular basis?
PostScript drivers are generally well tested. They are not known to cause any problems, even though they also run in kernel mode. This might be because there have been so far only two different PostScript drivers: the ones from Adobe and the one from Microsoft. Both are well tested and are as stable as you can imagine on Windows. The CUPS driver is derived from the Microsoft one.
18.9.2 Workarounds Impose Heavy Limitations
In many cases, in an attempt to work around this problem, site administrators have resorted to restricting the allowed drivers installed on their WTS to one generic PCL and one PostScript driver. This, however, restricts the clients in the number of printer options available for them. Often they can't get out more than simplex prints from one standard paper tray, while their devices could do much better, if driven by a different driver!
18.9.3 CUPS: A " Magical Stone "?
Using a PostScript driver, enabled with a CUPS-PPD, seems to be a very elegant way to overcome all these shortcomings. There are, depending on the version of Windows OS you use, up to three different PostScript drivers available: Adobe, Microsoft and CUPS PostScript drivers. None of them is known to cause major stability problems on WTS (even if used with many different PPDs). The clients will be able to (again) chose paper trays, duplex printing and other settings. However, there is a certain price for this too: a CUPS server acting as a PostScript RIP for its clients requires more CPU and RAM than when just acting as a " raw spooling " device. Plus, this setup is not yet widely tested, although the first feedbacks look very promising .
18.9.4 PostScript Drivers with No Major Problems ” Even in Kernel Mode
More recent printer drivers on W200x and XP no longer run in kernel mode (unlike Windows NT). However, both operating systems can still use the NT drivers, running in kernel mode (you can roughly tell which is which as the drivers in subdirectory " 2 " of " W32X86 " are " old " ones). As was said before, the Adobe as well as the Microsoft PostScript drivers are not known to cause any stability problems. The CUPS driver is derived from the Microsoft one. There is a simple reason for this: The MS DDK (Device Development Kit) for Windows NT (which used to be available at no cost to licensees of Visual Studio) includes the source code of the Microsoft driver, and licensees of Visual Studio are allowed to use and modify it for their own driver development efforts. This is what the CUPS people have done. The license does not allow them to publish the whole of the source code. However, they have released the " diff " under the GPL, and if you are the owner of an " MS DDK for Windows NT ," you can check the driver yourself.