一种多节点智能网络应用服务系统中的远程打印方法

文档序号:6516093阅读:181来源:国知局
专利名称:一种多节点智能网络应用服务系统中的远程打印方法
技术领域
本发明涉及一种基于应用服务系统的远程打印技术,具体地说,本发明涉及一种多节点智能网络应用服务系统中的远程打印方法。
背景技术
在智能网络应用服务系统中,终端通过网络运行服务器上的应用程序以及访问服务器上的数据,服务器需要提供相应的终端服务。终端服务技术将应用逻辑与用户界面分开,应用逻辑在服务器上,终端只负责用户界面的显示。
打印服务是计算机系统提供的一种重要服务。在终端服务环境中,传统的打印模式是将打印机连在服务器上,然后每台终端通过服务器应用程序打印到服务器的打印机。这种多台计算机共享打印机的方式,虽然在一定程度上提高了打印机的利用率,但同时也给系统管理和用户使用带来了许多不便。虽然利用现有打印系统网络打印功能可以部分实现服务器上的文件打印到终端本地的打印机。但是,这种网络打印方式有两个不足,一是不支持会话管理,会话用户不能进行打印配置和管理,因此多个会话用户不能根据所拥有的打印机的类型同时进行打印;二是终端必须带有支持网络打印功能的打印系统,这对终端的要求较高,特别不适合资源受限的终端。
随着打印机的普及和终端用户个性化需求的增加,终端用户希望将服务器上的文件直接打印到终端本地的打印机上,而且希望能够配置和管理自己的打印机和打印作业,这样既可以满足终端用户的个性化需求,又方便系统管理和用户使用。

发明内容
本发明的目的在于为多节点智能网络环境中终端应用提供一种易用的和个性化的多用户远程打印方法,该方法使终端用户将服务器上的文件直接打印到终端本地的打印机上,并能够配置和管理自己的打印机和打印作业。
为了实现上述目的,本发明所采用的技术方案如下在一个由通过传输线互相连接的一个服务器和多个终端组成的系统中,服务器提供相应的终端服务,终端服务技术将应用逻辑与用户界面分开,应用逻辑在服务器上,终端只负责用户界面的显示;每个终端包括一台计算机和至少一台打印机;一种多节点智能网络应用服务系统中的远程打印方法,包括基于会话用户的打印配置和管理方法、基于会话用户的打印作业调度机制和基于共享内存的应用、打印服务和终端服务的信息传递机制。该方法的实现步骤如下1.用户登录应用服务器,产生会话连接,用户通过应用程序分别调用打印命令;2.根据应用程序调用打印命令的进程号获得相应的会话标识;3.通过打印命令与打印服务的通信过程将会话标识传递给打印服务;4.在生成打印作业过程中,打印服务根据会话标识将打印作业标识保存到共享内存;打印服务将打印作业时所产生的打印进程的进程号也保存到共享内存;5.打印服务产生的打印进程操纵打印设备端口时,虚拟驱动获得相应的进程号;6.虚拟驱动与终端服务进行通信,将进程号和设备类型传递给终端服务;7.终端服务根据设备类型选择会话标识获取方式,根据进程号从共享内存中获得会话标识;8.终端服务将获得的会话标识传递给虚拟驱动;9.虚拟驱动根据终端服务传递的会话标识,将打印任务映射至会话所在的终端,完成打印。
本发明提供的多节点智能网络应用服务系统中的远程打印方法,其有益效果是1.在多节点智能网络环境中,会话用户根据自己终端的特点以及终端对打印系统的支持程度进行相应的配置;同时用户能够对所配置的打印机和打印的作业进行相应的管理,例如查询打印机和打印作业的状态等。
2.在多节点智能网络环境中,会话用户通过应用程序进行打印时,打印服务能够根据会话用户进行作业调度,将打印作业打印到会话用户所在终端的打印机上。
3.在多节点智能网络环境中,多个会话用户能够同时进行打印,将各自的打印作业打印到会话用户所在终端的打印机上。


