JP4082212B2 - Distributed printing system, distributed printing method and program - Google Patents
Distributed printing system, distributed printing method and program Download PDFInfo
- Publication number
- JP4082212B2 JP4082212B2 JP2002380625A JP2002380625A JP4082212B2 JP 4082212 B2 JP4082212 B2 JP 4082212B2 JP 2002380625 A JP2002380625 A JP 2002380625A JP 2002380625 A JP2002380625 A JP 2002380625A JP 4082212 B2 JP4082212 B2 JP 4082212B2
- Authority
- JP
- Japan
- Prior art keywords
- printing
- terminal
- terminals
- printer
- memory
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Accessory Devices And Overall Control Thereof (AREA)
Description
【0001】
【発明が属する技術分野】
本発明は、複数の印刷装置の負荷分散および稼動台数の制御を行う分散印刷システム、分散印刷方法及びプログラムに関する。
【0002】
【従来の技術】
従来、複数のプリンタ(印刷装置)を複数の端末で共用している場合には、サーバ側で使用を許可した全てのプリンタの中から各端末が任意のプリンタを選択して使用するのが一般的であった。この場合は各端末のユーザが任意のプリンタを選択するので特定のプリンタに負荷が集中することは避けられなかった。
そこで、特定のプリンタに負荷が集中することを避けるために、プリンタを共有して使用するグループをプリンタに対応付けて設定することにより、そのグループに属する端末ユーザだけが設定されたプリンタを使用できるようにし、例えば、プリンタAはあるグループ内の複数の端末ユーザだけが使用し、プリンタBは他のグループの端末ユーザだけが使用するといった運用を行うセキュリティ機能を組み込んだオペレーティングシステムがマイクロソフト社から提供されている。しかし、この場合は指定されたプリンタに印刷処理が集中した時でも、端末ユーザは他のプリンタを使用できないので、指定されたプリンタに先に投入された印刷データの印刷処理が終了するまで待たされるという問題があった。
また、プリンタの負荷を分散させる他の方法として、プリンタの動作能力に応じて出力するプリンタを振り分けて分配数を決めることが知られている(例えば、特許文献1を参照。)。
【0003】
【特許文献1】
特開2000−151873号公報
【0004】
【発明が解決しようとする課題】
しかしながら、プリンタ毎に使用を許可するグループやユーザの設定をするのは、設定内容を決めるのが難しく手間もかかる作業である。
さらにプリンタの負荷が均等になるように意図して設定したとしても、端末の接続状態は変動しているので接続状態によって負荷が偏る恐れがある。
また、接続している端末が少ない場合でも、全てのプリンタが稼動できる状態なので各々のプリンタが印刷データを受信する度にウォームアップして少ない枚数を印刷してはスリープモードに入るという動作を繰り返すことになり、ウォームアップ時に無駄な電力を使うしプリンタも消耗しやすいという問題があった。
【0005】
本発明は上記実状に鑑みてなされたもので、プリンタ毎の負荷が分散するように端末毎に印刷可能なプリンタを自動割り当てし、プリンタの稼動台数が最少となるように制御する分散印刷システムを提供することを目的とする。
【0006】
【課題を解決するための手段】
上記目的を達成するため、本発明に係わる分散印刷システムは、印刷装置1台に割り当てる端末の限度台数を記憶した端末台数記憶手段と、前記印刷データの印刷を要求する複数の端末を前記端末台数記憶手段に記憶された前記限度台数を超えず且つ割り当てられる印刷装置の台数が最少となるように前記複数の印刷装置それぞれに割り当てる割当手段と、を備えたことを特徴とする。
【0007】
このような構成によれば、ネットワークに接続中の端末を対象として、プリンタ毎の負荷が分散するように端末を自動的に割り当てるので、プリンタの設定のための煩雑な作業が不要となり、さらに端末のユーザが任意のプリンタを選択する場合に発生する特定のプリンタに負荷が集中する事態も防げる。
また、接続中の端末台数とプリンタ1台当りの端末の限度台数を基に使用可能なプリンタ台数を決定し、各端末に決定された台数のプリンタを割り当てることによりネットワークに接続されたプリンタの一部を休止させるので、無駄な電力の消費を減少させ、プリンタの消耗を防ぎ、騒音を減少させる効果が得られる。
【0008】
更に、本発明の分散印刷システムは、前記割当手段による割り当ての実行を開始する時間データを記憶する時間データ記憶手段を備えるようにしてもよい。
こうすることにより、端末の接続要求/切断要求の都度、割り当てを行うのではなく、予め設定された一定時間が経過した時点で割り当てを行うので、端末で使用している印刷装置が頻繁に変更になるのを防ぐことができるので、利用者にとって利便性が増す。
【0009】
また、本発明の分散印刷システムは、更に、前記複数の端末に印刷許可されている印刷装置と前記複数の端末に割り当てた印刷装置とが一致するか否かを判別する割当結果判別手段を備え、前記割当手段は、前記割当結果判別手段により印刷許可されている印刷装置と割り当てした印刷装置とが不一致と判別された端末について、割り当てされた印刷装置を端末間で入れ替えることにより端末に既に割り当てられて使用されている印刷装置の変更が最少となるように割り当てを行うようにしてもよい。
こうすることにより、割り当ての処理をした結果、端末で使用している印刷装置が変更になったとしても、入れ替え処理により印刷装置の変更を最少にできるので端末で使用している印刷装置が頻繁に変更になるのを防ぐことができ、利用者にとって利便性が増す。
【0010】
更に、本発明に係わる分散印刷方法は、印刷装置1台に割り当てる端末の限度台数を記憶し、前記印刷データの印刷を要求する複数の端末を前記記憶された限度台数を超えず且つ割り当てられる印刷装置の台数が最少となるように前記複数の印刷装置それぞれに割り当てるようにしたことを特徴とする。
【0011】
更にまた、本発明に係わるプログラムは、前記印刷データの印刷を要求する複数の端末データを端末接続状態記憶手段に記憶させる処理と、前記端末台数記憶手段に記憶された印刷装置1台に割り当てる端末の限度台数データに基づき前記端末接続状態記憶手段に記憶された複数の端末データを前記限度台数を超えず且つ割り当てられる印刷装置の台数が最少となるように前記複数の印刷装置それぞれに割り当てる処理と、をコンピュータに行わせるためのプログラムであることを特徴とする。
【0012】
【発明の実施の形態】
以下、本発明の実施の形態に関して図面を参照して説明する。
【0013】
図1は本発明の実施の形態によるネットワーク全体の構成図である。このネットワーク全体は通信ネットワーク5に接続されたサーバ1、端末2−1〜2−n(以下、夫々の端末を端末2と略称する)、プリンタ3−1〜3−m(以下、夫々のプリンタをプリンタ3と略称する)、サーバ1にローカル接続されたプリンタ4−L1、4−L2(以下、夫々のプリンタをプリンタ4と略称する)から構成される。
【0014】
通信ネットワーク5は、例えば電話回線やLAN(Local Area Network)、WAN(Wide Area Network)、インターネットなどであり、サーバ1と端末2及びプリンタ3との間でデータを送受信させるものである。なお、本実施の形態では、通信ネットワーク5としてLANが用いられているものとする。
サーバ1は通信ネットワーク5を介して端末2からの接続要求/切断要求を受け取り、詳細は後述するが接続している端末2の台数と予め登録されているプリンタ1台当りの最適な端末台数を元にその時点で使用してよいプリンタの台数を算出し、その結果によりプリンタの割り当てを行う。
【0015】
端末2は、例えば、パソコン、PDA等の携帯情報端末、携帯電話等の移動体通信端末などであり、通信によるデータ送受信が可能な情報端末である。接続要求/切断要求及び印刷すべきファイル(後述するスプールファイル24)をサーバ1に送信する。
プリンタ3は、サーバ1からのプリントファイル(後述するプリントファイル18)を受信して印刷処理を行う。
プリンタ4はプリンタケーブルやUSB(Universal Serial Bus)ケーブル等でサーバ1にローカル接続され、サーバ1からのプリントファイル(後述するプリントファイル18)を受信して印刷処理を行う。
【0016】
図2は図1のサーバ1の構成を示すブロック図である。
サーバ1はサーバモジュール10、割当管理モジュール11、出力モジュール12及びプリンタ制御モジュール(OS)13からなるソフトウェア群と、出力先テーブル14、端末接続テーブル15、割当条件定義ファイル16、割当ファイル17及びプリントファイル18からなるファイル群から構成されている。
まず、ファイル群14乃至18について説明する。
【0017】
出力先テーブル14は、前記通信ネットワーク5およびサーバ1に接続されているプリンタ3、4の定義データを予め記憶するものである。即ち図4に示すようにそのプリンタの定義データとして連番を記憶する「No.」メモリ141、プリンタの識別名を記憶する「プリンタ名」メモリ142、プリンタが使用中(値:1)か非使用(値:0)かの使用状態値を記憶する「使用状態」メモリ143、プリンタの通信ネットワーク5上の論理的なアドレスを記憶するIP(Internet Protocol)アドレスまたはローカルのアドレスを記憶する「アドレス」メモリ144、プリンタの種類を記憶する「種類」メモリ145、メーカ名を記憶する「メーカ名」メモリ146、機種名を記憶する「機種名」メモリ147及び印刷速度を記憶する「印字速度」メモリ148からなっている。
【0018】
端末接続テーブル15は、図5に示すように通信ネットワーク5に接続された端末2の接続状態を表すデータを記憶するものであり、図5に示すように連番を記憶する「No.」メモリ151、端末2のIPアドレスを記憶する「端末IP」メモリ152、端末2が接続中(値:1)か切断(値:0)かの接続状態値を記憶する「接続状態」メモリ153、割り当てされているプリンタを記憶する「割当」メモリ154、再割り当てしたプリンタを記憶する「再割当」メモリ155、及び再割当の内容と割当の内容との比較結果が一致した(値:0)か、不一致で「割当」メモリ154のプリンタ名が「再割当」メモリ155のいずれかに用いられている(値:1)か、あるいは不一致で「割当」メモリ154のプリンタ名が「再割当」メモリ155のいずれにも用いられていない(値:2)かの値を記憶する「再割当結果」メモリ156からなっている。
【0019】
割当条件定義ファイル16は、図6(a)示すようにプリンタを割り当てる時の各種の条件を記憶するものである。そのデータとしてプリンタ1台当りの最適な端末台数が記憶された最適端末台数NTaメモリ161、割り当て処理の間隔時間メモリ162、割り当て処理の日時メモリ163および割り当て処理の曜日・時間メモリ164からなっている。
【0020】
割当ファイル17は、端末2に対して使用を許可するプリンタを指示するデータを記憶するものであり、図6(b)に示すようにプリンタの識別名を記憶する「プリンタ名」メモリ171、プリンタが使用中(印刷許可)か非使用かの使用状態値を記憶する「使用状態」メモリ172及びプリンタの通信ネットワーク5上の論理的なアドレスを記憶するIPアドレスまたはローカルのアドレスを記憶する「アドレス」メモリ173からなっている。
【0021】
プリントファイル18は、印刷すべきデータを受信して、プリンタの機種に合わせたデータフォーマットに変換して格納しておくものである。
【0022】
次に、図2のソフトウェア群10乃至13について説明する。
サーバモジュール10は、端末2からの接続要求/切断要求を受信して、端末接続テーブル15の受信した端末2に対応する接続状態、即ち「接続状態」メモリ153の値を接続要求/切断要求に応じて更新するほか、割当ファイル17を端末2に送信する等の各種のデータの送受信を行う。また、割当管理モジュール11や出力モジュール12との同期をとる。
【0023】
割当管理モジュール11は、詳細は後述するが出力先テーブル14に登録された「プリンタ名」メモリ142のプリンタ名データを端末接続テーブル15の「割当」メモリ154又は「再割当」メモリ155に均等に割り当てをして設定すると共に、端末2別に割当ファイル17を生成する。また、端末接続テーブル15の「割当」メモリ154又は「再割当」メモリ155に記憶された端末毎に割り当てられたプリンタ名のデータを、端末2の接続状態が変化した時点で再割り当てを行うことにより、プリンタの稼動台数を制御する。
【0024】
出力モジュール12は、サーバモジュール10が端末2から受信したスプールファイル24を、出力するプリンタのアドレスを指示し、出力するプリンタの機種に合わせたデータフォーマットに変換するためのパラメータ情報を付加してプリンタ制御モジュール(OS)13に送信する。
【0025】
プリンタ制御モジュール(OS)13は、受信したスプールファイル24とパラメータ情報を元にプリントファイル18を生成し、そのプリントファイル18の出力先がネットワークに接続されたプリンタの場合はサーバモジュール10を経由してプリンタ3に送信し、出力先がローカル接続されたプリンタの場合はプリンタ4に直接送信する。
【0026】
図3は端末2の構成を示すブロック図である。
端末2はアプリケーション20、プリントAPI(Application Program Interface)21及び端末モジュール22からなるソフトウェア群と、割当ファイル23及びスプールファイル24からなるファイル群から構成されている。
【0027】
割当ファイル23は、サーバ1から受信した割当ファイル17をそのまま格納したものである。
スプールファイル24は、プリントAPI21がアプリケーション20の要求により生成するもので、プリンタの識別名等のヘッダーデータおよびプリンタの機種に依存しないデータフォーマットのプリントデータから構成される。
アプリケーション20は、ユーザ任意のアプリケーションでよく、プリントAPI21に対して印刷出力を要求する。
プリントAPI21は、アプリケーション20から印刷出力の要求を受けて、割当ファイル23で指定されたプリンタへ出力するためのスプールファイル24を生成する。
端末モジュール22は、サーバ1に対して端末のIPアドレスと共に接続要求/切断要求を送信する。また、サーバモジュール10から割当ファイル17を受信して割当ファイル23として格納し、プリントAPI21と連係してスプールファイル24をサーバモジュール10へ送信する。
【0028】
次に、本発明のサーバ1が端末2に対して使用を許可するプリンタの割り当て制御処理全体の流れを説明するが、その前に、プリンタの割り当て制御処理の概要として端末接続テーブル15の「接続状態」メモリ153の値と出力先テーブル14の「使用状態」メモリ143の値との関連について説明する。図7(a)の割り当て状態1を例にすると、端末23台が全て接続中でプリンタ4台が全て使用中となっている。端末とプリンタの対応関係は端末のNo.1〜4にプリンタのNo.1〜4が順次対応付けられ、端末のNo.5〜8にプリンタのNo.1〜4が再び対応付けられ、以降端末のNo.23まで同様に対応付けられている。その結果として、プリンタ1台当りの端末台数が均等化している。
【0029】
図7(b)の割り当て状態2の例では、端末23台のうち15台が接続中でプリンタ4台のうち3台が使用中となっている。これは図7(a)の割り当て状態1から接続中の端末が減少したので使用するプリンタを削減した例となっている。端末とプリンタの対応関係はプリンタがNo.3まで割り当てられていたのでプリンタのNo.4から順に割り当てられる。すなわち、端末のNo.1、3、5にプリンタのNo.4、1、2がそれぞれ対応付けられ、端末のNo.8、9、10にプリンタのNo.4、1、2が再び対応付けられ、以降端末のNo.22まで同様に対応付けられている。
【0030】
尚、端末接続テーブル15においては図8(a)に示すように端末接続テーブル15の先頭の行、即ちNo.1の端末に関連するデータが記憶されている行のアドレスをTs、最後の端末(No.n1)に関連するデータが記憶されている行のアドレスをTe、アドレスTs及びTe間において現在アドレス指定されている行のアドレスをTとする。同様に出力先テーブル14においては図8(b)に示すように出力先テーブル14の先頭の行、即ちNo.1のプリンタに関連するデータが記憶されている行のアドレスをPs、最後のプリンタ(No.n2)に関連するデータが記憶されている行のアドレスをPe、アドレスPs及びPe間において現在アドレス指定されている行のアドレスをPとする。
【0031】
次に、サーバ1におけるプリンタの割り当て制御処理全体の流れを図9を参照して説明する。
処理全体の制御はサーバモジュール10と割当管理モジュール11とが連係して行う。
まず、ステップS1(以降S1と記す)でサーバモジュール10が端末2からの接続要求または切断要求をIPアドレスと共に受信すると、端末接続テーブル15を参照し要求のあった端末2のIPアドレスが登録されているか否かを確認する(S2)。S3ではIPアドレスが登録済みか否かの確認結果および接続要求または切断要求かを判別してS4、S5、S6のいずれかの処理に分岐させる。判別結果が未だ登録されていない端末2からの接続要求であれば、S4に進み接続要求してきた端末2が新規の端末2であるとして、新たな領域を新アドレスTとして指定してIPアドレスを書き込み、端末接続テーブル15に追加する。また、S3で判別結果が登録済みの端末2からの接続要求の場合は、更にアドレスTが示す該当する端末の「接続状態」メモリ153の値を“接続中”に更新する(S5)。S3で判別結果が登録済みの端末2からの切断要求の場合は、アドレスTが示す該当する端末2の「接続状態」メモリ153の値を“切断”に設定し(S6)、S8に進む。S4またはS5の処理の後、接続要求のあった端末2へ使用を許可するプリンタ名を通知するためにS7の追加割り当て処理を行う。
【0032】
図10は前記S7の追加割り当て処理の詳細な処理内容である。
まず、図5の端末接続テーブル15の現アドレスTが示している端末2の行に該当する「割当」メモリ154に、図4の出力先テーブル14の現アドレスPが示しているプリンタの行に該当する「プリンタ名」メモリ142の値を書き込む(S11)。これによりプリンタを1台割り当てたので出力先テーブル14の現アドレスPを次に進める(S12)。S13で現アドレスPが終端アドレスPeを超えたか否かを判別する。S13で判別結果がYesならば、現アドレスPを先頭アドレスPsに戻す(S14)。S13で判別結果がNoの場合は、S15に進む。S15では割り当てたプリンタを接続要求のあった端末に通知するために割当ファイル17を生成し、生成した割当ファイル17をその端末に送信して追加割り当て処理を終了する。
図9に戻り、S8では端末2の接続状態によってプリンタの台数を増減させて、各端末2にプリンタを割り当てる割り当て処理を行う。
【0033】
ここで、図11に前記S8の割り当て処理の詳細な処理内容を示す。
この割り当て処理は割当管理モジュール11が行う。
まず、端末接続テーブル15に登録されている全ての端末の「接続状態」メモリ153の値を参照して、「接続状態」メモリ153の値が“接続中”となっている端末台数NTnを算出する(S22)。次に、出力先テーブル14に登録されている全てのプリンタの「使用状態」メモリ143の値を参照して、「使用状態」メモリ143の値が“使用中”となっている端末台数NPnを算出する(S23)。このあと、現時点の端末2の接続状態における最適なプリンタ台数を示す最適割当台数NPaの算出処理(S24)を行う。
【0034】
ここで、図12に前記S24の最適割当台数NPaの算出処理の詳細な処理内容を示す。
まず、出力先テーブル14に登録されている全てのプリンタの台数である総プリンタ台数NPtを算出する(S31)。次に、カウンタNに接続中の端末台数NTnを代入し(S32)、求めようとしている最適割当台数NPaの初期値として1を代入する(S33)。
プリンタ1台当りの最適な端末台数を示す最適端末台数NTaが予め設定されているので、S34ではNが最適端末台数NTaよりも大か否かを判別する。S34の判別結果がYesならば、Nから最適端末台数NTaを減算してその結果をNに代入する(S35)。S36では最適端末台数NPaが総プリンタ台数NPtより小か否かを判別する。S36の判別結果がYesならば、最適割当台数NPaの値を1つカウントアップさせてS34に戻り上述の処理を繰り返す(S37)。S34で判別結果がNoの場合及びS36で判別結果がNoの場合は、最適割当台数NPaの算出処理を終了する。
【0035】
上述した最適割当台数NPaの算出処理を、例えば図7(a)の割り当て状態1から図7(b)の割り当て状態2に変化する例に当てはめてみると、図7(b)の割り当て状態2における総プリンタ台数NPtが4台、接続中の端末台数NTnが15台、最適端末台数NTaが6台なので最適割当台数NPaが3台として算出される。図7(a)の割り当て状態1では最適割当台数NPaが4台だったので、この処理の結果1台削減されることになる。
【0036】
図11に戻り、S25では使用中の端末台数NPnと最適割当台数NPaとを比較し、使用中の端末台数NPnと最適割当台数NPaとが一致しない場合はS26〜S29の一連の再割り当ての処理に進み、一致する場合は再割り当てが不要なので割り当て処理を終了する。
S26では端末接続テーブル15の「再割当」メモリ155の内容を端末の接続状態に合わせて更新する再割り当ての出力処理を行う。
【0037】
ここで、図13に前記S26の再割り当ての出力処理の詳細な処理内容を示す。再割り当ての出力処理では端末接続テーブル15に登録されている端末のうち「接続状態」メモリ153の値が“接続中”の端末について順次、出力先テーブル14に登録されているプリンタのうち最適割当台数NPaと等しい台数のプリンタを用いて割り当てを繰り返し行う。
【0038】
まず、先頭の端末から終端の直前の端末まで順次処理を進めてゆくので、端末接続テーブル15の現アドレスTを先頭アドレスTsに設定する(S41)。次に、現時点で割り当てようとしているプリンタを示している出力先テーブル14の現アドレスPをセーブしておく(S42)。続いて、最適割当台数NPaをカウンタNに設定して(S43)、端末接続テーブル15の「再割当」メモリ155の値を端末の接続状態に合わせて更新するS44〜S56の処理に進む。
【0039】
S44では端末接続テーブル15の「接続状態」メモリ153の値が“接続中”か否かを判別する。S44で判別結果がYesならば、端末接続テーブル15の「再割当」メモリ155の値に出力先テーブル14の現アドレスPが示している「プリンタ名」メモリ142の値を設定して(S45)、S47に進む。S44で判別結果がNoの場合は、端末接続テーブル15の「再割当」メモリ155の値をクリアする(S46)。S47では端末接続テーブル15の現アドレスTを次の行に進め、端末接続テーブル15の現アドレスTが終端アドレスTeを超えていないか否かを判別する(S48)。S48で判別結果がNoならば以下のS49〜S55の処理を行った後にS44へ戻る処理を繰り返す。
【0040】
S49ではNから1を減算してその結果をNに代入する。減算の結果、Nが「0」か否かを判別し(S50)、判別結果がYesならば再度Nに最適割当台数NPaを設定し(S51)、出力先テーブル14の現アドレスPをセーブしておいた値に戻す(S52)。S50で判別結果がNoの場合は、出力先テーブル14の現アドレスPを次の行に進める(S53)。S54で出力先テーブル14の現アドレスPが終端アドレスPeを超えたか否かを判別する。S54で判別結果がYesならば、現アドレスPを先頭アドレスPsに設定して(S55)、S44に戻る。S54で判別結果がNoの場合はそのままS44に戻る。
S48で判別結果がYesの場合は、出力先テーブル14の現アドレスPをセーブしておいた値に戻して(S56)、再割当の出力処理を終了する。
【0041】
上記の再割当の出力処理の結果、図7の(a)割り当て状態1から(b)割り当て状態2に接続状態が遷移した場合は、端末接続テーブル15の「再割当」メモリ155の値は図5に示すようになる。すなわち、割り当てされたプリンタが4台から3台に減少し、プリンタ名が“PRT3”のプリンタは休止状態になる。
【0042】
図11のS27に戻り、端末接続テーブル15の「再割当結果」メモリ156の値を出力する再割当結果の出力処理を行う。
S27では端末接続テーブル15の各行について「割当」メモリ154のプリンタ名と「再割当」メモリ155のプリンタ名とを比較し、その比較結果を判別して「0」、「1」、「2」に分類し「再割当結果」メモリ156の値として設定する。「再割当結果」メモリ156の値は、「割当」メモリ154のプリンタ名と「再割当」メモリ155のプリンタ名とが一致した場合は「0」、「割当」メモリ154のプリンタ名と「再割当」メモリ155のプリンタ名とが不一致で、「割当」メモリ154のプリンタ名が「再割当」メモリ155のいずれかに用いられている場合は「1」、「割当」メモリ154のプリンタ名と「再割当」メモリ155のプリンタ名とが不一致で、「割当」メモリ154のプリンタ名が「再割当」メモリ155のいずれにも用いられていない場合は「2」、がそれぞれ設定される。「1」は再割り当てした結果も現在使用しているプリンタが継続して使用されることを意味し、「2」は再割り当てにより現在使用しているプリンタが使用されなくなったか、あるいは新たなプリンタが使用されるようになったことを意味する。
【0043】
図7(a)の割り当て状態1から図7(b)の割り当て状態2に接続状態が遷移した場合は、端末接続テーブル15の「再割当結果」メモリ156の値は図5に示すようになる。「再割当結果」メモリ156の値のうちカッコで併記されているのは後述する再割当の入れ替え処理を行った結果の内容を示している。
S28では「再割当結果」メモリ156の内容を判別し、再割り当ての結果により使用しているプリンタが変更になることを極力避けるために、すなわち、「再割当結果」メモリ156の「1」や「2」の値の数が最小となるようにするために、端末接続テーブル15の「再割当」メモリ155のプリンタ名を行間で入れ替える再割当の入れ替え処理を行う。
【0044】
ここで、図14に前記S28の再割当の入れ替え処理の詳細な処理内容を示す。この再割当の入れ替え処理は端末接続テーブル15の「再割当結果」メモリ156の値が「1」となっている端末に着目し、その端末と「再割当結果」メモリ156の値が「1」または「2」の端末の「再割当」メモリ155の内容を入れ替えて「再割当結果」メモリ156の値を「0」にする処理を順次繰り返し行うものである。
【0045】
まず、先頭の端末から終端の直前の端末まで順次処理を進めてゆくので、端末接続テーブル15の現アドレスTを先頭アドレスTsに設定する(S61)。
S62では現アドレスTが示す行の「再割当結果」メモリ156の値が「1」か否かを判別する。S62で「再割当結果」メモリ156の値が「1」と判別されると、入れ替えの対象となる行を探索するために、先頭アドレスTsを入れ替え対象のアドレスT2に設定する(S63)。
【0046】
S64で入れ替え対象のアドレスT2が示す行の「再割当結果」メモリ156の値が「1」または「2」か否かを判別する。S64の判別結果がYesであれば、現アドレスTが示す行の「再割当」メモリ155のプリンタ名と入れ替え対象のアドレスT2が示す行の「再割当」メモリ155のプリンタ名とを仮に入れ替えてみる(S65)。入れ替えた結果、現アドレスTが示す行の「割当」メモリ154のプリンタ名と同じ行の「再割当」メモリ155のプリンタ名とが一致するか否かを判別し(S66)、判別結果がYesであれば次のS67〜S69の処理を行い「再割当」メモリ155のプリンタ名を入れ替える。
【0047】
S67では現アドレスTが示す行の「再割当」メモリ155のプリンタ名と入れ替え対象のアドレスT2が示す行の「再割当」メモリ155のプリンタ名とを入れ替える。続けて、現アドレスTが示す行の「再割当結果」メモリ156の値を「0」に設定し(S68)、入れ替え対象のアドレスT2が示す行の「再割当結果」メモリ156を入れ替えた結果の値で更新して(S69)、S72に進める。
【0048】
S66の判別結果がNoの場合は、S70で対象のアドレスT2を次の行に進める。S70により入れ替え対象のアドレスT2を次の行に進めた結果、入れ替え対象のアドレスT2が終端アドレスTeを超えたかを判別し(S71)、S71の判別結果がYesであればS72に進める。S71で判別結果がNoの場合はS64に戻り、入れ替え対象を変えてS64〜S71の処理を繰り返す。
S64で判別結果がNoの場合もS70に進む。
【0049】
S72では現アドレスTを次の行に進める。S72により現アドレスTを次の行に進めた結果、現アドレスTが終端アドレスTeを超えたかを判別し(S73)、S73の判別結果がNoであればS62に戻る。そして次の「再割当結果」メモリ156の値が「1」の行を見つけるS62〜S71の処理を繰り返す。S73で判別結果がYesであれば再割当の入れ替え処理を終了する。
【0050】
上記の再割当の入れ替え処理を行った結果、図5の端末接続テーブル15の「再割当」メモリ155と「再割当結果」メモリ156の値がカッコを付けて示したようになる。この例では6台の端末2の「再割当結果」メモリ156の値が「1」から「0」になっている。
【0051】
図11のS29に戻り、割当ファイルの送信をする処理を行う。
S29ではS28までの処理により端末接続テーブル15の「再割当」メモリ155のプリンタ名が決定したので、各端末2に使用を許可するプリンタ名を通知する処理を行う。使用しているプリンタ名が変更される端末2に対して割当管理モジュール11が割当ファイル17を生成し、その割当ファイル17をサーバモジュール10が該当する各端末2に送信し、各端末2では端末モジュール22が割当ファイル17を受信して割当ファイル23として格納する。
【0052】
以上がプリンタの割り当て制御処理全体の説明である。
サーバ1がこのプリンタの割り当て制御処理を行うことにより端末2毎に使用するプリンタを指示した割当ファイル23が各端末2に格納される。
【0053】
ここで、端末2のアプリケーション20からの印刷データがプリンタで印刷されるまでの処理概要を説明する。
アプリケーション20がプリントAPI21に印刷データを出力すると、プリントAPI21は割当ファイル23を参照してスプールファイル24を生成する。生成したスプールファイル24を端末モジュール22がサーバ1に送信する。
【0054】
サーバ1ではサーバモジュール10を経由して出力モジュール12がスプールファイル24を受信する。出力モジュール12はスプールファイル24を読み込んで、出力先のプリンタがネットワーク接続かリモート接続のいずれかを判別し、プリンタ制御モジュール(OS)13に印刷の指示を行う。
【0055】
プリンタ制御モジュール(OS)は指示されたプリンタの種類に合ったデータフォーマットでプリントファイル18を生成した後、指示された出力先の通信ネットワーク5に接続されたプリンタ3またはローカル接続されたプリンタ4にプリントファイル18を送信する。プリントファイル18を受信した通信ネットワーク5に接続されたプリンタ3またはローカル接続されたプリンタ4はプリントファイル18の内容に従って印刷を行う。
【0056】
次に、図9のプリンタの割り当て制御処理において、S8の割り当て処理を一部変えたものを、図15に示す。図15においては図11に示す割り当て処理の先頭にS21を追加し、予め図6(c)の割当条件定義ファイル16の割り当て処理の間隔時間162に設定した時間が経過した時点で割り当て処理を行うようにしたものである。
【0057】
尚、上記実施の形態における情報処理装置1は、本発明にかかるプログラムを実行可能であれば、任意のコンピュータ装置を用いることができる。この場合、上述の各処理を実行するためのプログラムを格納した媒体(フレクシブルディスク、CD−ROMなど)から当該プログラムをコンピュータ装置にインストールすることにより、上述の処理を実行する情報処理装置1を構成することができる。
【0058】
また、各種通信手段を用いてコンピュータ装置にプログラムを供給することが可能であり、この場合コンピュータ装置にプログラムを供給するための手段は任意である。例えば、プログラムを搬送波に重畳させ、通信回線、通信ネットワーク、通信システムなどを介して供給してもよい。
【0059】
また、上記実施の形態では、再割り当ての処理を端末からの接続要求/切断要求の都度、または予め設定した時間が経過した時点で行っているが、図6(c)の割当条件定義ファイル16に示すように割り当て処理の日時163または割り当て処理の曜日・時間164を設定し、設定した日時や曜日及び時間に一致した時点で割り当て処理を行うようにしてもよい。
【0060】
【発明の効果】
本発明によれば、ネットワークに接続中の端末を対象として、プリンタ毎の負荷が分散するように端末を自動的に割り当てるので、プリンタの設定のための煩雑な作業が不要となり、さらに端末のユーザが任意のプリンタを選択する場合に発生する特定のプリンタに負荷が集中する事態も防げる。
また、接続中の端末台数とプリンタ1台当りの端末の限度台数を基に使用可能なプリンタ台数を決定し、各端末に決定された台数のプリンタを割り当てることによりネットワークに接続されたプリンタの一部を休止させるので、無駄な電力の消費を減少させ、プリンタの消耗を防ぎ、騒音を減少させる効果が得られる。
【図面の簡単な説明】
【図1】本発明の実施の形態によるネットワーク全体の構成図である。
【図2】サーバ1の構成を示すブロック図である。
【図3】端末2の構成を示すブロック図である。
【図4】図2に示すサーバ1で使用するデータファイルの内容を示す図であり、出力先テーブル14の内容を示す。
【図5】図2に示すサーバ1で使用するデータファイルの内容を示す図であり、端末接続テーブル15の内容を示す。
【図6】図2に示すサーバ1で使用するデータファイルの内容を示す図であり、(a)割当条件定義ファイル16、(b)割当ファイル17(端末2で使用する割当ファイル23も同じ内容)及び(c)割当条件定義ファイル16の第2の実施例の内容を示す。
【図7】端末接続テーブル15と出力先テーブル14との関連を示す図であり、(a)割り当て状態1から(b)割り当て状態2に状態が遷移する例を示している。
【図8】(a)端末接続テーブル15と(b)出力先テーブル14に関するアドレスを示す図である。
【図9】サーバ1におけるプリンタの割り当て制御の動作を説明するためのフローチャートである。
【図10】図9に示す追加割り当て処理の動作を説明するためのフローチャートである。
【図11】図9に示す割り当て処理の動作を説明するためのフローチャートである。
【図12】図11に示す最適割当台数NPaの算出処理の動作を説明するためのフローチャートである。
【図13】図11に示す再割当の出力処理の動作を説明するためのフローチャートである。
【図14】図11に示す再割当の入れ替え処理の動作を説明するためのフローチャートである。
【図15】図9に示す割り当て処理の第2の実施例の動作を説明するためのフローチャートである。
【符号の説明】
1 サーバ
2 端末
3 プリンタ(ネットワーク接続)
4 プリンタ(ローカル接続)
5 通信ネットワーク
10 サーバモジュール
11 割当管理モジュール
12 出力モジュール
13 プリンタ制御モジュール(OS)
14 出力先テーブル
15 端末接続テーブル
16 割当条件定義ファイル
17 割当ファイル
18 プリントファイル
20 アプリケーション
21 プリントAPI
22 端末モジュール
23 割当ファイル
24 スプールファイル[0001]
[Technical field to which the invention belongs]
The present invention relates to a distributed printing system, a distributed printing method, and a program that perform load distribution and control of the number of operating devices of a plurality of printing apparatuses.
[0002]
[Prior art]
Conventionally, when a plurality of printers (printing devices) are shared by a plurality of terminals, it is common for each terminal to select and use an arbitrary printer from all printers permitted to be used on the server side. It was the target. In this case, since the user of each terminal selects an arbitrary printer, it is inevitable that the load is concentrated on a specific printer.
Therefore, to avoid concentrating the load on a specific printer, by setting a group to share and use the printer in association with the printer, it is possible to use a printer in which only terminal users belonging to that group are set. For example, Microsoft provides an operating system that incorporates a security function that allows printer A to be used only by a plurality of terminal users in a group and printer B to be used only by terminal users in another group. Has been. However, in this case, even when the printing process is concentrated on the designated printer, the terminal user cannot use other printers. Therefore, the terminal user waits until the printing process of the print data previously input to the designated printer is completed. There was a problem.
As another method for distributing the printer load, it is known that the number of distributions is determined by distributing the printers to be output according to the operation capability of the printers (see, for example, Patent Document 1).
[0003]
[Patent Document 1]
JP 2000-151873 A
[0004]
[Problems to be solved by the invention]
However, setting the groups and users permitted to use for each printer is an operation that is difficult and time-consuming to determine the setting contents.
Further, even if the setting is made so that the load on the printer is equalized, the connection state of the terminal varies, so the load may be biased depending on the connection state.
Even when there are few connected terminals, all the printers can be operated, so that each printer repeats the operation of warming up each time it receives print data, printing a small number of sheets, and entering the sleep mode. As a result, there was a problem that wasteful power was consumed during warm-up and the printer was easily consumed.
[0005]
The present invention has been made in view of the above circumstances, and a distributed printing system that automatically assigns printers that can print to each terminal so that the load of each printer is distributed and controls the number of printers to be minimized is provided. The purpose is to provide.
[0006]
[Means for Solving the Problems]
In order to achieve the above object, a distributed printing system according to the present invention includes a terminal number storage unit that stores a limit number of terminals allocated to one printing apparatus, and a plurality of terminals that request printing of the print data. Allocating means for allocating to each of the plurality of printing apparatuses so as to minimize the number of printing apparatuses to be allocated without exceeding the limit number stored in the storage means.
[0007]
According to such a configuration, since the terminals are automatically allocated so that the load for each printer is distributed to the terminals connected to the network, complicated work for setting the printer is not necessary, and the terminals It is also possible to prevent a situation where the load is concentrated on a specific printer that occurs when the user selects an arbitrary printer.
Also, the number of printers that can be used is determined based on the number of connected terminals and the maximum number of terminals per printer, and one printer connected to the network is assigned by assigning the determined number of printers to each terminal. As a result, the power consumption is reduced, the printer is prevented from being consumed, and the noise is reduced.
[0008]
Furthermore, the distributed printing system of the present invention may further include a time data storage unit that stores time data for starting execution of the allocation by the allocation unit.
By doing so, instead of assigning each time a terminal connection request / disconnection request is made, assignment is performed when a predetermined time has elapsed, so the printing device used in the terminal frequently changes. Therefore, convenience for the user is increased.
[0009]
In addition, the distributed printing system of the present invention further includes an allocation result determining unit that determines whether or not a printing apparatus permitted to print to the plurality of terminals matches a printing apparatus allocated to the plurality of terminals. The allocating unit allocates a terminal that has been determined to be inconsistent between the printing device permitted to be printed by the allocating result determining unit and the allocated printing device to the terminal by replacing the allocated printing device between the terminals. The assignment may be performed so that the change of the printing apparatus being used is minimized.
As a result, even if the printing device used in the terminal is changed as a result of the assignment process, the change of the printing device can be minimized by the replacement process, so the printing device used in the terminal is frequently used. Therefore, it is possible to prevent the user from being changed, which increases convenience for the user.
[0010]
Furthermore, the distributed printing method according to the present invention stores a limit number of terminals allocated to one printing apparatus, and allows a plurality of terminals that request printing of the print data to be printed without exceeding the stored limit number. The number of apparatuses is allocated to each of the plurality of printing apparatuses so as to minimize the number of apparatuses.
[0011]
Furthermore, the program according to the present invention includes a process for storing a plurality of terminal data for requesting printing of the print data in a terminal connection state storage means, and a terminal assigned to one printing apparatus stored in the terminal number storage means. A process of allocating a plurality of terminal data stored in the terminal connection state storage means to each of the plurality of printing devices so as not to exceed the limit number and the number of printing devices to be allocated is minimized based on the limit number of devices data. Is a program for causing a computer to perform the above.
[0012]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
[0013]
FIG. 1 is a configuration diagram of an entire network according to an embodiment of the present invention. The entire network includes a
[0014]
The
The
[0015]
The
The
The
[0016]
FIG. 2 is a block diagram showing the configuration of the
The
First, the
[0017]
The output destination table 14 stores definition data of the
[0018]
The terminal connection table 15 stores data representing the connection state of the
[0019]
The allocation
[0020]
The
[0021]
The
[0022]
Next, the
The
[0023]
Although details will be described later, the
[0024]
The
[0025]
The printer control module (OS) 13 generates a
[0026]
FIG. 3 is a block diagram showing the configuration of the
The
[0027]
The
The
The
In response to a print output request from the
The
[0028]
Next, the overall flow of the printer assignment control process that the
[0029]
In the example of
[0030]
In the terminal connection table 15, as shown in FIG. 8A, the address of the first row of the terminal connection table 15, that is, the row where the data related to the No. 1 terminal is stored is Ts, and the last terminal Let Te be the address of the row in which the data related to (No. n1) is stored, and T be the address of the row currently addressed between addresses Ts and Te. Similarly, in the output destination table 14, as shown in FIG. 8B, the address of the first row of the output destination table 14, that is, the row where data related to the No. 1 printer is stored is Ps, and the last printer is stored. Let Pe be the address of the row in which the data related to (No. n2) is stored, and P be the address of the row currently addressed between the addresses Ps and Pe.
[0031]
Next, the overall flow of printer assignment control processing in the
The entire process is controlled by the
First, when the
[0032]
FIG. 10 shows the detailed processing contents of the additional allocation processing in S7.
First, the “assignment”
Returning to FIG. 9, in S <b> 8, the number of printers is increased or decreased depending on the connection state of the
[0033]
Here, FIG. 11 shows the detailed processing contents of the allocation processing in S8.
This allocation process is performed by the
First, with reference to the values of the “connection state”
[0034]
Here, FIG. 12 shows the detailed processing contents of the calculation processing of the optimum allocated number NPa of S24.
First, the total number of printers NPt, which is the number of all printers registered in the output destination table 14, is calculated (S31). Next, the number of connected terminals NTn is substituted into the counter N (S32), and 1 is substituted as the initial value of the optimum allocated number NPa to be obtained (S33).
Since the optimum number of terminals NTa indicating the optimum number of terminals per printer is preset, it is determined in S34 whether N is larger than the optimum number of terminals NTa. If the determination result in S34 is Yes, the optimum number of terminals NTa is subtracted from N and the result is substituted for N (S35). In S36, it is determined whether or not the optimum terminal number NPa is smaller than the total printer number NPt. If the determination result in S36 is Yes, the value of the optimal allocation number NPa is incremented by one, the process returns to S34, and the above-described processing is repeated (S37). When the determination result is No in S34 and when the determination result is No in S36, the process of calculating the optimum allocated number NPa is terminated.
[0035]
Applying the above-described calculation process of the optimal allocation number NPa to an example in which the
[0036]
Returning to FIG. 11, in step S25, the number of used terminals NPn and the optimum allocated number NPa are compared. If the number of used terminals NPn and the optimum allocated number NPa do not match, a series of reassignment processing in steps S26 to S29 is performed. If they match, reassignment is unnecessary and the assignment process is terminated.
In S26, a reassignment output process for updating the contents of the “reassignment”
[0037]
Here, FIG. 13 shows the detailed processing contents of the reassignment output processing in S26. In the reassignment output process, among the terminals registered in the terminal connection table 15, the terminals in which the value of the “connection state”
[0038]
First, since the process proceeds sequentially from the head terminal to the terminal immediately before the terminal, the current address T in the terminal connection table 15 is set as the head address Ts (S41). Next, the current address P of the output destination table 14 indicating the printer to be assigned at this time is saved (S42). Subsequently, the optimal allocation number NPa is set in the counter N (S43), and the process proceeds to S44 to S56 in which the value of the “reassignment”
[0039]
In S44, it is determined whether or not the value of the “connection state”
[0040]
In S49, 1 is subtracted from N, and the result is substituted into N. As a result of the subtraction, it is determined whether or not N is “0” (S50). If the determination result is Yes, the optimal allocation number NPa is set again to N (S51), and the current address P of the output destination table 14 is saved. The set value is restored (S52). If the determination result is No in S50, the current address P in the output destination table 14 is advanced to the next line (S53). In S54, it is determined whether or not the current address P in the output destination table 14 exceeds the end address Pe. If the determination result is Yes in S54, the current address P is set as the head address Ps (S55), and the process returns to S44. If the determination result is No in S54, the process returns to S44 as it is.
If the determination result is Yes in S48, the current address P in the output destination table 14 is returned to the saved value (S56), and the reallocation output process is terminated.
[0041]
When the connection state transitions from (a)
[0042]
Returning to S27 of FIG. 11, the reallocation result output process for outputting the value of the “reallocation result”
In S27, the printer name in the “assignment”
[0043]
When the connection state transitions from the
In S28, the contents of the “reassignment result”
[0044]
Here, FIG. 14 shows the detailed processing contents of the reassignment replacement processing in S28. In this reassignment replacement process, attention is paid to a terminal whose value of the “reassignment result”
[0045]
First, since the process proceeds sequentially from the head terminal to the terminal immediately before the terminal, the current address T in the terminal connection table 15 is set as the head address Ts (S61).
In S62, it is determined whether or not the value of the “reallocation result”
[0046]
In S64, it is determined whether or not the value of the “reallocation result”
[0047]
In S67, the printer name in the “reassignment”
[0048]
If the determination result in S66 is No, the target address T2 is advanced to the next line in S70. As a result of advancement of the replacement target address T2 to the next line in S70, it is determined whether the replacement target address T2 exceeds the end address Te (S71). If the determination result in S71 is Yes, the process proceeds to S72. If the determination result is No in S71, the process returns to S64, and the process of S64 to S71 is repeated while changing the replacement target.
If the determination result is No in S64, the process also proceeds to S70.
[0049]
In S72, the current address T is advanced to the next line. As a result of advancing the current address T to the next line in S72, it is determined whether or not the current address T exceeds the end address Te (S73). If the determination result in S73 is No, the process returns to S62. Then, the processing of S62 to S71 for finding the next row with the value “1” in the “reassignment result”
[0050]
As a result of the above reassignment replacement processing, the values of the “reassignment”
[0051]
Returning to S29 in FIG. 11, processing for transmitting the allocation file is performed.
In S29, the printer name in the “reassignment”
[0052]
The above is the description of the entire printer assignment control process.
When the
[0053]
Here, an outline of processing until print data from the
When the
[0054]
In the
[0055]
The printer control module (OS) generates a
[0056]
Next, FIG. 15 shows a part of the assignment process of S8 in the assignment control process of the printer shown in FIG. In FIG. 15, S21 is added to the head of the allocation process shown in FIG. 11, and the allocation process is performed when the time set in advance in the allocation
[0057]
As the
[0058]
Moreover, it is possible to supply a program to a computer apparatus using various communication means, In this case, the means for supplying a program to a computer apparatus are arbitrary. For example, the program may be superimposed on a carrier wave and supplied via a communication line, a communication network, a communication system, or the like.
[0059]
In the above embodiment, the reassignment process is performed every time a connection request / disconnection request from the terminal or when a preset time has elapsed, but the assignment
[0060]
【The invention's effect】
According to the present invention, since the terminals are automatically allocated so that the load for each printer is distributed to the terminals connected to the network, complicated work for setting the printer is unnecessary, and the user of the terminal It is also possible to prevent a situation where the load is concentrated on a specific printer that occurs when an arbitrary printer is selected.
Also, the number of printers that can be used is determined based on the number of connected terminals and the maximum number of terminals per printer, and one printer connected to the network is assigned by assigning the determined number of printers to each terminal. As a result, the power consumption is reduced, the printer is prevented from being consumed, and the noise is reduced.
[Brief description of the drawings]
FIG. 1 is a configuration diagram of an entire network according to an embodiment of the present invention.
FIG. 2 is a block diagram showing a configuration of a
3 is a block diagram showing a configuration of a
4 is a diagram showing the contents of a data file used in the
5 is a diagram showing the contents of a data file used in the
6 is a diagram showing the contents of a data file used in the
7 is a diagram showing a relationship between the terminal connection table 15 and the output destination table 14, showing an example in which the state transitions from (a)
FIG. 8 is a diagram showing addresses related to (a) terminal connection table 15 and (b) output destination table 14;
9 is a flowchart for explaining an operation of printer assignment control in the
10 is a flowchart for explaining the operation of the additional assignment process shown in FIG. 9;
11 is a flowchart for explaining the operation of the assignment process shown in FIG. 9;
12 is a flowchart for explaining the operation of the process of calculating the optimum allocated number NPa shown in FIG.
13 is a flowchart for explaining the operation of the reassignment output process shown in FIG. 11; FIG.
14 is a flowchart for explaining the operation of the reassignment replacement process shown in FIG. 11. FIG.
FIG. 15 is a flowchart for explaining the operation of the second example of the assignment process shown in FIG. 9;
[Explanation of symbols]
1 server
2 terminal
3 Printer (network connection)
4 Printer (local connection)
5 Communication network
10 Server module
11 Allocation management module
12 Output module
13 Printer control module (OS)
14 Output destination table
15 Terminal connection table
16 Allocation condition definition file
17 Allocation file
18 Print file
20 applications
21 Print API
22 Terminal module
23 Allocation file
24 Spool file
Claims (7)
印刷装置1台に割り当てる端末の限度台数を記憶した端末台数記憶手段と、
前記印刷データの印刷を要求する複数の端末を前記端末台数記憶手段に記憶された前記限度台数を超えず且つ割り当てられる印刷装置の台数が最少となるように前記複数の印刷装置それぞれに割り当てる割当手段と、
を備えたことを特徴とする分散印刷システム。A distributed printing system that distributes and assigns print data from a plurality of terminals connected to a network to a plurality of printing apparatuses connected to the network, and prints the print data from the terminals respectively assigned by the plurality of printing apparatuses. In
A terminal number storage means for storing a limit number of terminals to be assigned to one printing apparatus;
Allocation means for allocating a plurality of terminals that request printing of the print data to each of the plurality of printing apparatuses so as not to exceed the limit number stored in the terminal number storage means and to minimize the number of printing apparatuses to be allocated. When,
A distributed printing system comprising:
前記割当手段は、前記接続状態記憶手段に記憶されている前記接続状態データに基づいて割り当てを行うことを特徴とする請求項1又は2に記載の分散印刷システム。And a connection state storage means for storing connection state data of the plurality of terminals.
The distributed printing system according to claim 1, wherein the allocating unit performs the allocation based on the connection state data stored in the connection state storage unit.
前記割当手段は、前記割当結果判別手段により印刷許可されている印刷装置と割り当てした印刷装置とが不一致と判別された端末について、割り当てされた印刷装置を端末間で入れ替えることにより端末に既に割り当てられて使用されている印刷装置の変更が最少となるように割り当てを行うことを特徴とする請求項1または2に記載の分散印刷システム。Furthermore, it comprises an assignment result judging means for judging whether or not a printing device permitted to print to the plurality of terminals and a printing device assigned to the plurality of terminals match.
The assigning unit is already assigned to the terminal by replacing the assigned printing device between the terminals for which the printing device permitted to be printed by the assignment result judging unit is determined not to match the assigned printing device. 3. The distributed printing system according to claim 1 or 2, wherein the assignment is performed so that the change of the printing apparatus used is minimized.
印刷装置1台に割り当てる端末の限度台数を記憶し、
前記印刷データの印刷を要求する複数の端末を前記記憶された限度台数を超えず且つ割り当てられる印刷装置の台数が最少となるように前記複数の印刷装置それぞれに割り当てるようにしたことを特徴とする分散印刷方法。A distributed printing method for distributing and assigning print data from a plurality of terminals connected to a network to a plurality of printing apparatuses connected to the network and printing the print data from the terminals respectively assigned by the plurality of printing apparatuses Because
Store the maximum number of terminals that can be assigned to one printing device,
A plurality of terminals that request printing of the print data is allocated to each of the plurality of printing apparatuses so as not to exceed the stored limit number and to minimize the number of printing apparatuses to be allocated. Distributed printing method.
コンピュータに、
前記印刷データの印刷を要求する複数の端末データを端末接続状態記憶手段に記憶させる処理と、
前記端末台数記憶手段に記憶された印刷装置1台に割り当てる端末の限度台数データに基づき前記端末接続状態記憶手段に記憶された複数の端末データを前記限度台数を超えず且つ割り当てられる印刷装置の台数が最少となるように前記複数の印刷装置それぞれに割り当てる処理と、
を実行させるようにしたことを特徴とするプログラム。Distributed printing in which print data from a plurality of terminals connected to a network is distributed and assigned to a plurality of printing apparatuses connected to the network, and print data from the terminals respectively assigned by the plurality of printing apparatuses is printed. A program for
On the computer,
A process of storing a plurality of terminal data for requesting printing of the print data in a terminal connection state storage means;
Based on the limit number data of the terminals assigned to one printing device stored in the terminal number storage means, the number of printing devices assigned to the plurality of terminal data stored in the terminal connection state storage means does not exceed the limit number. Assigning to each of the plurality of printing devices so as to minimize
A program characterized in that it is executed.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002380625A JP4082212B2 (en) | 2002-12-27 | 2002-12-27 | Distributed printing system, distributed printing method and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002380625A JP4082212B2 (en) | 2002-12-27 | 2002-12-27 | Distributed printing system, distributed printing method and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004213231A JP2004213231A (en) | 2004-07-29 |
JP4082212B2 true JP4082212B2 (en) | 2008-04-30 |
Family
ID=32816791
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002380625A Expired - Fee Related JP4082212B2 (en) | 2002-12-27 | 2002-12-27 | Distributed printing system, distributed printing method and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4082212B2 (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4795267B2 (en) * | 2007-02-20 | 2011-10-19 | キヤノン株式会社 | Image forming apparatus and control method thereof |
JP6119151B2 (en) * | 2012-09-12 | 2017-04-26 | 株式会社リコー | Device management apparatus, device management system and program |
JP6123472B2 (en) * | 2013-05-13 | 2017-05-10 | 株式会社リコー | Device management apparatus, device management system, device management method and program |
-
2002
- 2002-12-27 JP JP2002380625A patent/JP4082212B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2004213231A (en) | 2004-07-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2428868B1 (en) | Printer Wake-up using a proxy | |
JPH10340167A (en) | Printing data generating device, its method, printer and printing system | |
CN103428198B (en) | network device, system and method | |
JP2007226747A (en) | Electronic apparatus and printer device selection method | |
JP5178230B2 (en) | Information processing apparatus, information processing method, and program | |
KR920009449B1 (en) | Common bus controller an its method | |
JP4142830B2 (en) | Printing system | |
JP4082212B2 (en) | Distributed printing system, distributed printing method and program | |
US8166199B2 (en) | Communication apparatus, network system, communication method and program | |
JP2004046774A (en) | Print server, print system, print job management method, program, and recording medium | |
JP2018041378A (en) | Terminal device | |
JP6812673B2 (en) | Image processing systems, image forming equipment, data sharing methods, and computer programs | |
JP2003296217A (en) | Communication terminal device and its control method | |
US9189717B2 (en) | Image forming apparatus that transmits response data for information requesting data and responding method | |
US7283990B2 (en) | Method and system for managing resources for multi-service jobs based on location | |
JP2002163097A (en) | Printing system | |
JP2002055795A (en) | Print managing apparatus and method for controlling the same and storage medium | |
JP5040603B2 (en) | Printing instruction apparatus and program | |
JP2014010694A (en) | Print management device, print management system, control method, and program | |
JP3710678B2 (en) | Printing apparatus and printing method thereof | |
US8427682B2 (en) | Information processing device that performs data access control through connecting to multiple devices and method thereof | |
JP3661385B2 (en) | Output device and host device | |
JP4690294B2 (en) | USB communication device, USB communication device communication method, and USB communication device program | |
JPH1131050A (en) | Printer sharing system and its control method | |
JP2022177477A (en) | image forming system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050419 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20071221 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20080122 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080204 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4082212 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110222 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110222 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120222 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120222 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130222 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130222 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140222 Year of fee payment: 6 |
|
LAPS | Cancellation because of no payment of annual fees |