我很难找到有关打印机实际处理打印数据的任何实际信息。
据我所知,所有操作系统都有一个“打印队列”,它似乎按照请求的顺序将打印的文档缓冲到打印机。
在使用网络打印机之前,我会想象实际的打印机几乎是从连接的机器逐行发送数据的。
现在有了网络打印机,这个想象中的模型就分崩离析了。我假设现代打印机只是从操作系统接收一个 postscript(或一些其他打印格式)文档,将其保存在内存中并从中打印。
问题是,如果打印机可以接收多个文档,操作系统打印队列意味着什么?
操作系统打印队列没有向我们显示其他机器正在打印的内容,因为它是本地缓冲区。所以这一定意味着打印机有一个板载队列吗?那么,如果我们看不到其他正在打印的内容,为什么我们还要打印队列呢?
关于打印机在没有串行电缆的情况下如何实际工作的任何信息都会有所帮助,但要使其成为一个有效的问题:
如果每台机器都不知道其他机器也在打印这一事实,那么打印机如何从多台机器打印文档?
文件是如何传送到打印机的?
大多数打印协议支持哪些类型的信息?
我问最后一个问题,因为在我自己的大炮上似乎要求墨水量,就好像它是打印作业一样:
printing: supply levels
Run Code Online (Sandbox Code Playgroud)
我还听说过 HP 打印机使用“假”打印作业来发送固件更新。