图1多节点智能网络应用服务系统中的远程打印系统结构和流程图;
具体实施例方式
下面结合附图和具体实施方式
对本发明作进一步详细描述。
一种多节点智能网络应用服务系统中的远程打印方法,包括以下三部分1.基于会话用户的打印配置和管理会话用户要使用应用服务器上的打印服务进行打印,首先要根据用户终端上的打印机的型号进行配置,其中包括选择打印机端口、根据打印机的型号选择相应的驱动。如果要使用另一型号的打印机,则需要为该打印机建立新的配置或者修改现在默认打印机配置。
多个用户在各自的终端上登录应用服务器,生成相应的会话,例如图1中两个用户在应用服务器上生成两个会话连接,会话A和会话B,然后这两个用户在使用打印服务之前需要对各自终端上的打印机进行配置。配置完成后,用户可以查看和修改自己配置信息,并对自己配置的打印机进行相应测试和操作。
一个会话用户可以拥有多个打印机配置,但其中只有一个默认配置。
用户使用应用服务器上的打印服务进行打印过程中,可以对打印机和打印作业进行相应的管理,例如检查打印机和打印作业的状态等。
2.基于会话用户的打印作业调度打印服务接收会话用户信息,在接收应用程序提交的打印任务后生成相应的打印作业。在生成打印作业的过程中,将会话用户的信息中的会话标识写入打印控制文件中。
在调度打印作业进行打印时,根据会话用户进行调度。对于不同会话用户的作业则送往不同会话用户配置的默认打印机,对于同一会话用户作业再根据作业属性进行调度。如果调度成功,则启动相应的打印进程进行打印,如图1中过程5所示。
3.基于共享内存的应用、打印服务和终端服务的信息传递这是本发明的核心,也是实现多用户同时打印的关键,如图1所示,两个用户登录应用服务器后对应两个会话连接,这两个用户通过应用程序进行打印,应用程序分别调用打印命令,如图1过程1和1’。
打印命令根据自己的进程号获得会话标识,如图1过程2和2’。
打印命令将会话标识传递给打印服务,如图1过程3和3’。
打印服务接收会话信息,生成打印作业后,根据会话标识将打印作业标识保存到共享内存;打印服务将打印作业时所产生的打印进程的进程号保存到共享内存,如图1过程4。
打印服务产生的打印进程操纵打印设备端口时,虚拟驱动获得相应的进程号,如图1过程5。
虚拟驱动在获得相应的进程号后,与终端服务进行通信,将进程号和设备类型传递给终端服务,如图1过程6。
终端服务根据设备类型选择会话标识获取方式,根据进程号从共享内存中获得会话标识,如图1过程7。
终端服务将获得的会话标识传递给虚拟驱动,如图1过程8。
虚拟驱动根据终端服务传递的会话标识,将打印作业映射至会话所在的终端完成打印,如图1过程9和9’。
结合上述发明实施过程描述,下面以两个用户user1和user2分别通过浏览器应用程序Mozilla和RedOffice打印为例,描述本发明所述远程打印的具体实施过程如下用户user1和user2通过各自的终端登录到应用服务器,完成会话的注册。如果用户没有对本地终端上的打印机进行配置,则在启动应用打印之前,通过配置管理界面进行打印配置。
用户user1和user2在配置完成后,可以通过配置管理界面查看已经配置好的打印机,其中user1打印配置如下Default DestiontionUSER1_HP_2100USER1_HP_2100 HP 2100,Foomatic+gimp-print-ijsDescriptionLaserjetLocationIn user1 terminalPrinter Stateidle,accepting jobsDevice URIparallel/dev/lp0user2打印配置如下Default DestiontionUSER2_HP_2100USER2_HP_2100 HP 2100,Foomatic+gimp-print-ijsDescriptionLaserjetLocationIn user2 terminalPrinter Stateidle,accepting jobsDevice URIparallel/dev/lp0用户user1启动浏览器Mozilla打开一网页,点击菜单File中的Print进行打印操作后,将会如图1所示的流程进行打印。与此同时,用户user2启动RedOffice打开一文本,点击菜单File中的Print进行打印操作后,也会如图1所示的流程进行打印。
用户user1和user2在打印的过程中,可以通过配置管理界面对打印机和打印作业进行管理,例如检查打印机和打印作业的状态。其中user1的打印作业状态如下

其中user2的打印作业状态如下

