JP2004171150A - Information processor and method and printer system - Google Patents
Information processor and method and printer system Download PDFInfo
- Publication number
- JP2004171150A JP2004171150A JP2002334125A JP2002334125A JP2004171150A JP 2004171150 A JP2004171150 A JP 2004171150A JP 2002334125 A JP2002334125 A JP 2002334125A JP 2002334125 A JP2002334125 A JP 2002334125A JP 2004171150 A JP2004171150 A JP 2004171150A
- Authority
- JP
- Japan
- Prior art keywords
- data
- buffer
- stored
- client device
- response
- 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.)
- Pending
Links
Images
Landscapes
- Information Transfer Systems (AREA)
Abstract
Description
【0001】
【発明の属する技術分野】
本発明は、データ通信に関する応答タイミングを制御するための情報処理技術に関し、特に、デジタルカメラ等のクライアント装置からプリンタ装置へデータを送信する場合に適した情報処理技術に関する。
【0002】
【従来の技術】
例えば、ブルートゥースにおけるOBEX層などでは、送信側は、データ等を送信(PUT)した場合(図8:S600)、そのレスポンス(成功/失敗)が得られるまで待機し(図8:S601)、レスポンスを得た後に次の動作(例えば、次のデータ送信等)を実行するというプロトコルを採る(特許文献1参照)。以下、このタイプの通信プロトコルを「OBEX層タイププロトコル」と呼ぶこととする。ブルートゥース
【特許文献1】特開2002−111784号公報
【発明が解決しようとする課題】
OBEX層タイププロトコルを用いて、例えば、送信側(例えば、パソコン、デジタルカメラ、PDAなど)から印刷データを送信し、受信側(例えば、プリンタ)において受信した印刷データに基づいて印刷を実行するシステムを考える。このようなシステムでは、受信側においてバッファがフルの状況で更に送信側からデータが送信されてきた場合(またはデータ受信途中でバッファがフルとなってしまった場合)、受信側から送信側へレスポンス(失敗)を返す構成を採る場合が多い。この場合、レスポンス(失敗)を受け取った送信側は、データ送信に対するレスポンス(成功)が得られるまで、データ送信を繰り返すことになる。
【0003】
しかし、データ送信を繰り返す上記構成では、データを送信する都度、所定の電力が消費されることから、送信側において必要以上に電力が消費されてしまうおそれがある。かかる問題は、電力消費が少ないとされるブルートゥース規格を採用する場合でも同様に生じる。特に、デジタルカメラ等の充電型のデバイスでは電力消費を抑えて長時間動作可能な構成とすることが望ましいため、データ通信を繰り返すことによる電力消費は無視できない大きな問題となる。
【0004】
ここで、上記問題の一つの解決方法として、データが送信されてきた場合、受信側において、該データに基づく印刷処理が終了して次のデータが受付可能となってから、レスポンス(成功)を返すように構成することが考えられる。この場合、送信側にレスポンス(成功)が戻ってきた段階で、送信側がデータを送信できる状態=受信側がデータを受信できる状態となり、上記のようなデータ送信の繰り返しを回避できる。
【0005】
しかし、かかる構成では、送信側は、データを送信する都度、常に印刷処理が終了するまで待たなければ(すなわち、レスポンス(成功)が返ってくるまで待たなければ)次の動作に移行することができないため、送信側における応答性(即応性)が大きく低下してしまうという問題が別に生じる。
【0006】
そこで、本発明は、データ送信の繰り返しに起因する問題を解消しつつ、送信側における良好な応答性を確保して、データ(印刷データ)の送受信を行うことができる枠組みを提供することを目的とする。
【0007】
【課題を解決するための手段】
本発明の情報処理装置は、クライアント装置から送信されたデータをバッファに格納し、前記格納したデータに基づき所定処理を実行し、前記所定処理の実行に応じて前記バッファに格納されているデータを解放する機能を備えた情報処理装置であって、クライアント装置からデータ送信に関する要求を受け付けた場合、前記バッファの空き状態に基づいて送信タイミングを制御して、前記要求に対する応答を前記クライアント装置に対して送信することを特徴とする。
【0008】
かかる構成によれば、バッファの空き状態に基づいて応答の送信タイミング制御することで、データ送信の繰り返しを回避しつつ、クライアント装置に対して良好な応答性を確保することができる。
【0009】
好適には、前記要求に基づくデータを前記バッファに格納できると判断した場合は、バッファに格納されているデータが解放されるのを待つことなく、前記クライアント装置に対して応答を送信し、前記要求に基づくデータをバッファに格納できないと判断した場合は、前記所定処理の実行に応じてバッファに格納されているデータが解放されるのを待ち、前記要求に基づくデータを格納できるようになったタイミングで、前記クライアント装置に対して応答を送信することを特徴とする。
【0010】
かかる構成によれば、格納できる場合はバッファの解放を待つことなく送信することで、クライアント装置において良好な応答性を確保できる一方、格納できない場合はバッファの解放を待つことで、データ送信の繰り返しを回避することができる。
【0011】
好適には、前記要求に基づくデータをバッファに格納できないと判断した場合、前記所定処理を優先して実行することを特徴とする。
【0012】
かかる構成によれば、バッファに格納できない場合に所定処理を優先して実行することでバッファの解放を早めることができ、クライアント装置における応答性を改善することができる。
【0013】
本発明の情報処理システムは、少なくとも1つのクライアント装置と、クライアント装置から送信されたデータをバッファに格納し、前記格納したデータに基づき所定処理を実行し、前記所定処理の実行に応じて前記バッファに格納されているデータを解放する機能を備えた情報処理装置とを含む情報処理システムであって、前記情報処理装置は、前記クライアント装置からデータ送信に関する要求を受け付けた場合、前記バッファの空き状態に基づいて送信タイミングを制御して、前記要求に対する応答を前記クライアント装置に対して送信することを特徴とする。
【0014】
かかる構成によれば、バッファの空き状態に基づいて応答の送信タイミングを制御することで、データ送信の繰り返しを回避しつつ、クライアント装置における良好な応答性を確保できる
本発明のプリンタシステムは、請求項1乃至4のいずれか1項に記載の情報処理装置、または請求項5記載の情報処理システムを備え、前記所定処理が印刷制御処理であることを特徴とする。
【0015】
かかる構成によれば、デジカメ等のクライアント装置から印刷データを送信してプリンタで印刷する場合に、データ送信の繰り返しを回避しつつ、クライアント装置における良好な応答性を確保することができる。
【0016】
本発明の情報処理方法は、クライアント装置から送信されたデータをバッファに格納する工程と、前記格納したデータに基づき所定処理を実行する工程と、前記所定処理の実行に応じて前記バッファに格納されているデータを解放する工程とを備えた情報処理方法であって、更に、クライアント装置からデータ送信に関する要求を受け付けた場合、前記バッファの空き状態に基づいて送信タイミングを制御して、前記要求に対する応答を前記クライアント装置に対して送信する工程を備えたことを特徴とする。
【0017】
本発明の情報処理方法は、コンピュータにより実施することができるが、そのためのコンピュータプログラムは、CD−ROM、磁気ディスク、半導体メモリ及び通信ネットワークなどの各種の媒体を通じてコンピュータにインストールまたはロードすることができる。
【0018】
なお、本明細書において、「バッファの空き状態」とは、バッファの空き領域(未使用領域)の容量のみならず、バッファの使用領域の容量や、空き領域と使用領域の割合など、バッファの空きがどの程度あるかを示し得る情報であればよく、種々の場合を含むものである。
【0019】
また、本明細書において、手段とは、単に物理的手段を意味するものではなく、その手段が有する機能をソフトウェアによって実現する場合も含む。また、1つの手段が有する機能が2つ以上の物理的手段により実現されても、2つ以上の手段の機能が1つの物理的手段により実現されても良い。
【0020】
【発明の実施の形態】
(第1の実施形態)
図面を参照して本発明の第1の実施形態を説明する。図1は、本実施形態のプリンタ1のハードウェア構成を表すブロック図である。
【0021】
プリンタ1は、用紙をプリンタ内に供給する給紙機構10、印字を行う印刷エンジン11、及び用紙をプリンタ機外に排出する排紙機構12等により構成される動力機構部2を備える。印刷エンジン11は、紙送機構、キャリッジ機構、印刷ヘッドなどを含んで構成される。
【0022】
印刷エンジン11としては、レーザプリンタのようにページ単位で印刷するページプリンタ、インクジェットプリンタや熱転写プリンタのように1文字単位で印刷するシリアルプリンタ、1行単位で印刷するラインプリンタ等に対応する各種印刷エンジンを用いることができる。
【0023】
これら動力機構部2を制御し印刷動作を行わせるのは、CPU(プロセッサ)13、ROM14、RAM15、LCDパネル及びLCDコントローラ16、無線通信インタフェース(ブルートゥースIFなど)17、有線通信インタフェース18等からなる情報処理部3である。CPU13は、内部バスを介して各手段14〜18にアクセス可能に構成されており、デジタルカメラ等の端末装置やパソコン等のホスト装置から無線通信インタフェース17又は/及び有線通信インタフェース18を介して送られてくる印刷ジョブに従い、動力機構部2を制御して実際に印刷動作を行なわせる(以下、印刷ジョブを送信する側の装置をクライアント装置と呼ぶ)。なお、動力機構部2が独立してCPUを備えていてもよく、その場合は、動力機構部2のCPUが、パラレルインタフェース等を介してCPU13と通信を行い、印刷エンジン11を制御して印刷動作を行わせることになる。
【0024】
動力機構部2、情報処理部3の構成・動作は原則として従来のプリンタ装置の構成・動作と同様である。ただし、本プリンタ1の無線通信インタフェース17又は/及び有線通信インタフェース18は、クライアント装置との間で、OBEX層タイププロトコルに基づきデータ通信を行うことができる構成となっている。また、クライアント装置からデータ送信に関する要求を受け付けた場合、受信バッファの空き状態に基づいて送信タイミングを制御して、前記要求に対する応答を前記クライアント装置に対して送信する機能(応答タイミング制御機能)を備えている点で、従来の構成と異なっている。
【0025】
図2に、情報処理部3における主要な機能構成図を示す。図に示すように、情報処理部3は、受信/応答手段20、印刷制御手段21、受信バッファ22等を備えて構成される。上記の各手段は、ROM14又はRAM15に格納されるアプリケーションプログラムをCPU13が実行することにより機能的に実現される。また、受信バッファ22はRAM15の所定領域を使用して実現される。なお、情報処理部3は、上記の各手段のほか、一般的なプリンタが備える画像処理(画像伸長処理、サイズ変換処理、ノイズ除去処理など)手段などを備えることができる。
【0026】
以下、図3〜図7に示すフローチャートを参照して、受信/応答手段20、印刷制御手段21の動作について説明する。なお、各工程(符号が付与されていない部分的な工程を含む)は処理内容に矛盾を生じない範囲で任意に順番を変更して又は並列に実行することができる。
【0027】
(第1実施例)
本実施例では、印刷ジョブ(印刷データ)が固定サイズのパケットに分割されて送信される場合(例えば、ブルートゥース規格等の無線通信の場合)について説明する。
【0028】
図3は、受信/応答手段20の動作の一例を示すフローチャートである。ブルートゥース規格の場合、ここに示す受信/応答手段20の動作はOBEX層における動作の一つに対応するが、これに限定されるものではない。
【0029】
受信/応答手段20は、クライアント装置からインタフェース17又は/及び18を介してデータ送信に関する要求(本実施例ではパケット自体)が送信されてくるのを監視する(S100)。そして、パケットが送信されてきた場合、これを受信バッファ22に格納する(S101)。
【0030】
次に、受信/応答手段20は、受信バッファの空き容量をチェックし、(空き容量)>(パケットサイズ)が成立するかどうかを判断する(S102)。
【0031】
成立すると判断した場合、受信/応答手段20は、クライアント装置に対して、パケット送信に対応する応答を送信した後、S100に戻る(S103)。
【0032】
一方、成立しないと判断した場合、受信/応答手段20は、所定時間にわたりウエイトした後、S102に戻る(S104)。
【0033】
図4は、印刷制御手段21の動作の一例を示すフローチャートである。
【0034】
印刷制御手段21は、受信バッファ22に、印刷データを復元するために必要なパケットが格納されているかどうかを判断し、格納されている場合はS201に進む(S200)。
【0035】
次に、印刷制御手段21は、印刷制御処理を実行する(S201)。例えば、受信バッファ22から印刷データを復元するために必要なパケットを読み出して印刷データを復元し、前記復元した印刷データを解析し、ラスタ形式の印刷イメージを1バンド分又は1ページ分生成し、イメージバッファに格納する。また、印刷エンジン11等に対して所定の指示(印字要求、紙送り要求、給紙/排紙要求など)を出力し、所定単位分(例えば1パス分)の印刷イメージをイメージバッファから印刷エンジン11に転送するともに、印刷エンジン11を制御しながら印刷を実行する。また、イメージバッファに格納されている印刷イメージのうち、印刷が終了しているものについて、イメージバッファから解放する。
【0036】
このとき、印刷制御手段21は、印刷制御処理の実行に応じて、受信バッファ22に既に格納されているパケットのうち、印刷データの復元、印刷データの解析及び印刷イメージの生成(又は、印刷データの復元、印刷データの解析、印刷イメージの生成及び印刷の実行)が終了しているパケットについて、受信バッファ22から解放する(S202)。なお、図4では、S202は印刷制御処理(S201)に対して直列に置かれているが、印刷制御処理と並列に、又は印刷制御処理の途中で、S202を実行するように構成してもよい。
【0037】
印刷制御手段21は、処理対象の印刷データについて印刷制御処理等が終了した後、次の印刷データについて処理すべく、S200に戻る。
【0038】
このように、本実施形態では、受信バッファ22の空き容量に基づいてパケット(印刷データ)を格納できるかどうかを判断し、格納できると判断した場合は、印刷制御処理の実行に応じて受信バッファ22が解放されるのを待つことなく、クライアント装置へ応答を返す一方、格納できないと判断した場合は、印刷制御処理の実行に応じて受信バッファ22が解放されるまで待って、すなわちパケットを格納できるようになるまで待って、クライアント装置へ応答を返すように構成している。
【0039】
かかる構成のもとでは、受信バッファ22にパケットを格納できる場合、クライアント装置は間をおかずに送信許可要求に対する応答を受け取ることができるため、応答待ちの状態が短くなり、良好な応答性を確保することができる。
【0040】
一方、受信バッファ22にパケットを格納できない場合、クライアント装置は、受信バッファ22がパケットを格納できるようになるまで応答待ちの状態となってパケットを送信しないため、やはり従来のようにパケットを繰り返し送信するという状況は生じず、その結果、必要以上に電力を消費してしまうという従来の問題を解消することができる。
【0041】
(第2実施例)
第2実施例では、送信される印刷データのサイズが不定の場合について説明する。この場合、クライアント装置は、プリンタ装置に対して、まず印刷データの送信許可を要求する制御コマンド(これから送信する印刷データのデータサイズ情報を含む)を送信し、その応答を受けて次に印刷データを送信する枠組みを採る。
【0042】
図5は、第2実施例における受信/応答手段20の動作の一例を示すフローチャートである。
【0043】
受信/応答手段20は、クライアント装置からインタフェース17/18を介して制御コマンドが送信されてくるのを監視し、印刷データの送信許可を要求する制御コマンドが送信されてきた場合、S301に進む(S300)。
【0044】
受信/応答手段20は、受信バッファの空き容量をチェックし、(空き容量)>(これから送信される印刷データのサイズ)が成立するかどうかを判断する(S301)。
【0045】
成立すると判断した場合、受信/応答手段20は、クライアント装置に対して、送信許可要求に対応する応答を送信する(S302)。これを受けてクライアント装置は印刷データの送信を開始することになる。
【0046】
受信/応答手段20は、クライアント装置から印刷データが送信されてきた場合、これを受信バッファ22に格納する(S303)。そして、クライアント装置に対して、印刷データ送信に対応する応答を送信した後、S300に戻る(S304)。
【0047】
一方、成立しないと判断した場合、受信/応答手段20は、所定時間にわたりウエイトした後、S301に戻る(S305)。
【0048】
図6は、第2実施例における印刷制御手段21の動作の一例を示すフローチャートである。
【0049】
印刷制御手段21は、受信バッファ22に解析処理等の対象としていない印刷データが格納されているかどうかを判断し、格納されている場合はS401に進む(S400)。
【0050】
次に、印刷制御手段21は、印刷制御処理を実行する(S401)。すなわち、受信バッファ22から印刷ジョブを読み出して解析し、ラスタ形式の印刷イメージを1バンド分又は1ページ分生成し、イメージバッファに格納する。また、印刷エンジン11等に対して所定の指示(印字要求、紙送り要求、給紙/排紙要求など)を出力し、印刷エンジン11を制御しながら印刷を実行する。また、イメージバッファに格納されている印刷イメージのうち、印刷が終了しているものについて、イメージバッファから解放する。
【0051】
このとき、印刷制御手段21は、印刷制御処理の実行に応じて、受信バッファ22に既に格納されているデータのうち、解析及び印刷イメージの生成(又は、解析、印刷イメージの生成及び印刷の実行)が終了しているデータについて、受信バッファ22から解放する(S402)。なお、第1実施例と同様に、印刷制御処理と並列に、又は印刷制御処理の途中で、S402を実行するように構成してもよい。
【0052】
印刷制御手段21は、処理対象の印刷データについて印刷制御処理等が終了した後、次の印刷データについて処理すべく、S400に戻る。
【0053】
かかる構成のもとでは、受信バッファ22に印刷データを格納できる場合、クライアント装置は間をおかずに送信許可要求に対する応答を受け取ることができるため、応答待ちの状態が短くなり、良好な応答性を確保することができる。またこの場合、送信許可要求に続いて送信される印刷データについて受信バッファに格納できることが保証されるため、従来のように印刷データを繰り返し送信するという状況は生じない。
【0054】
一方、受信バッファ22に印刷データを格納できない場合、クライアント装置は、受信バッファ22が印刷データを格納できるようになるまで応答待ちの状態となって印刷データの送信を開始しないため、やはり従来のように印刷データを繰り返し送信するという状況は生じず、その結果、必要以上に電力を消費してしまうという従来の問題を解消することができる。
【0055】
(第3実施例)
第3実施例では、受信バッファの空き容量のチェック結果に基づき、印刷制御処理の優先度をコントロールする場合について説明する。
【0056】
第3実施例は、受信/応答制御手段20の処理(受信バッファ格納処理、応答制御処理など)、印刷制御手段21の処理(印刷制御処理、受信バッファ解放処理など)にそれぞれ優先度が設定されており、各処理が優先度に従ってリアルタイムOS上で排他的に実行される構成を前提とする。この場合、例えば、優先度が高い処理に対して実行時間をより多く割り当てたり、優先度が低い処理の実行中に、これよりも高い処理の実行要求があった場合に、優先度の低い処理の実行を中断して優先度の高い処理を実行するといった制御がなされることになる。
【0057】
図7は、第3実施例における受信/応答手段20の動作を示すフローチャートである。
【0058】
受信/応答手段20は、クライアント装置からインタフェース17/18を介してパケットが送信されてくるのを監視する(S500)。そして、パケットが送信されてきた場合、これを受信バッファ22に格納する(S501)。
【0059】
次に、受信/応答手段20は、受信バッファの空き容量をチェックし、(空き容量)>(パケットサイズ)が成立するかどうかを判断する(S502)。
【0060】
成立すると判断した場合、受信/応答手段20は、各手段の優先度を初期状態へ戻す(初期状態から変更されていない場合は何もしない)(S503)。そして、クライアント装置に対して、パケット送信に対応する応答を送信した後、S500に戻る(S504)。
【0061】
一方、成立しないと判断した場合、受信/応答手段20は、初期状態から、印刷制御処理が優先して実行される状態(例えば受信/応答手段20の処理等の優先度が印刷制御処理の優先度に対して相対的に下位となる状態)へ、優先度を変更する(既に初期状態から変更されている場合には何もしないか、又は印刷制御処理がより優先して実行されるように変更する)(S505)。そして、所定時間にわたりウエイトした後、S502に戻る(S506)。
【0062】
なお、第3実施例における印刷制御手段21の動作は、図3に示すフローチャートと同様であるため、説明を省略する。
【0063】
かかる構成のもとでは、受信バッファ22にデータを格納できない場合、印刷制御処理が優先して実行されることとなり、その結果、受信バッファ22の解放が早まってクライアント装置に対して早期に応答を返すことが可能となるため、クライアント装置における応答性を改善することができる。
【0064】
(その他)
本発明は上記実施形態に限定されることなく、種々に変形して適用することが可能である。
【0065】
例えば、上記実施形態では受信バッファの空き容量とデータサイズとの比較結果に基づいて応答の送信タイミングを制御する構成としているが、単純に受信バッファの空き容量の大小に基づいて応答の送信タイミングを制御する構成としてもよい。この場合、受信バッファの空き容量の大小に基づいて印刷制御処理の優先度の変更度合を制御するように構成してもよい。
【0066】
また例えば、上記実施形態ではプリンタを例として説明したが、本発明は、OBEX層タイププロトコルを用いてデータ通信を行う場合であれば、プリンタ以外の装置に対しても適用することができる。
【図面の簡単な説明】
【図1】本発明の第1の実施形態におけるプリンタ装置のハードウェア構成を示すブロック図である。
【図2】第1の実施形態における機能構成図を示すブロック図である。
【図3】第1実施例における受信/応答手段20の動作を示すフローチャートである。
【図4】第1実施例における印刷制御手段21の動作を示すフローチャートである。
【図5】第2実施例における受信/応答手段20の動作を示すフローチャートである。
【図6】第2実施例における印刷制御手段21の動作を示すフローチャートである。
【図7】第3実施例における受信/応答手段20の動作を示すフローチャートである。
【図8】OBEX層タイププロトコルを採る場合の、送信側の動作を示すフローチャートである。
【符号の説明】
1 プリンタ、2 動力機構部、3 情報処理部、10 給紙機構、11 印刷エンジン、12 排紙機構、13 CPU、14 ROM、15 RAM、16 LCDパネル及びLCDコントローラ、17 無線通信インタフェース、18 有線通信インタフェース、20 受信/応答手段、21 印刷制御手段、22 受信バッファ[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to an information processing technique for controlling response timing related to data communication, and more particularly to an information processing technique suitable for transmitting data from a client device such as a digital camera to a printer device.
[0002]
[Prior art]
For example, in the OBEX layer in Bluetooth or the like, when transmitting (PUT) data or the like (FIG. 8: S600), the transmitting side waits until a response (success / failure) is obtained (FIG. 8: S601), After that, a protocol of executing the next operation (for example, the next data transmission or the like) is adopted (see Patent Document 1). Hereinafter, this type of communication protocol is referred to as an “OBEX layer type protocol”. Bluetooth [Patent Document 1] Japanese Patent Application Laid-Open No. 2002-111784 [Problems to be Solved by the Invention]
A system in which print data is transmitted from, for example, a transmission side (for example, a personal computer, a digital camera, a PDA, etc.) using an OBEX layer type protocol, and printing is performed based on print data received at a reception side (for example, a printer). think of. In such a system, when data is further transmitted from the transmitting side while the buffer is full on the receiving side (or when the buffer becomes full during data reception), a response is sent from the receiving side to the transmitting side. It often adopts a configuration that returns (failure). In this case, the transmitting side that has received the response (failure) repeats data transmission until a response (success) to data transmission is obtained.
[0003]
However, in the above-described configuration in which data transmission is repeated, a predetermined amount of power is consumed every time data is transmitted, so that power may be consumed more than necessary on the transmission side. Such a problem similarly occurs even when adopting the Bluetooth standard, which is considered to have low power consumption. In particular, in a rechargeable device such as a digital camera, it is desirable to have a configuration in which power consumption can be suppressed and operation can be performed for a long time. Therefore, power consumption due to repeated data communication is a serious problem that cannot be ignored.
[0004]
Here, as one solution to the above problem, when data is transmitted, a response (success) is received on the receiving side after the printing process based on the data is completed and the next data can be accepted. It is conceivable to configure it to return. In this case, when the response (success) is returned to the transmitting side, the state in which the transmitting side can transmit data = the state in which the receiving side can receive data, and the above-described repetition of data transmission can be avoided.
[0005]
However, in such a configuration, each time data is transmitted, the transmission side may shift to the next operation unless it always waits until the print processing ends (that is, unless it waits for a response (success)). Since this is not possible, another problem arises that the responsiveness (responsiveness) on the transmitting side is greatly reduced.
[0006]
Accordingly, an object of the present invention is to provide a framework that can transmit and receive data (print data) while ensuring good responsiveness on the transmission side while solving the problem caused by repeated data transmission. And
[0007]
[Means for Solving the Problems]
The information processing device of the present invention stores the data transmitted from the client device in a buffer, executes a predetermined process based on the stored data, and converts the data stored in the buffer according to the execution of the predetermined process. An information processing apparatus having a function of releasing, when receiving a request related to data transmission from a client device, controlling a transmission timing based on an empty state of the buffer, and transmitting a response to the request to the client device. Transmission.
[0008]
According to such a configuration, by controlling the transmission timing of the response based on the empty state of the buffer, it is possible to secure a good responsiveness to the client device while avoiding repeated data transmission.
[0009]
Preferably, when it is determined that the data based on the request can be stored in the buffer, without waiting for the data stored in the buffer to be released, send a response to the client device, When it is determined that the data based on the request cannot be stored in the buffer, it is possible to store the data based on the request, waiting for the data stored in the buffer to be released according to the execution of the predetermined processing. A response is transmitted to the client device at a timing.
[0010]
According to such a configuration, if the data can be stored, the transmission is performed without waiting for the release of the buffer, so that good responsiveness can be ensured in the client device. Can be avoided.
[0011]
Preferably, when it is determined that the data based on the request cannot be stored in the buffer, the predetermined process is executed with priority.
[0012]
According to this configuration, when the data cannot be stored in the buffer, the predetermined process is preferentially executed, whereby the release of the buffer can be expedited, and the responsiveness in the client device can be improved.
[0013]
An information processing system of the present invention stores at least one client device and data transmitted from the client device in a buffer, executes a predetermined process based on the stored data, and executes the predetermined process based on the execution of the predetermined process. And an information processing device having a function of releasing data stored in the buffer, when the information processing device receives a request related to data transmission from the client device, And transmitting a response to the request to the client device.
[0014]
According to such a configuration, the printer system according to the present invention, which can ensure good responsiveness in the client device while avoiding repetition of data transmission by controlling the transmission timing of the response based on the empty state of the buffer, An information processing apparatus according to any one of claims 1 to 4, or an information processing system according to claim 5, wherein the predetermined process is a print control process.
[0015]
According to this configuration, when print data is transmitted from a client device such as a digital camera and printed by a printer, good responsiveness in the client device can be ensured while avoiding repeated data transmission.
[0016]
The information processing method according to the present invention includes a step of storing data transmitted from the client device in a buffer, a step of executing a predetermined process based on the stored data, and a process of storing the data in the buffer in response to the execution of the predetermined process. Releasing the data from the client device, further comprising, when a request for data transmission is received from the client device, controlling a transmission timing based on an empty state of the buffer to respond to the request. Transmitting a response to the client device.
[0017]
The information processing method of the present invention can be implemented by a computer, and a computer program therefor can be installed or loaded on the computer through various media such as a CD-ROM, a magnetic disk, a semiconductor memory, and a communication network. .
[0018]
In this specification, the “free state of the buffer” refers to not only the capacity of the free area (unused area) of the buffer but also the capacity of the used area of the buffer and the ratio of the free area to the used area. Any information may be used as long as it can indicate how much space is available, and includes various cases.
[0019]
Further, in the present specification, the term “means” does not simply mean a physical means, but also includes a case where a function of the means is realized by software. Further, the function of one unit may be realized by two or more physical units, or the function of two or more units may be realized by one physical unit.
[0020]
BEST MODE FOR CARRYING OUT THE INVENTION
(1st Embodiment)
A first embodiment of the present invention will be described with reference to the drawings. FIG. 1 is a block diagram illustrating a hardware configuration of the printer 1 according to the present embodiment.
[0021]
The printer 1 includes a paper feed mechanism 10 for feeding paper into the printer, a print engine 11 for printing, and a power mechanism 2 including a paper discharge mechanism 12 for discharging paper to the outside of the printer. The print engine 11 includes a paper feed mechanism, a carriage mechanism, a print head, and the like.
[0022]
The print engine 11 includes various types of printing corresponding to a page printer that prints in units of pages such as a laser printer, a serial printer that prints in units of one character such as an ink jet printer or a thermal transfer printer, and a line printer that prints in units of lines. An engine can be used.
[0023]
The power mechanism 2 is controlled by the CPU (processor) 13, the
[0024]
The configuration and operation of the power mechanism unit 2 and the information processing unit 3 are basically the same as the configuration and operation of the conventional printer. However, the
[0025]
FIG. 2 shows a main functional configuration diagram of the information processing unit 3. As shown in the figure, the information processing unit 3 includes a reception /
[0026]
Hereinafter, the operations of the reception / response means 20 and the print control means 21 will be described with reference to the flowcharts shown in FIGS. Note that each step (including partial steps without reference numerals) can be executed in an arbitrary order or in parallel without changing the processing contents.
[0027]
(First embodiment)
In the present embodiment, a case where a print job (print data) is divided into fixed-size packets and transmitted (for example, in the case of wireless communication according to the Bluetooth standard) will be described.
[0028]
FIG. 3 is a flowchart showing an example of the operation of the reception / response means 20. In the case of the Bluetooth standard, the operation of the reception / response means 20 shown here corresponds to one of operations in the OBEX layer, but is not limited to this.
[0029]
The reception /
[0030]
Next, the reception / response means 20 checks the free space of the reception buffer, and determines whether (free space)> (packet size) holds (S102).
[0031]
If it is determined that the condition is satisfied, the reception / response means 20 transmits a response corresponding to the packet transmission to the client device, and then returns to S100 (S103).
[0032]
On the other hand, if it is determined that the condition is not satisfied, the reception / response means 20 returns to S102 after waiting for a predetermined time (S104).
[0033]
FIG. 4 is a flowchart illustrating an example of the operation of the
[0034]
The
[0035]
Next, the
[0036]
At this time, in response to the execution of the print control process, the
[0037]
After the print control process or the like is completed for the print data to be processed, the
[0038]
As described above, in the present embodiment, it is determined whether or not a packet (print data) can be stored based on the free space of the
[0039]
Under such a configuration, when packets can be stored in the
[0040]
On the other hand, if the packet cannot be stored in the
[0041]
(Second embodiment)
In the second embodiment, a case will be described in which the size of print data to be transmitted is indefinite. In this case, the client device first transmits a control command (including data size information of the print data to be transmitted) requesting permission of transmission of the print data to the printer device, Adopt a framework for sending
[0042]
FIG. 5 is a flowchart showing an example of the operation of the reception / response means 20 in the second embodiment.
[0043]
The reception /
[0044]
The reception /
[0045]
If it is determined that the condition is satisfied, the reception /
[0046]
When print data is transmitted from the client device, the reception / response means 20 stores the print data in the reception buffer 22 (S303). Then, after transmitting a response corresponding to the print data transmission to the client device, the process returns to S300 (S304).
[0047]
On the other hand, if it is determined that the condition is not satisfied, the reception / response means 20 waits for a predetermined time and then returns to S301 (S305).
[0048]
FIG. 6 is a flowchart illustrating an example of the operation of the
[0049]
The
[0050]
Next, the
[0051]
At this time, in response to the execution of the print control process, the
[0052]
After the print control process or the like is completed for the print data to be processed, the
[0053]
Under such a configuration, if print data can be stored in the
[0054]
On the other hand, if the print data cannot be stored in the
[0055]
(Third embodiment)
In the third embodiment, a case will be described in which the priority of the print control process is controlled based on the check result of the free space of the reception buffer.
[0056]
In the third embodiment, priorities are set for the processing of the reception / response control means 20 (reception buffer storage processing, response control processing, etc.) and the processing of the print control means 21 (print control processing, reception buffer release processing, etc.). It is assumed that each process is exclusively executed on the real-time OS according to the priority. In this case, for example, if a higher execution time is assigned to a process with a higher priority, or if a request to execute a process higher than this is issued while a process with a lower priority is being executed, a process with a lower priority is executed. Is interrupted to execute a higher priority process.
[0057]
FIG. 7 is a flowchart showing the operation of the reception / response means 20 in the third embodiment.
[0058]
The reception /
[0059]
Next, the reception / response means 20 checks the free space of the reception buffer and determines whether (free space)> (packet size) holds (S502).
[0060]
If it is determined that the condition is satisfied, the reception / response means 20 returns the priority of each means to the initial state (does not do anything if the priority has not been changed from the initial state) (S503). Then, after transmitting a response corresponding to the packet transmission to the client device, the process returns to S500 (S504).
[0061]
On the other hand, if it is determined that the condition is not satisfied, the reception /
[0062]
Note that the operation of the
[0063]
Under such a configuration, when data cannot be stored in the
[0064]
(Other)
The present invention is not limited to the above embodiment, but can be applied in various modifications.
[0065]
For example, in the above embodiment, the transmission timing of the response is controlled based on the comparison result between the free space of the reception buffer and the data size. However, the transmission timing of the response is simply determined based on the size of the free space of the reception buffer. It may be configured to control. In this case, the degree of change in the priority of the print control process may be controlled based on the size of the free space in the reception buffer.
[0066]
Further, for example, in the above-described embodiment, a printer has been described as an example, but the present invention can be applied to devices other than a printer as long as data communication is performed using an OBEX layer type protocol.
[Brief description of the drawings]
FIG. 1 is a block diagram illustrating a hardware configuration of a printer device according to a first embodiment of the present invention.
FIG. 2 is a block diagram illustrating a functional configuration diagram according to the first embodiment.
FIG. 3 is a flowchart showing the operation of the receiving / response means 20 in the first embodiment.
FIG. 4 is a flowchart illustrating an operation of the
FIG. 5 is a flowchart showing the operation of the receiving / response means 20 in the second embodiment.
FIG. 6 is a flowchart illustrating an operation of a
FIG. 7 is a flowchart showing the operation of the reception / response means 20 in the third embodiment.
FIG. 8 is a flowchart showing an operation on the transmission side when the OBEX layer type protocol is adopted.
[Explanation of symbols]
Reference Signs List 1 printer, 2 power mechanism section, 3 information processing section, 10 paper feed mechanism, 11 print engine, 12 paper discharge mechanism, 13 CPU, 14 ROM, 15 RAM, 16 LCD panel and LCD controller, 17 wireless communication interface, 18 wired Communication interface, 20 reception / response means, 21 print control means, 22 reception buffer
Claims (7)
クライアント装置からデータ送信に関する要求を受け付けた場合、前記バッファの空き状態に基づいて送信タイミングを制御して、前記要求に対する応答を前記クライアント装置に対して送信することを特徴とする情報処理装置。An information processing apparatus having a function of storing data transmitted from a client device in a buffer, executing a predetermined process based on the stored data, and releasing the data stored in the buffer according to the execution of the predetermined process. A device,
An information processing apparatus, wherein, when a request for data transmission is received from a client device, a transmission timing is controlled based on an empty state of the buffer, and a response to the request is transmitted to the client device.
前記要求に基づくデータをバッファに格納できないと判断した場合は、前記所定処理の実行に応じてバッファに格納されているデータが解放されるのを待ち、前記要求に基づくデータを格納できるようになったタイミングで、前記クライアント装置に対して応答を送信することを特徴とする、請求項1記載の情報処理装置。If it is determined that the data based on the request can be stored in the buffer, without waiting for the data stored in the buffer to be released, send a response to the client device,
If it is determined that the data based on the request cannot be stored in the buffer, it is possible to wait for the data stored in the buffer to be released according to the execution of the predetermined processing, and to store the data based on the request. 2. The information processing apparatus according to claim 1, wherein a response is transmitted to the client device at a specified timing.
前記情報処理装置は、前記クライアント装置からデータ送信に関する要求を受け付けた場合、前記バッファの空き状態に基づいて送信タイミングを制御して、前記要求に対する応答を前記クライアント装置に対して送信することを特徴とする、情報処理システム。At least one client device, storing data transmitted from the client device in a buffer, executing a predetermined process based on the stored data, and releasing the data stored in the buffer in response to the execution of the predetermined process An information processing system including an information processing apparatus having a function of performing
When the information processing device receives a request for data transmission from the client device, the information processing device controls transmission timing based on the empty state of the buffer and transmits a response to the request to the client device. Information processing system.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002334125A JP2004171150A (en) | 2002-11-18 | 2002-11-18 | Information processor and method and printer system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002334125A JP2004171150A (en) | 2002-11-18 | 2002-11-18 | Information processor and method and printer system |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004171150A true JP2004171150A (en) | 2004-06-17 |
Family
ID=32698660
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002334125A Pending JP2004171150A (en) | 2002-11-18 | 2002-11-18 | Information processor and method and printer system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004171150A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007102497A (en) * | 2005-10-04 | 2007-04-19 | Konica Minolta Business Technologies Inc | Data processing program, data processing method and data processor |
JP2013538389A (en) * | 2010-10-28 | 2013-10-10 | インターナショナル・ビジネス・マシーンズ・コーポレーション | Method, computer program, and system for dynamic enabling and disabling of XFR_RDY (XFR_RDY dynamic enabling and disabling) |
-
2002
- 2002-11-18 JP JP2002334125A patent/JP2004171150A/en active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007102497A (en) * | 2005-10-04 | 2007-04-19 | Konica Minolta Business Technologies Inc | Data processing program, data processing method and data processor |
JP2013538389A (en) * | 2010-10-28 | 2013-10-10 | インターナショナル・ビジネス・マシーンズ・コーポレーション | Method, computer program, and system for dynamic enabling and disabling of XFR_RDY (XFR_RDY dynamic enabling and disabling) |
US8732357B2 (en) | 2010-10-28 | 2014-05-20 | International Business Machines Corporation | Apparatus and method for dynamically enabling and disabling write XFR—RDY |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3226095B2 (en) | Network printer | |
JP2000172453A (en) | Print system and host device of same system | |
JP6289057B2 (en) | COMMUNICATION DEVICE AND ITS CONTROL METHOD, PRINTING DEVICE, ITS CONTROL METHOD, AND PROGRAM | |
JP2007030252A (en) | Image forming system, interruption processing method and printing apparatus | |
JP2009071780A (en) | Communication information processor, communication information processing system, and communication information processing program | |
JP4029656B2 (en) | Print program and print server | |
JP2011116083A (en) | Printer and control method therefor, program | |
JP2004171150A (en) | Information processor and method and printer system | |
JP2002091748A (en) | Image processor | |
JP2007055115A (en) | Printer and method for developing interruption job memory | |
JP2003291472A (en) | Print system, printer, print data transmitter, program | |
JP2003271349A (en) | System and method for managing and processing print job using print job ticket | |
JP2001067193A (en) | Printing system, printer and its controlling method | |
JP5701034B2 (en) | Data processing apparatus, data processing apparatus control method, and program | |
JP2005074928A (en) | Data processing system, data processor, and data receiving program | |
US20040190048A1 (en) | Image forming device and method | |
JP4653607B2 (en) | Printing device | |
JP2008305265A (en) | File transmission apparatus, image forming apparatus, file communication program, and file communication method | |
JP3251429B2 (en) | Printing apparatus, host computer, printing system, and print control method thereof | |
JP4438698B2 (en) | Distributed printing system, printing method, and computer program | |
JP5699683B2 (en) | Print data receiving apparatus and print data receiving apparatus control method | |
JP2009211307A (en) | Image forming apparatus | |
JP2007001044A (en) | Printer and method for processing job interruption | |
JP3936945B2 (en) | Image forming apparatus and program | |
JP2007011694A (en) | Image recording system, image recording method and image recording device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050727 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20071116 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20071214 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080205 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20080722 |