(57)【特許請求の範囲】
【請求項１】
複数の端末装置から送信されるプリントジョブを受付け、プリンタにプリント処理をさせるプリンタサーバであって、
受付けたプリントジョブを送信元の端末装置と対応付けて記憶するプリントジョブ記憶手段と、
各端末装置における最新のプリントジョブの受付時からの経過時間を各端末装置ごとに計時する計時手段と、
前記経過時間に応じた優先度を各端末装置ごとに設定する優先度設定手段と、
複数のプリントジョブがプリント処理待ち状態になった場合に、前記優先度に基づいて、プリント処理させる制御手段とを備えたことを特徴とするプリンタサーバ。
【請求項２】
前記優先度設定手段は、前記経過時間が長いほど高い優先度を設定し、
前記制御手段は、前記記憶手段に記憶されたプリントジョブの内、最も優先度の高い一の端末装置におけるプリントジョブの中から、次にプリント処理するプリントジョブを決定しプリント処理させることを特徴とする請求項１記載のプリンタサーバ。
【請求項３】
複数の端末装置から送信されるプリントジョブを受付け、プリンタにプリント処理をさせるプリンタサーバであって、
受付けたプリントジョブを送信元の端末装置と対応付けて記憶するプリントジョブ記憶手段と、
各端末装置における最新のプリントジョブの受付時からの第１経過時間を各端末装置ごとに計時する計時手段と、
前記第１経過時間に応じた優先度を各端末装置ごとに設定する優先度設定手段と、
前記優先度設定手段で設定された優先度をプリントジョブ毎に付与する優先度付与手段と、
各プリントジョブの受付時からの第２経過時間を測定する経過時間測定手段と、
前記第２経過時間が所定時間以上となったプリントジョブの優先度を繰り上げ変更する優先度変更手段と、
複数のプリントジョブがプリント処理待ち状態になった場合に、各プリントジョブの優先度を参照し、最も優先度の高いプリントジョブの中から、次にプリント処理するプリントジョブを決定しプリント処理させる制御手段と、
を備えたことを特徴とするプリンタサーバ。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、複数の端末装置から受付けたプリントジョブをプリンタにプリント処理させるプリンタサーバに関し、特に、複数のプリントジョブがプリント処理待ち状態になった場合の、次にプリント処理させるプリントジョブの決定技術に関する。
【０００２】
【従来の技術】
近年、ＯＡ（Office Automation）の発展に伴い、多くの企業では、ワードプロセッサや文書・画像処理ソフトウエアをロードしたパソコンなどの端末装置が一人に一台割り当てられ、文書やイラストなどが作成されている。
これらの端末装置は、ＬＡＮ（Local Area Network）を介して、プリンタにプリント処理させるプリンタサーバに接続されており、プリンタを全員で共有して、作成した文書などをプリント用紙に印字するプリント処理が行なわれている。ここで、プリント処理の対象となる情報を「プリントジョブ」と言い、プリンタから排出される印字済みのプリント用紙を「出力用紙」と言う。
【０００３】
プリンタサーバは、各端末装置からＬＡＮを経由して送信されるプリントジョブを一旦メモリに格納し、当該メモリからプリントジョブを読み出してプリンタにプリント処理を行わせる。ところで、あるプリントジョブのプリント処理中に、別のプリントジョブが相次いで送信され、前記メモリに複数のプリントジョブが格納されることがある。すなわち、複数のプリントジョブがプリント処理待ち状態になってしまうことがある。
【０００４】
従来のプリンタサーバは、受信したプリントジョブを前記メモリに対して先入れ先出しで取り扱っており、先に行われているプリント処理が終了すると、それ以降のプリント処理は、プリントジョブの到着順に行なっている。
【０００５】
【発明が解決しようとする課題】
ところで、各端末装置において行われる文書作成作業の内容や進め方は、その使用者ごとにまちまちであり、そのため、種々のプリント処理待ち状況が生じる。例えば、使用者Ａが、プリントジョブを完成する度にそのプリント指示を行い、複数のプリントジョブを完成させてからまとめてプリンタへ出力用紙を取りに行こうとし、使用者Ｂが、急ぎのプリントジョブのプリント指示を、使用者Ａのプリント指示の合間に行なったとする。この場合、プリンタサーバのメモリには、使用者Ａのプリントジョブが何件か格納された後（前半のプリントジョブ）、使用者Ｂのプリントジョブが格納され、続いて、使用者Ａのプリントジョブが何件か格納されることになる（後半のプリントジョブ）。
【０００６】
このような場合、使用者Ｂが急いで出力用紙を取りに行っても、上記従来のプリンタサーバでは、後半のプリントジョブを作成中である使用者Ａ（すなわち、出力用紙の取得をあまり急いでいない使用者）の前半のプリントジョブに対する出力用紙が排出されてしまうまで、使用者Ｂを待たせてしまうこととなる。
本発明は、上記した課題に鑑み、急いでいる使用者の端末装置から送信されたプリントジョブを優先してプリント処理させるプリンタサーバを提供することを目的とする。
【０００７】
【課題を解決するための手段】
上記の目的を達成するため、本発明に係るプリンタサーバは、複数の端末装置から送信されるプリントジョブを受付け、プリンタにプリント処理をさせるプリンタサーバであって、受付けたプリントジョブを送信元の端末装置と対応付けて記憶するプリントジョブ記憶手段と、各端末装置における最新のプリントジョブの受付時からの経過時間を各端末装置ごとに計時する計時手段と、前記経過時間に応じた優先度を各端末装置ごとに設定する優先度設定手段と、複数のプリントジョブがプリント処理待ち状態になった場合に、前記優先度に基づいて、プリント処理させる制御手段とを備えたことを特徴とする。
【０００８】
また、前記優先度設定手段は、前記経過時間が長いほど高い優先度を設定し、前記制御手段は、前記記憶手段に記憶されたプリントジョブの内、最も優先度の高い一の端末装置におけるプリントジョブの中から、次にプリント処理するプリントジョブを決定しプリント処理させることを特徴とする。
上記の目的を達成するため、本発明に係るプリンタサーバは、複数の端末装置から送信されるプリントジョブを受付け、プリンタにプリント処理をさせるプリンタサーバであって、受付けたプリントジョブを送信元の端末装置と対応付けて記憶するプリントジョブ記憶手段と、各端末装置における最新のプリントジョブの受付時からの第１経過時間を各端末装置ごとに計時する計時手段と、前記第１経過時間に応じた優先度を各端末装置ごとに設定する優先度設定手段と、前記優先度設定手段で設定された優先度をプリントジョブ毎に付与する優先度付与手段と、各プリントジョブの受付時からの第２経過時間を測定する経過時間測定手段と、前記第２経過時間が所定時間以上となったプリントジョブの優先度を繰り上げ変更する優先度変更手段と、複数のプリントジョブがプリント処理待ち状態になった場合に、各プリントジョブの優先度を参照し、最も優先度の高いプリントジョブの中から、次にプリント処理するプリントジョブを決定しプリント処理させる制御手段とを備えたことを特徴とする。
【０００９】
【発明の実施の形態】
以下、本発明の実施の形態を図面を参照しながら説明する。
図１は、実施の形態に係るプリンタサーバＴＵ０を有したプリンタシステム１の構成を示す図である。
入力手段としてキーボードとマウスを有するパソコンが複数台、イーサネットで構築されたＬＡＮ２を介して接続されており、この内、プリンタ３に接続されている一台がプリンタサーバＴＵ０として専用に用いられ、その他のパソコン（ＴＵ１〜ＴＵＰ）は、文書などを作成するための端末装置として用いられる。
【００１０】
端末装置は、同様の構成をしたものがＰ台設置されており（Ｐは、２以上の整数）、各端末装置（ＴＵ１〜ＴＵＰ）は、１，２，３，…，ｐ，…Ｐ番の端末番号で識別される。また、プリンタサーバＴＵ０には、識別番号として「０」が付与されている。
各端末装置は、入力手段を介して、プリント指示を受付けると、指示のあったプリントジョブに、宛て先の識別番号（この場合は、プリンタサーバＴＵ０の識別番号「０」）と送り手の識別番号である端末番号「ｐ」とを付与した上で、当該プリントジョブをＬＡＮ２に送出する。
【００１１】
図２は、プリンタサーバＴＵ０を示す機能ブロック図の一部である。
本図に示すように、プリンタサーバＴＵ０は、タイマー部１１、ＬＡＮインターフェース部１２、優先度設定部１３、プリントジョブ処理部１４、優先度変更部１５およびプリンタインターフェース部１６を有している。
タイマー部１１は、現在の時刻（time）を示す。当該タイマー部１１は、必要に応じて、優先度設定部１３、プリントジョブ処理部１４および優先度変更部１５に参照される。
【００１２】
ＬＡＮインターフェース部１２は、各端末装置ＴＵ１〜ＴＵＰからＬＡＮ２に送出されたデータの内、自分宛、すなわち、プリンタサーバＴＵ０宛のデータを選択して受信する。受信したデータが、プリントジョブの場合は、当該送信元端末番号を伴ったプリントジョブをプリントジョブ処理部１４に出力すると共に、当該端末番号（ｐ）の端末装置からプリントジョブを受信したことを示す情報として符号「ｊｏｂ」を生成し、当該符号に端末番号を付与した「ｊｏｂ［ｐ］」を受信情報として優先度設定部１３へ出力する。
【００１３】
優先度設定部１３は、図３に示すような、優先度格納テーブル１３１を有している。優先度格納テーブル１３１には、端末番号各々における、ＬＡＮインターフェース部１２から出力される受信情報「ｊｏｂ［ｐ］」を最後に受け取った時刻（tl）、当該受取時からの経過時間（tk）および当該経過時間の長短の度合によって定められる優先度（priority）が、当該各端末番号１〜Ｐと対応付けられて格納される。
【００１４】
優先度設定部１３は、ＬＡＮインターフェース部１２から入力される受信情報「ｊｏｂ［ｐ］」を一時的に格納しておくバッファメモリ（不図示）を有しており、所定の極めて短い周期で、当該バッファメモリを検索し、端末番号１〜Ｐの順に受信情報「ｊｏｂ［ｐ］」が当該バッファメモリに格納されているか否かを検出する。
【００１５】
受信情報「ｊｏｂ［ｐ］」を検出した場合は、タイマー部１１を参照して、当該検出時をプリントジョブの受信時刻（受付時刻）として、優先度格納テーブル１３１の対応する端末番号の格納領域に格納する（受信時刻（tl）を更新する）と共に、バッファメモリから当該受信情報「ｊｏｂ［ｐ］」を消去する。
検出対象となった端末番号の受信情報「ｊｏｂ［ｐ］」が格納されていなかった場合には、タイマー部１１を参照して、その時点の時刻（time）から当該端末番号に対応して格納されている受信時刻（tl）を減算して経過時間（tk）を求め、当該経過時間（tk）を対応する格納領域に格納する（経過時間（tk）を更新する）。したがって、経過時間（tk）は、最後にプリントジョブを受信してからの経過時間、すなわち、対応する端末装置における最新のプリントジョブを受信してからの経過時間を表わすこととなる。
【００１６】
また、優先度設定部１３は、受信時刻（tl）および経過時間（tk）の更新と共に、「０」、「１」、「２」のいずれかの数値で表わされる優先度（priority）の更新を行う。優先度設定部１３は、経過時間（tk）が、第１の基準時間（TK1）よりも短い場合は、優先度（priority）を「０」に設定し、第１の基準時間（TK1）以上で第２の基準時間（TK2）未満の場合は、優先度（priority）を「１」に設定し、第２の基準時間（TK2）以上の場合は、優先度（priority）を「２」に設定する。なお、TK1＜TK2であり、例えば、TK1は１分、TK2は５分に設定されている。
【００１７】
優先度（priority）が「２」の端末装置では、当該端末装置の使用者がプリント指示をしてから長時間（少なくとも５分間）が経過しているため、当該使用者は席を離れてプリンタ３へ出力用紙を取りに行っている可能性が高いと言える。一方、優先度（priority）が「０」の端末装置では、プリント指示してからあまり時間が経過していないので、優先度「２」の端末装置の使用者よりも、継続して文書作成などの作業が行われている可能性が高いと判断できる。したがって、当該端末装置からのプリントジョブのプリント処理が行われ、その出力用紙がプリンタ３から排出されたとしても、当該出力用紙は、そのまま放置される可能性が高いと考えられる。また、優先度（priority）が「１」の端末装置は、上記した両者の中間状態であり、当該端末装置の使用者が、これから、出力用紙を取りに行く可能性が高いと判断できる。
【００１８】
そこで、本実施の形態では、優先度（priority）の高い端末装置の使用者ほど、出力用紙の入手を急いでいると考え、プリントジョブ処理部１４の後述する処理によって、当該端末装置からのプリントジョブを、それよりも優先度（priority）の低い端末装置からのプリントジョブに優先してプリント処理を行うようにしている。
【００１９】
プリントジョブ処理部１４は、図４に示すようなプリントジョブバッファ１４１を有しており、ＬＡＮインターフェース部１２から入力されるプリントジョブを一旦このプリントジョブバッファ１４１に格納する。プリントジョブは、バッファ番号１〜Ｎ番（Ｎは正の整数）で識別される格納場所の内、空いているバッファ（フラグがオフ状態のバッファ）のバッファ番号の最も若い格納場所に格納される。このとき、プリントジョブと共に送信されてきた端末番号と、当該プリントジョブを受信した時刻（tr）とをバッファ番号で対応付けられる各々の格納領域に格納すると共に、当該バッファ番号に対応するフラグをオンにする。なお、受信時刻（tr）は、受信した時（プリントジョブ処理部１４にプリントジョブが入力された時）に、タイマー部１１から出力されている時刻（time）を参照することにより得られる。
【００２０】
プリントジョブバッファ１４１の優先度格納領域には、優先度格納テーブル１３１に格納されている優先度（priority）の内、端末番号格納領域に格納されている端末番号（ｐ）に対応する優先度が、原則として、そのまま格納されるのであるが、所定の場合には、優先度格納テーブル１３１の優先度（priority）が一つ繰り上げられた値が格納される。
【００２１】
当該繰り上げ変更の処理は、優先度変更部１５によって行われる。プリントジョブ処理部１４は、プリンタ３がプリント処理可能な状態になると、プリントジョブバッファ１４１に格納されている端末番号（ｐ）と受信時刻（tr）の対を、バッファ番号の若い順に、順次、優先度変更部１５に出力し、出力した端末番号（ｐ）の優先度（priority）を、必要に応じて変更させる。そして、優先度変更部１５によって変更された優先度（priority）、または、変更されないそのままの優先度（priority）を対応するバッファ番号の優先度格納領域に格納する。なお、優先度変更部１５による優先度の変更処理については後述する。
【００２２】
また、プリントジョブ処理部１４は、プリントジョブバッファ１４１に格納された優先度を参照して、次回にプリント処理を行うプリントジョブを決定するのであるが、このことについても、後で詳述する。
優先度変更部１５は、前述したようにプリントジョブ処理部１４から端末番号（ｐ）と受信時刻（tr）の対を伴った優先度変更の指示を受けると、当該受信時刻（tr）と優先度設定部１３の優先度格納テーブル１３１に格納されている優先度（priority）とから、端末番号（ｐ）の端末装置の優先度（priority）を決定する。優先度変更部１５は、タイマー部１１から得た現在の時刻（time）から受信時刻（tr）を減算し、受信時刻から現在までの経過時間を求める。求まった経過時間が、所定の時間（TRS）よりも短いときには、優先度格納テーブル１３１に格納されている、端末番号（ｐ）の優先度（priority）をそのまま、優先度（priority）として、プリントジョブ処理部１４に出力する。一方、求まった経過時間が所定の時間（TRS）以上のときには、端末番号（ｐ）の優先度（priority）に１を加えた数値を優先度（priority）として、プリントジョブ処理部１４に出力する。
【００２３】
上記したように、最新のプリントジョブの受付時からの経過時間によって定まる優先度の高い端末装置からのプリントジョブほど、プリント処理を優先して行うという本実施の形態の基本的な考えに基づくと、優先度格納テーブル１３１に格納されている優先度（priority）をそのまま、プリントジョブバッファ１４１の優先度として用いてもよいのであるが、プリンタサーバＴＵ０が受信してから相当の時間（TRS）が経過しているプリントジョブについては、あまり長い間プリント処理待ち状態にしておくのは好ましくないと考え、優先度格納テーブル１３１の優先度（priority）、すなわち、端末装置ごとに設定されている優先度をそのまま用いるのではなく、それに１を加えた数値をプリントジョブバッファ１４１に格納する優先度としたのである。優先度格納テーブル１３１の優先度（priority）０〜２そのままの値、あるいは、当該優先度に１を加えた値がプリントジョブバッファ１４１の優先度になるので、プリントジョブバッファに格納される優先度（priority）は、０、１、２、３のいずれかの値となる。なお、所定の時間（TRS）は、例えば、１０分に設定される。
【００２４】
プリントジョブ処理部１４は、プリンタ３がプリント処理可能な状態になり、プリントジョブバッファ１４１に格納されている各プリントジョブの優先度の優先度変更部１５による決定が終了し、プリントジョブバッファ１４１の優先度を更新すると、当該優先度に基づいて、次にプリント処理を行うプリントジョブを決定する。
【００２５】
プリントジョブ処理部１４は、先ず、最も高い優先度「３」のプリントジョブを検索する。当該検索は、プリントジョブバッファ１４１のバッファ番号の若い順に順次、フラグがオンになっているバッファ番号を対象に行う。優先度「３」のプリントジョブが見つかると、そのプリントジョブをプリンタインターフェース部１６に出力すると共に、対応するフラグをオフにする。
【００２６】
最後のバッファ番号Ｎ番まで検索しても、優先度「３」のプリントジョブが無かったときは、優先度を一つ下げて「２」とし、同様の検索を行う。以降、順次優先度を一つずつ下げて検索を行い、該当するプリントジョブを見つけるとそのプリントジョブをプリンタインターフェース部１６に出力すると共に、対応するフラグをオフにする。
【００２７】
プリンタインターフェース部１６は、プリントジョブ処理部１４から入力されるプリントジョブをプリンタ３へ出力する。プリンタインターフェース部１６は、プリンタ３の処理状況をモニターし、プリント可否信号（printstatus）をプリントジョブ処理部１４に出力する。プリンタ３がプリント処理中の場合は、プリント可否信号をビジー信号（printstatus=BUSY）にし、プリント処理が終了し、新たなプリント処理が可能な状態となると、ビジー信号からレディ信号（printstatus=READY）に切り替える。したがって、プリントジョブ処理部１４は、プリント可否信号（printstatus）をチェックすることにより、プリンタ３が新たなプリントジョブの処理が可能な状態かどうかの判断をすることができる。
【００２８】
図５は、優先度設定部１３による優先度（priority）設定処理のフローチャートを示す。
当該フローチャートに示す処理をその内容とするプログラムは、プリンタサーバＴＵ０の電源投入の際に起動される。先ず、初期設定として、優先度格納テーブル１３１の全ての端末番号の受信時刻（tl）の格納領域（図３）に当該プログラム起動時の時刻（time）を格納し、バッファメモリの検索対象（端末番号）を特定する変数「ｐ」に１を格納する（ステップＳ１）。
【００２９】
次に、バッファメモリを検索し、端末番号１（ｐ＝１）の受信情報「ｊｏｂ［１］」の有無を確認し（ステップＳ２）、有れば、優先度格納テーブル１３１の端末番号１の受信時刻（tl）をその時の時刻（time）に更新し（ステップＳ３）、無ければ、ステップＳ３をスキップして、そのときの時刻（time）から、受信時刻（tl）を減算して経過時間（tk）を求め、優先度格納テーブル１３１の端末番号１の経過時間を更新する（ステップＳ４）。
【００３０】
続いて、端末番号１の経過時間（tk）の長短に応じて、優先度格納テーブル１３１の、端末番号１の優先度（priority）を更新する。端末番号１の経過時間（tk）が、第１の基準時間TK1未満の場合は（ステップＳ５でＹｅｓ）優先度（priority）を０とし（ステップＳ６）、第１の基準時間TK1以上第２の基準時間TK2未満の場合は（ステップＳ７でＹｅｓ）優先度（priority）を１とし（ステップＳ８）、第２の基準時間TK2以上の場合は（ステップＳ７でＮｏ）優先度（priority）を２とする（ステップＳ９）。
【００３１】
上記した処理（ステップＳ２〜ステップＳ９）を、端末番号Ｐ番までくり返し（ステップＳ１０）、さらに、端末番号Ｐ番についての処理が終了すると（ステップＳ１１でＹｅｓ）、変数「ｐ」を１に設定する（ステップＳ１２）といった具合に、端末番号１〜Ｐの優先度（priority）の更新を繰り返す。この更新のくり返し周期は、極めて短い時間に設定されている。
【００３２】
図６は、プリントジョブ処理部１４による、プリントジョブバッファ１４１へのプリントジョブの格納と、格納されているプリントジョブの内、次に行うプリントジョブの決定の処理に関するフローチャートである。
本フローチャートは、プリントジョブの格納処理（ステップＳ２０〜Ｓ２１）とプリントジョブバッファ１４１の優先度更新処理（ステップＳ３０〜Ｓ３６）と次にプリント処理するプリントジョブの決定処理（ステップＳ４０〜Ｓ４８）とに大きく分けられる。
【００３３】
先ず、プリントジョブ処理部１４は、ＬＡＮインターフェース部１２（図２）からプリントジョブの入力があると（ステップＳ２０でＹｅｓ）、当該プリントジョブおよび上述したその他必要な項目をプリントジョブバッファ１４１に格納する（ステップＳ２１）。
そして、プリンタインターフェース部１６（図２）からのプリント可否信号（printstatus）が、ビジー信号（printstatus=BUSY）かレディ信号（printstatus=READY）かをチェックし（ステップＳ２２）、ビジー信号（printstatus=BUSY）であれば（ステップＳ２２でＮｏ）、ステップＳ２０へ戻り、レディ信号（printstatus=READY）であれば（ステップＳ２２でＹｅｓ）、優先度更新処理（ステップＳ３０〜Ｓ３６）に移る。
【００３４】
優先度更新処理では、先ず、プリントジョブバッファ１４１の更新対象端末番号を特定するための変数「ｎ」に１を格納し（ステップＳ３０）、バッファ番号１（ｎ＝１）のフラグがオン状態であるか否かを判定する（ステップＳ３１）。オン状態でなければ（ステップＳ３１でＮｏ）変数「ｎ」を１だけインクリメントして、更新対象端末番号を切り替え、オン状態であれば（ステップＳ３１でＹｅｓ）、ステップＳ３２へ進む。
【００３５】
ステップＳ３２では、バッファ番号ｎ番の格納領域に格納されている端末番号（ｐ）と受信時刻（tr）とを、優先度変更部１５に出力し、優先度変更部１５に優先度を決定させる（ステップＳ３３）。
図７に、優先度変更部１５による優先度決定処理のフローチャートを示す。
優先度変更部１５は、プリントジョブ処理部１４から入力された受信時刻（tr）から現在までの経過時間が、所定の時間(TRS）よりも短いか否かを判定する（ステップＳ５０）。
【００３６】
短い場合は（ステップＳ５０でＹｅｓ）、プリントジョブ処理部１４から入力された端末番号（ｐ）に対応する優先度（priority）（優先度格納テーブル１３１に格納されている優先度）をそのまま、プリントジョブバッファ１４１に格納すべき優先度としてプリントジョブ処理部１４に出力し（ステップＳ５１）、短くない場合は（ステップＳ５０でＮｏ）、プリントジョブ処理部１４から入力された端末番号（ｐ）に対応する優先度（priority）（優先度格納テーブル１３１に格納されている優先度）に１を加えた値を、プリントジョブバッファ１４１に格納すべき優先度としてプリントジョブ処理部１４に出力する（ステップＳ５２）。
【００３７】
図６に戻り、プリントジョブ処理部１４は優先度変更部１５から入力された優先度（priority）を、プリントジョブバッファ１４１の端末番号ｐに対応する格納領域に格納する（ステップＳ３４）。
以降、ステップＳ３１〜Ｓ３５の処理をくり返し、順次、バッファ番号を切り替えて、プリントジョブが格納されているバッファ番号の優先度を更新する。バッファ番号Ｎ番まで終了すると（ステップＳ３６でＹｅｓ）、プリントジョブの決定処理（ステップＳ４０〜Ｓ４８）に移行する。
【００３８】
先ず、優先度を特定するための変数「ｉ」に３を格納し（ステップＳ４０）、バッファ番号１から順に（ステップＳ４１、Ｓ４５）、フラグがオンされているバッファ番号（ステップＳ４２でＹｅｓ）の優先度が３（ｉ＝３）以上か否かを判定する（ステップＳ４３）。
優先度が３以上であると最初に判定されたバッファ番号のプリントジョブを、プリンタインターフェース部１６に出力する（ステップＳ４４）。なお、プリントジョブがプリンタインターフェース部１６を介してプリンタ３に出力され、当該プリントジョブのプリント処理が開始されると当該処理が終了するまで、プリント可否信号は、ビジー信号となるので、その間、プリントジョブ処理部１４は、プリントジョブの格納処理を実行するのみとなる。
【００３９】
バッファ番号Ｎ番まで検索しても（ステップＳ４６でＹｅｓ）、優先度が３以上に該当するものが無かった場合は、優先度「ｉ」を、順次、一つずつ下げ（ステップＳ４７）、各優先度において、上記と同様の処理（ステップＳ４１〜Ｓ４６）を行う。
最も低い優先度０まで検索しても、該当するプリントジョブが無かった場合（ステップＳ４８でＹｅｓ）、すなわち、プリントジョブバッファ１４１にプリントジョブが一件も格納されていなかった場合には、ステップＳ２０に戻り、プリントジョブの入力待ちとなる。
【００４０】
以上説明したように、実施の形態に係るプリンタサーバＴＵ０によれば、各端末装置における最新のプリントジョブの受付時からの経過時間が長いほど高くなる優先度が各端末装置ごとに設定される。そして、プリンタ３によるプリント処理が可能になった時点で、複数のプリントジョブがプリント処理待ち状態になっている場合に、原則として、その時点での、優先度の高い端末装置からのプリントジョブがそれよりも優先度の低い端末装置からのプリントジョブに優先されて、次にプリント処理を行うプリントジョブに決定される。
【００４１】
その結果、プリントジョブがプリンタサーバＴＵ０に受け入れられた順番やプリントジョブバッファ１４１に格納されている件数にかかわらず、優先度の高い端末装置の使用者、すなわち、席を離れて出力用紙をプリンタ３まで取りにいっていると考えられる使用者（プリント処理を急ぐ使用者）のプリントジョブが、優先度の低い端末装置の使用者、すなわち、プリント指示してから間が無いため、席について継続して文書などの作成作業をしている可能性の高い使用者（プリント処理を特に急がないと考えられる使用者）のプリントジョブに優先して処理されることとなる。
【００４２】
以上、本発明を実施の形態に基づいて説明してきたが、本発明は、上記した形態に限られないことはもちろんであり、その他、以下に記すような形態が考えられる。
（１）上記実施の形態では、プリンタサーバＴＵ０が受信してから相当の時間（TRS）が経過しているプリントジョブについては、その端末装置によって定まる優先度（priority）を一つ繰り上げる変更を行なったが、これに限らず、本発明の基本的な考え、すなわち、最新のプリントジョブの受付時からの経過時間によって定まる優先度の高い端末装置からのプリントジョブほどプリント処理を優先して行うという考えを貫くため、上記繰り上げ変更を行なわないこととしてもよい。
【００４３】
そのため、優先度変更部１５を廃止して、プリントジョブバッファ１４１の優先度格納領域には、優先度格納テーブル１３１に格納されている優先度をそのまま格納するようにする。これを実現するために、図６のフローチャートのステップＳ３２では、プリントジョブ処理部１４は、バッファ番号ｎ番の格納領域に格納されている端末番号（ｐ）のみを、優先度設定部１３に出力する。そして、ステップＳ３２および図７のフローチャートの処理を廃止し、図６のステップＳ３４では、優先度設定部１３が、プリントジョブ処理部１４から入力のあった端末番号（ｐ）に対応する優先度を優先度格納テーブル１３１から読みだして、プリントジョブ処理部１４に出力するようにする。
（２）上記実施の形態では、同じ優先度のプリントジョブが複数存在した場合に、プリントジョブバッファの最も若いバッファ番号の格納領域に格納されているプリントジョブを次にプリント処理させるプリントジョブに選んだ。すなわち、優先度が同じであるプリントジョブの間では、プリンタサーバＴＵ０が受信した順番とは無関係に次にプリント処理させるプリントジョブを選択したが、これに限らず、同じ優先度のプリントジョブが複数存在する場合には、プリントジョブバッファ１４１（図４）の受信時刻（tr）を参照し、その中で、最も受信時刻（tr）の早いプリントジョブを、次にプリント処理させるプリントジョブに選ぶようにしてもよい。
【００４４】
その結果、同じ端末装置からのプリントジョブが複数、プリント処理待ち状態になっている場合には、そのうちのプリンタサーバで最先に受付けられた（受信された）プリントジョブからプリント処理が実行されることになる。
（３）上記実施の形態では、各端末装置における最新のプリントジョブの受付時からの経過時間の長短の度合によって数段階に設定される優先度を参照して、次にプリント処理させるプリントジョブを決定したがこれに限らず、複数のプリントジョブがプリント処理待ち状態になった場合には、優先度格納テーブル１３１（図３）の経過時間（tk）を参照し、経過時間（tk）が最も長い端末装置からのプリントジョブの中から、次にプリント処理させるプリントジョブを決定するようにしてもよい。
（４）上記実施の形態のプリンタシステムにおいては、パソコンをプリンタサーバに用いることとしたが、これに限らず、パソコンに代えて、プリンタサーバ専用機を用いてもよい。
【００４５】
あるいは、パソコン（プリンタサーバ）とプリンタに代えて、ネットワーク対応プリンタ、すなわち、プリンタサーバ内蔵型のプリンタを用いてもよい。
【００４６】
【発明の効果】
以上説明したように、本発明に係るプリンタサーバによれば、複数のプリントジョブがプリント処理待ち状態になった場合に、最新のプリントジョブの受付時からの経過時間に応じて各端末装置ごとに設定される優先度に基づいてプリント処理がおこなわれるので、例えば、前記経過時間が長いほど高い優先度を設定するようにすれば、前記経過時間が長い端末装置（優先度の高い端末装置）におけるプリントジョブ、すなわち、プリント処理を急いでいると考えられる使用者の端末装置におけるプリントジョブほど優先してプリント処理される。
【図面の簡単な説明】
【図１】プリンタシステムの全体構成を示す図である。
【図２】プリンタサーバを示す機能ブロック図の一部である。
【図３】優先度格納テーブルを示す図である。
【図４】プリントジョブバッファを示す図である。
【図５】優先度設定部による優先度（priority）設定処理のフローチャートを示す図である。
【図６】プリントジョブ処理部による、プリントジョブバッファへのプリントジョブの格納と、格納されているプリントジョブの内、次に行うプリントジョブの決定の処理に関するフローチャートである。
【図７】優先度変更部による優先度変更処理のフローチャートを示す。
【符号の説明】
３    プリンタ
１１    タイマー部
１２    ＬＡＮインターフェース部
１３    優先度設定部
１４    プリントジョブ処理部
１５    優先度変更部
１６    プリンタインターフェース部
１３１    優先度格納テーブル
１４１    プリントジョブバッファ
ＴＵ０    プリンタサーバ
ＴＵ０〜ＴＵＰ    端末装置
【図１】
0003791280.tif 000002
【図２】
0003791280.tif 000003
【図３】
0003791280.tif 000004
【図４】
0003791280.tif 000005
【図５】
0003791280.tif 000006
【図６】
0003791280.tif 000007
【図７】
0003791280.tif 000008