用户user1通过应用程序Mozilla打印调用打印命令的进程号为3293,打印命令根据自己的进程号获得会话标识3233,如图1过程2。用户user2通过应用程序RedOffice打印调用打印命令的进程号为3310,打印命令根据自己的进程号获得会话标识6421,如图1过程2’。
打印命令将会话标识传递给打印服务,打印服务将user1的会话标识3233写入打印控制文件c00006中,将user2的会话标识6421写入打印控制文件c00007中,如图1过程3和3’;打印服务接收会话信息,生成打印作业USER1_HP_2100-6和USER2_HP_2100-7;根据会话标识3233和6241将打印作业标识保存到共享内存的printerId结构中,如图1过程4;打印服务调度打印作业进行打印,将会话用户user1和user2的打印作业分别送往各自配置的默认打印机USER1_HP_2100和USER2_HP_2100;调度成功后,启动相应的打印进程进行打印,其中打印用户user1和user2作业的打印进程号分别为3296和3920,如图1过程5所示。
打印服务产生的打印进程操纵打印设备端口时,虚拟驱动获得相应的进程号(3296和3920),并与终端服务进行通信,如图1过程6;终端服务根据设备类型选择会话标识获取方式,根据进程号从共享内存中获得会话标识,如图1过程7;终端服务将获得的会话标识传递给虚拟驱动,如图1过程8;虚拟驱动根据终端服务传递的会话标识,将打印作业分别映射至会话A、B所在的终端a和终端b完成打印,如图1过程9和9’。
权利要求
1.一种多节点智能网络应用服务系统中的远程打印方法,在一个由通过传输线互相连接的一个服务器和多个终端组成的系统中,服务器提供相应的终端服务,终端服务技术将应用逻辑与用户界面分开,应用逻辑在服务器上,终端负责用户界面的显示;每个终端包括一台计算机和至少一台打印机;其特征在于,该方法包括基于会话用户的打印配置和管理方法、基于会话用户的打印作业调度机制和基于共享内存的应用、打印服务和终端服务的信息传递机制。
2.根据权利要求1所述的远程打印方法,其特征在于,实施步骤如下1).用户登录应用服务器,产生会话连接,用户通过应用程序分别调用打印命令;2).根据应用程序调用打印命令的进程号获得相应的会话标识;3).通过打印命令与打印服务的通信过程将会话标识传递给打印服务;4).在生成打印作业过程中,打印服务根据会话标识将打印作业标识保存到共享内存;打印服务将打印作业时所产生的打印进程的进程号也保存到共享内存;5).打印服务产生的打印进程操纵打印设备端口时,虚拟驱动获得相应的进程号;6).虚拟驱动与终端服务进行通信,将进程号和设备类型传递给终端服务;7).终端服务根据设备类型选择会话标识获取方式,根据进程号从共享内存中获得会话标识;8).终端服务将获得的会话标识传递给虚拟驱动;9).虚拟驱动根据终端服务传递的会话标识,将打印任务映射至会话所在的终端,完成打印。
3.根据权利要求1所述的远程打印方法,其特征在于,所述基于会话用户的打印配置和管理方法包括用户进行打印配置的过程中记录会话信息,将会话用户信息传递给打印服务,打印服务根据会话用户返回相应的打印配置内容;修改打印配置文件,在打印配置文件中增加会话用户信息;会话用户管理自己的打印机和打印作业,如查询打印机和打印作业的状态。
4.根据权利要求1所述的远程打印方法,其特征在于,所述基于会话用户的打印作业调度机制是指在打印作业控制文件中记录了相应的会话信息,使得打印服务根据会话用户调度打印作业。
5.根据权利要求1所述的远程打印方法,其特征在于,所述基于共享内存的应用、打印服务和终端服务的信息传递机制是指通过应用在打印过程中调用打印命令的进程号获得会话标识,将会话标识传递给打印服务,打印服务根据会话标识将打印作业标识保存到共享内存,打印服务调度打印作业时根据作业标识保存此过程所产生的打印进程的进程号,终端服务进程根据进程号获得会话标识,将打印任务根据会话映射至终端完成打印。
全文摘要
本发明涉及一种多节点智能网络应用服务系统中的远程打印方法,目的在于使终端用户将服务器上的文件直接打印到终端本地的打印机上,并能够配置和管理自己的打印机和打印作业。该方法设计了基于会话用户的打印配置和管理方法、基于会话用户的打印作业调度机制和基于共享内存的应用、打印服务和终端服务的信息传递机制。该远程打印方法可以满足多个远程登陆应用服务器的终端用户对打印机和打印作业进行相应的配置和管理,可以实现远程应用的打印任务在终端本地打印设备上进行打印。本发明的远程打印方法不仅支持各种类型打印方式和各种接口的打印设备,而且对单服务器节点和多服务器节点的智能网络环境都适用,具有很强的通用性和扩展性。
文档编号G06F13/00GK1825272SQ20051000856
公开日2006年8月30日 申请日期2005年2月22日 优先权日2005年2月22日
发明者李锦涛, 蒋发群, 叶剑, 史红周, 郭俊波, 朱珍民, 苏晓丽 申请人:中国科学院计算技术研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1