admin管理员组

文章数量:1599278

前言

实验室有台闲着的HP打印机和闲置的主机,为了方便使用。利用主机和打印机做了一个网络打印机。在此写一篇博客,一是记录,而是希望能帮到茫茫人海的你。

内容较多,本实践分为两个部分:一篇说原理,一篇说具体的配置过程。本篇为原理

打印机的基本原理

啊,关于打印机的基本原理,在鸟哥私房菜基础版里有详细介绍。我这也是新手,在这儿就简要叙述下吧。来,小二,上张图。

总体上说,打印的流程可以分为三个部分(打印机的基本原理基本也就蕴含在这儿了):

 1. 用户请求打印操作。这个应该很好理解,就是用户需要打印了,那么就请求打印机提供服务。说的简单点,就是小明想要打印了,就产生一个动作。再简单点就是,啊,小二,再来张图。

 小明想要打印了,就点击了上面的打印按钮。这样就产生了一个打印操作(说的专业一点叫产生了一个打印job)。
 当然在linux中还可以通过命令的方式产生一个打印操作。

  1. 打印队列。用户产生一个打印操作(job)之后,系统会把这个job放在打印队列中。然后由后面的打印服务器来从打印队列中一个一个取走。
    如果你要问:“那为什么不直接打印,还要通过打印队列这么个东西呢?”如果你是计算机相关专业的,那么就要敲敲你的小脑袋了,《操作系统》告诉我们,打印机是独占设备(每个进程只能一次一次的访问打印机),而且速度相对CPU、内存等设备是慢得多了,采用打印队列之后,用户把打印任务提交之后,就不用管了,剩下的交给打印服务。从某种程度上说,把打印机变成“共享的”了。(具体的可以参考相关的操作系统教材)

  2. 打印服务。它的主要任务是把打印队列内的打印job转化成打印机认识的格式(现在主流的主要是Postscript格式,这个把打印job转化为PostScript的工作主要是打印机驱动程序来完成的,所以说打印服务会调用具体的打印机驱动程序),然后交给打印机来打印输出。我们主要用的打印机服务是CUPS,其实这个CUPS做的工作还包括提供很多协议来让用户使用打印机,提供Web界面(有点类似于web服务)让用户设置管理打印机.

 总体上说,把普通打印机变成网络打印机需要两个硬件设备,一个是打印机(好像是废话,_),还有一个是作为打印机服务器的主机(如果打印机本身带有网络功能,也可不用这个主机。打印机本身就是另一种形式的主机。)

 总体上说,把普通打印机变成网络打印机需要两层软件设备,一个是打印机驱动(底层用来驱动打印机工作的),另一个就是打印机服务器,用来协调用户对打印机的需求,并最终调用打印机驱动进行打印工作。

 
 

关于打印机共享的原理

 啊,这个原理不是前面说过了吗?
 这位同学,请仔细比较一下两个标题(一个字一个字的比较)。
 这里重点在于共享,打印机共享。上一个原理主要是驱动打印机工作,这个原理在于把打印机共享给各个用户(如果你只做了上一步的工作,你只能在本地使用打印机,是无法远程共享给其他用户使用的)。
打印机共享的原理在于使用samba服务器。这个服务器提供了共享打印机的功能。

 这里原谅我,前面忘记说这个小实践的运行环境。

--------------------------------------手动来个来个分割线-----------------------------------------------------------------------------

我这个小实践是把实验室普通的打印机共享给实验室的所有小伙伴们。主要是通过在一台闲置的主机(Linux操作系统)上搭设打印机服务器(也就是CUPS),然后通过Samba服务器共享给使用window的用户。

--------------------------------------手动来个来个分割线-----------------------------------------------------------------------------

 关于Samba服务器是什么?有什么作用?具体的可以还是请参照鸟哥私房菜(服务器架设篇)。(不得不说,鸟哥是很多很多学习linux小伙伴的引路人,不过书着实厚重)

本文标签: 打印机原理篇网络