(57)【要約】【課題】  複数の外部装置からデータ入力するための複数のインターフェースを有する画像形成装置において、使用されていないインターフェースについては、受信バッファを割り当てないようにする。【解決手段】  画像形成装置が有する複数のインターフェースに、外部装置が接続されたかどうかを検知するインターフェース接続検知部と、前記インターフェース接続検知部により、外部装置の接続が検知されたときに初めて、前記インターフェース用に必要な受信バッファ領域を確保するデバイスドライバ部を備えることにより、問題を解決した。【選択図】図１
2008126525.tif 000002
【特許請求の範囲】
【請求項１】
複数の外部装置からデータを入力するための複数のインターフェースを有し、インターフェース毎に受信バッファ領域を確保可能な画像形成装置であって、
前記複数のインターフェースに対する外部装置接続の有無を検知する外部装置接続検知部と、
前記外部装置接続検知部が外部装置接続有の検知を行ったときに対応するインターフェースに前記受信バッファ領域を確保するデバイスドライバ部と、
を有することを特徴とする画像形成装置。
【請求項２】
請求項１の画像形成装置であって、
前記デバイスドライバ部が確保する受信バッファ領域は、初期必要受信バッファ領域である
ことを特徴とする画像形成装置。
【請求項３】
請求項１または２の画像形成装置であって、
前記外部装置接続検知部が外部装置接続有から同無を検知した際に、前記デバイスドライバ部は、前記確保されていた受信バッファ領域を開放する
ことを特徴とする画像形成装置。
【請求項４】
請求項１から３のいずれかの画像形成装置であって、
前記複数のインターフェースは、ＵＳＢインターフェース、プリンターポートインターフェース、ネットワークインターフェース、シリアルポートインターフェースの任意の組み合わせからなる
ことを特徴とする画像形成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
画像形成装置において、外部装置とのインターフェースに使用される受信バッファを効率よく使用するために、外部装置が接続されていないインターフェースについては、受信バッファを割り当てないことを可能とする技術に関する画像形成装置。
【背景技術】
【０００２】
従来、複数のインターフェースを持つ画像形成装置において、インターフェースごとに外部装置との間でやり取りする信号を一時的にためておく受信バッファを前記複数のインターフェースで共用する際に、あらかじめ受信バッファを均等に割り当てると、インターフェースごとに使用する受信バッファ量が異なるのが一般的であるので、受信バッファの使用効率が悪く、結果としてデータ受信処理に時間がかかってしまう問題などがあった。
【０００３】
そこで、ＣＰＵ（Central  Processing  Unit）が装置のインターフェース選択状態に基づき、受信バッファサイズを加減して設定し、受信バッファの使用効率を高め、受信データの処理能力を高める方法がある（特許文献１参照）。
【０００４】
しかし、この方法でも、インターフェースごとに初期必要領域が確保されており、インターフェースに外部装置がつながれていない場合にも、受信バッファが前記初期必要領域の分無駄に消費されていた。
【０００５】
【特許文献１】特開平６−３０５２０４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
解決しようとする問題点は、複数のインターフェースを持つ画像形成装置において、使用されていないインターフェースについては、受信バッファを全く割り当てないようにすることができなかった点である。
【課題を解決するための手段】
【０００７】
本発明の画像形成装置は、複数の外部装置からデータを入力するための複数のインターフェースを有し、インターフェース毎に受信バッファ領域を確保可能な画像形成装置であって、前記複数のインターフェースに対する外部装置接続の有無を検知する外部装置接続検知部と前記外部装置接続検知部が外部装置接続有の検知を行ったときに対応するインターフェースに前記受信バッファ領域を確保するデバイスドライバ部とを有することを最も主要な特徴とする。
【発明の効果】
【０００８】
本発明の画像形成装置は、複数の外部装置からデータを入力するための複数のインターフェースを有し、インターフェース毎に受信バッファ領域を確保可能な画像形成装置であって、前記複数のインターフェースに対する外部装置接続の有無を検知する外部装置接続検知部と前記外部装置接続検知部が外部装置接続有の検知を行ったときに対応するインターフェースに前記受信バッファ領域を確保するデバイスドライバ部とを有することを最も主要な特徴とするため、外部装置が接続されていないインターフェースについては、受信バッファを割り当てないようにすることが可能になったので、受信バッファの利用効率が高まり、結果としてバッファ用のメモリ量を少なくすることが可能になるか、または、バッファ用のメモリ量が同じ場合には、受信処理能力を高めることが可能となった。
【発明を実施するための最良の形態】
【０００９】
複数の外部装置からデータを入力するための複数のインターフェースを有する画像形成装置において、外部装置が接続されていないインターフェースについても受信バッファが消費されてしまうという問題点を外部装置が接続されているかどうかを検知して、外部装置が接続された時に必要最小領域の受信バッファを確保することにより解決した。
【実施例１】
【００１０】
［構成及び動作シーケンス］
図１は、本発明の実施例に係わる画像形成装置のインターフェース部にケーブル接続（すなわち外部装置の接続）があった際のシーケンス図である。
【００１１】
画像形成装置には、インターフェース１０１が備わっており、インターフェースへの外部装置の接続を検知すると起動するプログラムである割り込みハンドラ１０３、及び各インターフェースの動作を制御するプログラムであるＩ／Ｆデバイスドライバ１０５の両プログラムが搭載され、各インターフェースと装置との間のデータを一時的に保持する受信バッファ１０７がメモリ上に確保される。
【００１２】
インターフェース１０１は、外部装置接続検知部として働き、ＰＣ（Personal  Computer）などの外部装置が接続された場合には、その接続を検知する。
【００１３】
Ｉ／Ｆデバイスドライバ１０５は、複数あるインターフェース毎に対応するドライバが搭載されている。また、本プログラムは、デバイスドライバ部として働き、上記に述べた各インターフェースの動作を制御する他に、外部装置が接続されると受信バッファを確保するように動作する。
【００１４】
なお、画像形成装置には、複数のインターフェースが備わっているが、本シーケンス図では、その代表として一台のインターフェースについて図示した。他のインターフェースについても同様な構成で、同様に動作する。
【００１５】
また、本発明の本質には関係の無い画像形成装置のスキャナ部や、印刷部などの機能部については省略してある。
【００１６】
次に、インターフェースに外部装置が接続されたときの動作について、図１を用いて説明する。
【００１７】
Ｓ１：インターフェース１０１に外部装置が接続されると、外部装置接続割り込みが発生し、割り込みハンドラ１０３が起動する。
【００１８】
Ｓ２：割り込みハンドラ１０３は、外部装置の接続をＩ／Ｆデバイスドライバ１０５に通知する。
【００１９】
Ｓ３：外部装置の接続を受け取ったＩ／Ｆデバイスドライバ１０５は、受信バッファ１０７の必要最低領域を確保する。
【００２０】
以上の一連の動作により、各インターフェースに必要な受信バッファの初期必要領域が確保された。
【００２１】
本動作による受信バッファの初期必要領域確保以降は、インターフェースの受信状態に応じて必要バッファ領域を動的に確保または開放して、受信バッファを効率的に使用する。
【００２２】
外部装置の接続が切断されたときには、インターフェース１０１がその切断を検知して、Ｉ／Ｆデバイスドライバ１０５が確保していた受信バッファ領域を開放するように設定しても良い。この場合、外部装置の接続をユーザが能動的に切断した場合にのみ受信バッファを開放するよう設定した方が、不慮の動作による一時的切断、再接続の際においても受信バッファを保持しておくことができるので、より実践的に効果がある。
【００２３】
［実施例の効果］
本発明実施例により、外部装置が接続されて受信バッファが必要となってから受信バッファ領域が確保されるために、使われないインターフェースのために受信バッファが無駄に消費されることが無くなり、受信バッファの利用効率が高まった。外部装置の接続を検知してから実際にデータが送られてくるまでの間に受信バッファを確保することは、時間的に充分に可能なため、外部装置の接続の無いインターフェースについて受信バッファ領域をあらかじめ確保しておく必要は無い。
【００２４】
本方式により、限られたメモリ量での受信処理が有効となり、また受信処理速度も向上した。メモリ量が限られている画像形成装置では、本方式の有効性は更に高まる。
【図面の簡単な説明】
【００２５】
【図１】本発明の実施例に関わるシーケンス図である（実施例１）。
【符号の説明】
【００２６】
１０１  インターフェース（外部装置接続検知部）
１０３  割り込みハンドラ
１０５  Ｉ／Ｆデバイスドライバ（デバイスドライバ部）
１０７  受信バッファ
【図１】
2008126525.tif 000003