linux下打印机的原理与打印流程
2015-05-11 09:44
267 查看
Linux打印原理
在Linux下采用假脱机(spooling)打印方法,当用户需要打印一个文件时,该文件并不直接送到打印机,而是送到spool目录下,然后由一个负责打印的后台进程把这些数据送入打印机。
Linux对每台打印机都定义了一个打印缓冲区,打印机守护程序经常扫描打印缓冲区以查看有无要打印的新文件。如果存在,就按先进先出的顺序打印缓冲区中的文件。
Linux系统除了可以在本地打印机上打印外,还可以通过网络打印机远程打印。
Linux系统上的打印原理如下:
各种类型的文档经由一个(或一些)转换程序转换成用户正在使用的打印机可以认识的格式,即用各种类型的打印机语言描述的流,系统将这个流直接发送到打印机端口,由打印机对其进行解释并形成硬拷贝。
目前大多数Linux系统以下面的流程来实现文档到打印机语言的转换:
普通文本文件和各种类型的图形由适当的转换程序转换成PostScript文件,有些应用程序将其输出直接写成PostScript文件,这些PostScript文件经由一个作为打印机过滤器的应用程序Ghostscript转换成打印机语言。因此,如果系统的打印系统已经配置成使用Ghostsript作为打印过滤器,应用程序要实现的就是输出合乎程序要求和语法的PostScript文件。
linux打印流程
在打印过程中,通常是应用程序产生输出并以管道的方式传送给lpr或者直接应用lpr打印一个文件。lpr与打印机后台服务程序通过网络进行连接并进行通信,传送相应的打印数据和打印选项。打印机后台服务程序将在相应的spooler目录存储打印信息,在输出设备可以利用的情况下将打印任务送给打印设备。
在Linux下采用假脱机(spooling)打印方法,当用户需要打印一个文件时,该文件并不直接送到打印机,而是送到spool目录下,然后由一个负责打印的后台进程把这些数据送入打印机。
Linux对每台打印机都定义了一个打印缓冲区,打印机守护程序经常扫描打印缓冲区以查看有无要打印的新文件。如果存在,就按先进先出的顺序打印缓冲区中的文件。
Linux系统除了可以在本地打印机上打印外,还可以通过网络打印机远程打印。
Linux系统上的打印原理如下:
各种类型的文档经由一个(或一些)转换程序转换成用户正在使用的打印机可以认识的格式,即用各种类型的打印机语言描述的流,系统将这个流直接发送到打印机端口,由打印机对其进行解释并形成硬拷贝。
目前大多数Linux系统以下面的流程来实现文档到打印机语言的转换:
普通文本文件和各种类型的图形由适当的转换程序转换成PostScript文件,有些应用程序将其输出直接写成PostScript文件,这些PostScript文件经由一个作为打印机过滤器的应用程序Ghostscript转换成打印机语言。因此,如果系统的打印系统已经配置成使用Ghostsript作为打印过滤器,应用程序要实现的就是输出合乎程序要求和语法的PostScript文件。
linux打印流程
在打印过程中,通常是应用程序产生输出并以管道的方式传送给lpr或者直接应用lpr打印一个文件。lpr与打印机后台服务程序通过网络进行连接并进行通信,传送相应的打印数据和打印选项。打印机后台服务程序将在相应的spooler目录存储打印信息,在输出设备可以利用的情况下将打印任务送给打印设备。
相关文章推荐
- SAP打印机原理、打印配置及打印操作
- Linux操作系统的打印原理及其命令的使用
- Linux管理工作,实例讲解工作中使用ssh证书登录的实际流程,讲解ssh证书登录的配置原理,基于配置原理,解决实际工作中,windows下使用SecureCRT证书登录的各种问题,以及实现hadoo
- pl- 配置远程打印机,用linux命令行打印
- Linux打印系统CUPS原理分析
- linux打印级别控制原理
- lpr命令_Linux lpr 命令用法详解:将文件发送给指定打印机进行打印
- linux下启用或禁用打印机的打印操作
- 条码打印机、驱动、打印软件的工作流程
- 从HP Deskjet 460 说激光打印机打印原理
- reject命令_Linux reject 命令用法详解:指示打印系统拒绝发往指定目标打印机的打印任务
- accept命令_Linux accept 命令用法详解:指示打印系统接受发往指定目标打印机的打印任务
- linux中mmap系统调用原理分析与实现
- C# USB打印机 打印
- Linux 的启动流程
- linux学习之shell的流程控制
- linux下printf实现不换行打印(printf显示不加换行的缓冲问题)
- OAuth的机制原理讲解及开发流程 (转)
- Harris角点检测原理与流程
- linux: 编译android源代码流程,以及linux环境变量设置。