(57)【要約】【課題】送信パフォーマンスの向上並びにコントローラの有効利用を図ることができる情報処理システムを提供する。【解決手段】周辺機器１，２からイベントが送信された際にコントローラ４でイベント上限値を確認したうえでタスクの生成並びにバッファ３の領域が確保され、コントローラ４から送信されたタスクの処理が完了するまでの間にコントローラ４に別のイベントが送信されていない場合にはタスクの消去並びにバッファ３の領域開放が実行され、イベント上限値に達していない状態で別のイベントが送信された場合には新たなタスクの生成並びにバッファ３の領域が確保され、イベント上限値に達している状態で別のイベントが送信された場合にはタスクの処理が完了した時点で新たなタスクの生成並びにバッファ３の領域が再利用される。【選択図】      図２
2008276739.tif 000002
【特許請求の範囲】
【請求項１】
一つ以上の周辺機器から送信されたイベントに基づいて生成されたタスクをバッファに記憶したうえで処理する情報処理システムにおいて、
処理可能なイベント上限値が前記タスクの数又は前記バッファの領域を考慮して設定され、
前記一つ以上の周辺機器から前記イベントが送信された際に前記イベント上限値を確認したうえで前記タスクの生成並びに前記バッファの領域が確保され、
送信された前記タスクの処理が完了するまでの間に前記一つ以上の周辺機器から別のイベントが送信されているか否かが判定され、前記別のイベントが送信されていない場合には前記タスクの処理が完了した時点で前記タスクが消去されると共に前記バッファの領域が開放され、前記別のイベントが送信され且つ前記イベント上限値に達していない場合には新たなタスクの生成並びに前記バッファの領域が確保され、前記別のイベントが送信され且つ前記イベント上限値に達していた場合には前記タスクの処理が完了した時点で新たなタスクの生成並びに前記バッファの領域が再利用されることを特徴とする情報処理システム。
【請求項２】
前記バッファの領域を再利用する際に前記新たに生成したタスクのためのバッファ領域が不足若しくは余剰となる場合には、前記バッファの領域を再設定することを特徴とする請求項１に記載の情報処理システム。
【請求項３】
前記タスクを生成する装置は、前記タスク又は前記新たなタスクの容量を予め設定された任意の容量以下とすることを特徴とする請求項１又は請求項２に記載の情報処理システム。
【請求項４】
前記タスクを生成する装置は、前記周辺機器のインターフェースに対応したタスクを生成することを特徴とする請求項１乃至請求項３の何れかに記載の情報処理システム。
【請求項５】
前記周辺機器がパーソナルコンピュータであり、前記タスクを処理する装置が画像形成装置であり、前記タスクを生成する装置が、前記画像形成装置内の制御回路であることを特徴とする請求項１乃至請求項４の何れかに記載の情報処理システム。
【請求項６】
前記周辺機器がパーソナルコンピュータであり、前記タスクを処理する装置が画像形成装置であり、前記タスクを生成する装置が、前記パーソナルコンピュータと前記画像形成装置とを接続するプリントサーバであることを特徴とする請求項１乃至請求項４の何れかに記載の情報処理システム。
【請求項７】
一つ以上の周辺機器から送信されたイベントに基づいて生成されたタスクをバッファに記憶したうえで処理するために、
前記タスクの数又は前記バッファの領域を考慮して処理可能なイベントのイベント上限値を設定する設定ステップと、前記一つ以上の周辺機器から前記イベントが送信された際に前記イベント上限値を確認したうえで前記タスクの生成並びに前記バッファの領域を確保するステップと、送信された前記タスクの処理が完了するまでの間に前記一つ以上の周辺機器から別のイベントが送信されているか否かを判定する判定ステップと、前記別のイベントが送信されていない場合に前記タスクの処理が完了した時点で前記タスクを消去すると共に前記バッファの領域を開放する消去・開放ステップと、前記別のイベントが送信され且つ前記イベント上限値に達していない場合に新たなタスクの生成並びに前記バッファの領域を確保する生成・確保ステップと、前記別のイベントが送信され且つ前記イベント上限値に達していた場合に前記タスクの処理が完了した時点で新たなタスクの生成並びに前記バッファの領域を再利用する生成・再利用ステップと、をコンピュータに実行させることを特徴とする情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一つ以上の周辺機器から送信されたイベントに基づいて生成されたタスクをバッファに記憶したうえで処理する情報処理システム及び情報処理プログラムに関する。
【背景技術】
【０００２】
従来、例えば、パーソナルコンピュータからプリンタ等の画像形成装置に印刷データを送信する場合、画像形成装置が受信した印刷データに基づいて画像形成処理の実行する速度は、コンピュータと画像形成装置との間を接続する通信速度よりも遥かに遅い。
【０００３】
従って、一つ以上のパーソナルコンピュータから画像形成装置に次々と印刷データを送信してしまうと、画像形成処理が追いつかずに途切れ途切れに画像形成処理されてしまうため、コンピュータと画像形成装置との間に介装されたプリントサーバや画像形成装置には印刷データ処理用の半導体等のバッファが設けられており、受信した印刷データを一時的に蓄えて印刷速度にあわせて順次印刷データを読み出して画像形成処理を行なうのが一般的である。
【０００４】
このように、一つ以上の周辺機器（例えば、パーソナルコンピュータ）から送信されたイベント（印刷データ）に基づいてコントローラ（プリントサーバ等）にてタスクが生成され、このコントローラで生成されたタスクをバッファに記憶したうえで処理装置（画像形成装置）で処理を実行する情報処理システムが周知である。
【０００５】
また、このような情報処理システムでは、例えば、物理アドレス上で連続である中間バッファと、入出力機器と中間バッファとの間で物理アドレスを対象としてデータ転送を行なうバッファ機器間転送手段と、最終的なデータ転送対象であるターゲットバッファと中間バッファとの間でデータ転送を行なうバッファ間転送手段と、入出力機器に応じてデータ転送の単位とタイミングとに関してバッファ機器間転送手段とバッファ間転送手段との制御を行なうデータ転送制御手段を備え、周辺機器からホストデバイスにデータを送信する際に、予め中間バッファとしての送信バッファを用意したものが知られている（例えば、特許文献１参照。）。
【特許文献１】特開平０２−２１４９６０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
ところが、上記の如く構成された情報処理システムにあっては、上述した中間バッファはホストデバイスの状況（データを受け付けないなど）によっては、即座に領域がフルになってしまうため、送信パフォーマンスに影響がでてしまうばかりでなく、コントローラのリソースを無駄に消費してしまうという問題があった。
【０００７】
そこで、本発明は、上記事情を考慮し、送信パフォーマンスの向上並びにコントローラの有効利用を図ることができる情報処理システム及び情報処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の情報処理システムは、一つ以上の周辺機器から送信されたイベントに基づいて生成されたタスクをバッファに記憶したうえで処理する情報処理システムにおいて、処理可能なイベント上限値が前記タスクの数又は前記バッファの領域を考慮して設定され、前記一つ以上の周辺機器から前記イベントが送信された際に前記イベント上限値を確認したうえで前記タスクの生成並びに前記バッファの領域が確保され、送信された前記タスクの処理が完了するまでの間に前記一つ以上の周辺機器から別のイベントが送信されているか否かが判定され、前記別のイベントが送信されていない場合には前記タスクの処理が完了した時点で前記タスクが消去されると共に前記バッファの領域が開放され、前記別のイベントが送信され且つ前記イベント上限値に達していない場合には新たなタスクの生成並びに前記バッファの領域が確保され、前記別のイベントが送信され且つ前記イベント上限値に達していた場合には前記タスクの処理が完了した時点で新たなタスクの生成並びに前記バッファの領域が再利用されることを特徴とする。
【０００９】
この際、バッファの領域を再利用する際に新たに生成したタスクのためのバッファ領域が不足若しくは余剰となる場合には、バッファの領域を再設定することが好ましい。
【００１０】
尚、タスクを生成する際には、タスク又は新たなタスクの容量を予め設定された任意の容量以下で生成することが好ましく、周辺機器のインターフェースに対応したタスクを生成することが好ましい。
【００１１】
また、周辺機器をパーソナルコンピュータ、タスクを処理する装置は画像形成装置とし、タスクを生成する装置は画像形成装置内の制御回路とすることができる。
【００１２】
さらに、タスクを生成する装置は、パーソナルコンピュータと画像形成装置とを接続するプリントサーバとすることができる。
【００１３】
また、本発明の情報処理プログラムは、一つ以上の周辺機器から送信されたイベントに基づいて生成されたタスクをバッファに記憶したうえで処理するために、前記タスクの数又は前記バッファの領域を考慮して処理可能なイベントのイベント上限値を設定する設定ステップと、前記一つ以上の周辺機器から前記イベントが送信された際に前記イベント上限値を確認したうえで前記タスクの生成並びに前記バッファの領域を確保するステップと、送信された前記タスクの処理が完了するまでの間に前記一つ以上の周辺機器から別のイベントが送信されているか否かを判定する判定ステップと、前記別のイベントが送信されていない場合に前記タスクの処理が完了した時点で前記タスクを消去すると共に前記バッファの領域を開放する消去・開放ステップと、前記別のイベントが送信され且つ前記イベント上限値に達していない場合に新たなタスクの生成並びに前記バッファの領域を確保する生成・確保ステップと、前記別のイベントが送信され且つ前記イベント上限値に達していた場合に前記タスクの処理が完了した時点で新たなタスクの生成並びに前記バッファの領域を再利用する生成・再利用ステップと、をコンピュータに実行させることを特徴とする。
【発明の効果】
【００１４】
本発明の情報処理システムは、送信パフォーマンスの向上並びにコントローラの有効利用を図ることができる。
【発明を実施するための最良の形態】
【００１５】
次に、本発明の一実施形態に係る情報処理システムについて、図面を参照して説明する。
【００１６】
図１は本発明の一実施形態に係る情報処理システムにおけるイベント上限値に達していない場合の処理シーケンスの説明図、図２は本発明の一実施形態に係る情報処理システムにおけるイベント上限値に達した場合の処理シーケンスの説明図、図３は本発明の一実施形態に係る情報処理システムのブロック構成図である。
【００１７】
図３に示すシステムは、パーソナルコンピュータ等の周辺機器１，２、バッファ３およびコントローラ４を有する。バッファ３は、画像形成装置等の処理装置（タスクを処理するデバイス）内に設けられ、タスクを記憶される。コントローラ４は、画像形成装置等の処理装置に設けられた制御回路、あるいは周辺機器１，２とバッファ３とを接続するプリントサーバ等である。コントローラ４は、例えば、コンピュータにより情報処理プログラムが実行されることで実現される。情報処理プログラムは、半導体メモリ、光ディスク、磁気ディスクなどのコンピュータ読み取り可能な記録媒体に格納される。
【００１８】
パーソナルコンピュータである周辺機器１，２からは、例えば、インストールされたアプリケーションを利用した印刷データ等の通信のイベント５，６，７がコントローラ４に送信される。
【００１９】
コントローラ４は、通信に利用することができるシステムリソースの上限値をイベント上限値として、その初期化時に設定する。ここでは、イベント上限値は、コントローラ４で生成されるタスクの数の上限値及び／又はバッファ３の領域サイズの上限値とされている。また、コントローラ４は、イベント５，６，７を受信すると、各イベント５，６，７のデータフォーマット等を参照し、各イベント５，６，７に対応する各タスク１１，１２，１３を生成する。コントローラ４は、バッファ３などのシステムリソースなど参照して現在のタスクの数およびバッファの残量を特定し、イベント上限値を基準に、イベント上限値を超えるタスクの数とならないようにタスク１１，１２，１３を生成する。また、コントローラ４は、バッファ領域サイズ（確保されるバッファ領域の合計サイズ）がイベント上限値を超えないように領域１４，１５，１６を確保し、そのタスク１１，１２，１３をバッファ３の領域１４，１５，１６へ記憶させる。デバイスでは、バッファ３に格納されたタスクの処理が実行される。
【００２０】
具体的には、図１に示すように、パーソナルコンピュータである周辺機器１からイベント５がコントローラ４に送信されると、コントローラ４は、システムリソースの状態がイベント上限値の条件を満たすことをチェックしたうえでタスク１１を生成する。また、コントローラ４は、そのタスク１１に必要なバッファ３の領域１４を確保し、その生成したタスク１１をその領域１４に記憶したうえでデータ処理（例えば、通信処理）をさせる。
【００２１】
ここで、コントローラ４は、コントローラ４からバッファ３へと送信されたタスク１１の処理が完了するまでの間に周辺機器１および／または周辺機器２から別のイベント６が受信されているか否かが判定され、周辺機器１および／または周辺機器２から別のイベント６が受信される前にタスク１１の処理が完了している場合にはタスク１１を消去すると共にバッファ３の領域１４を開放する。
【００２２】
その後、別のイベント６がコントローラ４により受信された場合には、イベント５と同様の処理が実行される。このイベント６のタスク１２が処理されている最中に、新たなイベント７を受信した場合、コントローラ４は、デバイスからタスク１２の処理完了通知を受け取っていないことから、イベント６のタスク１２が処理されるときにチェックしたタスク数並びにバッファ領域サイズに基づいて、新たなイベント７について新たなタスクを生成した場合のタスク数並びにバッファ領域サイズを計算し、新たなイベント７を処理したとしてもイベント上限値に達していない場合には新たなタスク１３を生成するとともに新たにデバイスのバッファ３に領域１６を確保する。そして、タスク１３は、バッファ３の領域１６に記憶され、タスク１２の後に処理される。このように、各タスク１２，１３が順次処理されると共に、タスク１３の処理完了と共にタスク１２，１３の消去並びに領域１５，１６の開放がコントローラ４により実行される。
【００２３】
一方、新たなイベント７を処理するとイベント上限値に達してしまう場合には、図２に示すように、タスク１２の処理が完了した時点でコントローラ４は、タスク１２を引き続きタスク１３として再利用するとともに、バッファ３の領域１５を領域１６として再利用する。
【００２４】
この際、バッファ３の領域１５を領域１６として再利用する際に、新たに生成したタスク１３のためのバッファ３の領域１６が不足若しくは余剰となる場合には、バッファ３の領域１５を増減して再設定する。
【００２５】
このように、上記実施形態の情報処理システムによれば、アプリケーションが実行されている周辺機器１，２からの処理（イベント）に対して動的にタスクの生成並びにバッファ領域の確保をすることによって、コントローラ４の有効利用を図ると同時に個々の送信先に対する送信速度を劣化させないようにすることができる。この際、バッファ３等はそのままとして従来のコントローラのソフトウェア（プログラム）のみを変更することで低コストで上述のような処理を実施することが可能であるという利点もある。また、このような制御によれば、例えば以下のように送信タスクに属性を付加することで、領域がフルになりにくいタスクを生成することができる等、より柔軟な送信制御を実現することが可能となる。
（ａ）優先度の付与
（ｂ）予め設定された任意の容量へのバッファサイズ／タスクサイズの限定（例えば、５００ＫＢ以下）
（ｃ）通信に使用されるインターフェース（例えば、ネットワーク用やＵＳＢ用等）の固定
【００２６】
ところで、上記実施の形態では、本発明の情報処理システムをパーソナルコンピュータと画像形成装置との関係にて説明したが、他の装置間の通信処理のイベントにも適用可能である。
【００２７】
この際、例えば、一定回数タスクフルが発生した場合にはイベント上限値を増加させ、逆に一定期間中にタスクフルが発生しなかった場合にはイベント上限値を減少させるといったように、各タスクのバッファ領域の配分比の設定や領域変更に伴う学習能力を利用した比率の変更等も可能である。
【図面の簡単な説明】
【００２８】
【図１】本発明の一実施形態に係る情報処理システムにおけるイベント上限値に達していない場合の処理シーケンスの説明図である。
【図２】本発明の一実施形態に係る情報処理システムにおけるイベント上限値に達した場合の処理シーケンスの説明図である。
【図３】本発明の一実施形態に係る情報処理システムのブロック構成図である。
【符号の説明】
【００２９】
１，２  周辺機器
３  バッファ
４  コントローラ
【図１】
2008276739.tif 000003
【図２】
2008276739.tif 000004
【図３】
2008276739.tif 000005