Microsoft’s printing team shed some light on their reimagined vision of printing in Windows 8. The printer driver architecture has been updated to version 4 while Windows 8 retains compatibility with version 3, the architecture used from Windows 2000 to Windows 7. Of course, part of the update has to be to support printing from Metro style apps and printing from Windows RT.
The introduction of Windows RT devices will create a new platform for printer drivers – giving us 32-bit drivers, 64-bit drivers and Windows RT drivers. The v4 model of printer drivers has updated sharing printers so that it is no longer rely on client drivers existing on the print server, which has been a complicated task to mix platforms.
One of the perks of updating operating systems in the Windows world is that the number of drivers included with the OS has consistently increased. That includes printer drivers, typically meaning less work hunting down new versions of drivers or having to browse a server share repository of the printer drivers your organization uses. One gotcha will be that Windows RT devices will only be able to use in-box drivers, those included with the system. The team ran the number and found that they would have to include drivers for over 1000 different printer models to reach 95% market share for printers in use. Simply adding more drivers and updating the printers supported wasn’t going to be feasible.
In Windows 8, we took a radically different approach, and have stopped shipping lots of printer drivers with Windows. Instead, we built aprint class driver framework. This framework is extensible, as it supports printing to existing devices, but it also allows manufacturers to include support for new devices, even those that have not yet been designed.
With a print class driver framework, we can get closer to giving you an experience like driverless printing, where you don’t have to actually go and find a driver, but instead the printer just works with the Windows printing system. A true driverless printing experience requires changes to how most printers are designed, and the print class driver framework provides support for this idea, but we also feel that it’s very important to provide as much support for existing devices as possible.
The storage space required for printer drivers decreased from 768MB in Vista to about 184MB in Windows 8. While Vista was able to support 4200 devices, it included a number of old printers from the gap between XP’s release and Vista. Windows 7 dropped support for a lot of those legacy devices and could only support 2100 devices. Windows 8 has reduced storage space required and increased the installed base of printers supported by reaching approximately 2500 different devices in-box.
Much of the change will require printer manufacturers to embrace the v4 of the printer driver architecture. Microsoft sees a printer driver as having three responsibilities: configuring settings, rendering content from screen to paper, and showing events to inform the user of print job information. The Windows Printer configuration UI has been pulled out of printer drivers to use a standard format or separate app for desktop and Metro style, while still allowing customization. For the rendering aspect of the printer driver, the v4 architecture is trying to lead printer manufacturers to XPS-compatible devices to allow easier translation of content to paper. If a printer manufacturer insists on a special printer language file, a PDL can now be associated with multiple devices and proprietary rendering languages are still supported but it requires a separate rendering filter for each model or small set of models.
While the previous printer architecture seemed to provide driver developers plenty of freedom (seen in the form of bulky universal printer drivers, services, and all sorts of extra widgets), it seems version 4 is reducing some of that freedom for compatibility across platforms. Services are a concern on Windows RT as they could needlessly be running at each start and draining battery life while in use.
It seems like the printer driver architecture in Windows 8 is a big improvement but for some of those to become realized, the printer manufacturers will have to get on board with the goal of creating a good user experience. I’ll give a big hand to Microsoft for proactively addressing the growing printer problem. They provided a picture of one of their benches in the printer lab showing the various models they test against.
(via Building Windows 8 Blog)