1. A data processing system, comprising: one or more processors; device driver generation logic that is encoded in one or more machine-readable storage media for execution and which, when executed by the one or more processors, is operable to perform: receiving a first capability description from a computer peripheral device, wherein the first capability description describes one or more capabilities of the computer peripheral device; receiving a generic device driver file; receiving configuration data; automatically generating a device driver for the computer peripheral device and for a computer operating system based on the first capability description, the generic device driver file and the configuration data; device job processing logic that is configured: to receive a request to provide a job to the computer peripheral device in a page description language (PDL), to dynamically generate a current capability description for the computer peripheral device in response to receiving the request to provide the job to the computer peripheral device in the PDL, wherein the current capability description comprises current capabilities recognized on the computer peripheral device at a time the request to provide the job to the computer peripheral device in the PDL was received, and to generate, based on the current capabilities description, and send to the computer peripheral device job ticket data, that describes the job for the computer peripheral device to perform, and to provide job data formatted in the PDL to the computer peripheral device.