2007-05-07

CUPS系统简介

Linux打印系统最早源于Unix打印系统,但Unix系统却一直缺乏统一的标准接口。由于历史原因,不同Unix平台使用着不同的打印系统。在各种Unix打印解决方案中,最流行的是Berkeley打印系统和 System V打印系统。一方面,不同打印系统需要不一样的打印驱动支持; 另一方面,Unix只拥有相对较小的客户群。这些因素使得很多打印机供应商完全放弃了对Unix平台的支持。统一打印接口的缺乏和底层驱动的不完善使打印在很长一段时间内成为了Linux平台的一大功能漏洞。

最终CUPS (Common Unix Printing System)的出现解决了上述窘境。CUPS是Unix/Linux上通用的打印系统。CUPS提供了一套CUPS API来完成Unix/Linux系统和打印机之间的交互。例如,用户可以通过CUPS获取打印机的信息,也可以通过CUPS设置打印机。CUPS提供了对Berkeley和System V打印命令的支持,这种兼容性使得之前的系统不用进行大规模修改就可被延续使用。同时,CUPS还提供一系列模块化的过滤接口。通过这些接口,打印机提供商只需要开发一个驱动程序就可以满足所有平台的需求。至今为止,CUPS已被所有Unix和Linux平台所支持。

CUPS 是Unix/Linux平台上的打印系统。CUPS的定义和实现是基于IPP(Internet Printing Protocol)协议的。IPP是通用的打印系统标准,它的功能和操作被一系列RFC(Request for Comments)所详细定义。这些具体功能和操作包括:建立IPP请求、应答IPP请求和设置IPP请求等等。和IPP相关的RFC包括 RFC1179、RFC2910、RFC2911、RFC3196等。在网络协议中,IPP位于HTTP(Hyper-Text Transport Protocol)协议之上。

没有评论: