(57)【要約】      （修正有）【課題】データ転送モードが高速である場合に画像バッファ領域のサイズを減少させることができ、メモリ領域の利用の効率化を図ることができる画像形成装置を提供する。【解決手段】デバイスは、ＰＣからデータ転送モードの通知を受けて、当該データ転送モードが高速であるＳＳモードか否かを判定する。そして、ＳＳモードであると判定された場合には画像バッファ領域のサイズを減少させる。【選択図】図８
2015104901.tif 000002
【特許請求の範囲】
【請求項１】
ホスト端末から送られてきた印刷データを記憶する第１の記憶領域を備え、前記第１の記憶領域から前記印刷データを印刷部に出力することで印刷を実行する画像形成装置において、
前記ホスト端末からデータ転送モードの通知を受け付ける受信手段と、
前記受信手段により受信したデータ転送モードが高速であるか否かを判定する判定手段と、
前記判定手段により高速であると判定された場合には前記第１の記憶領域のサイズを減少させる制御手段と、
を備えることを特徴とする画像形成装置。
【請求項２】
前記判定手段は、前記受信手段により受信したデータ転送モードが、前記画像形成装置が実行可能な複数のデータ転送モードのうちの最も高速なデータ転送モードであるか否かを判定することを特徴とする請求項１に記載の画像形成装置。
【請求項３】
前記画像形成装置の動作、データ通信を含むログを記憶する第２の記憶領域をさらに備え、
前記制御手段は、前記第１の記憶領域のサイズを減少させた場合には、前記第２の記憶領域のサイズを増やすことを特徴とする請求項１または２に記載の画像形成装置。
【請求項４】
前記判定手段により高速でないと判定された場合、前記制御手段は、前記第１の記憶領域のサイズを、前記画像形成装置が実行可能な複数のデータ転送モードのうちの最も低速なデータ転送モードで前記ホスト端末と接続されているときに必要となるサイズにすることを特徴とする請求項１乃至３のいずれか１項に記載の画像形成装置。
【請求項５】
ホスト端末から送られてきた印刷データを記憶する第１の記憶領域を備え、前記第１の記憶領域から前記印刷データを印刷部に出力することで印刷を実行する画像形成装置の制御方法において、
前記ホスト端末からデータ転送モードの通知を受け付ける受信工程と、
前記受信工程にて受信したデータ転送モードが高速であるか否かを判定する判定工程と、
前記判定工程にて高速であると判定された場合には前記第１の記憶領域のサイズを減少させる制御工程と、
を備えることを特徴とする制御方法。
【請求項６】
請求項５に記載の制御方法を画像形成装置に実行させるためのコンピュータに読み取り可能なプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像形成装置及びその制御方法、並びにプログラムに関し、特に、画像形成装置の画像バッファ領域のサイズ制御に関するものである。
【背景技術】
【０００２】
ＰＣ等のホスト情報機器にプリンタ等の周辺機器を接続するためのシリアルバス規格の１つとして、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）がある。ＵＳＢは、最大データ転送速度の向上などを理由に何度か規格が拡張されており、現在ではＵＳＢ１．０、ＵＳＢ１．１、ＵＳＢ２．０、ＵＳＢ３．０の４つの規格が存在する。
【０００３】
ＵＳＢでは、Ｌｏｗ  Ｓｐｅｅｄモード（ＬＳモード）、Ｆｕｌｌ  Ｓｐｅｅｄモード（ＦＳモード）、Ｈｉｇｈ  Ｓｐｅｅｄモード（ＨＳモード）、ＳｕｐｅｒＳｐｅｅｄモード（ＳＳモード）の４つの転送モードが規定されている。
【０００４】
ＬＳモードは最大１．５Ｍｂｐｓをサポートし、ＦＳモードは最大１２Ｍｂｐｓをサポートしている。ＵＳＢ１．０およびＵＳＢ１．１がサポートする最大データ転送速度は、ＦＳモードがサポートする１２Ｍｂｐｓである。ＨＳモードは最大４８０Ｍｂｐｓをサポートしており、ＵＳＢ２．０がサポートする最大データ転送速度は、ＨＳモードがサポートする４８０Ｍｂｐｓである。ＳＳモードは最大５Ｇｂｐｓをサポートしており、ＵＳＢ３．０がサポートする最大データ転送速度は、ＳＳモードがサポートする５Ｇｂｐｓである。
【０００５】
現在、一般的に広く利用されているＵＳＢとしては、ＵＳＢ１．１やＵＳＢ２．０が主流である。しかし、近年のＵＳＢメモリなどのフラッシュデバイスやＳＳＤ、外付けＨＤＤなどの大容量化に伴い、データ転送速度のさらなる向上が求められるようになった。それに伴い、後方互換性を保ちつつ、最大データ転送速度がＵＳＢ２．０の約１０倍となったＵＳＢ３．０が普及し始めている。
【０００６】
ホストベースのプリンタでは、画像バッファ領域に１ページ分の印刷データが溜まらずとも画像バッファ領域からエンジンへのビデオ出力を開始するものがある。そのようなプリンタで印刷を行う際には、まず、ＰＣからプリンタに印刷データが転送される。プリンタに転送された印刷データは、プリンタのコントローラの画像バッファ領域に一時保存される。その後、印刷データは、コントローラの画像バッファ領域からプリンタのエンジンにビデオ出力され、印刷が実行される。
【０００７】
一般的に、ＰＣとプリンタがＵＳＢのＬＳモードまたはＦＳモードまたはＦＳモードで接続されている場合、ＰＣからプリンタへの印刷データ転送速度は、プリンタのコントローラの画像バッファ領域からエンジンへのビデオ出力速度よりも遅くなる。そのような場合、ページの印刷の途中で、エンジンへのそのページの印刷データのビデオ出力が途切れてしまうことがある。そのような事態に陥ると、エンジンはそのページを途中までしか印刷できず、印刷は中断される。
【０００８】
こうした課題に対して、プリンタのコントローラの画像バッファ領域に印刷データを十分に溜めてから、エンジンへのビデオ出力を開始するという対策が取られている。この対策により、ＰＣからプリンタへの印刷データ転送速度がコントローラの画像バッファ領域からエンジンへのビデオ出力速度よりも遅い場合でも、ページの印刷の途中でエンジンへのそのページの印刷データのビデオ出力が途切れるのを防ぐことができる。この対策のために、プリンタではコントローラの画像バッファ領域のサイズを十分に確保しておく必要があった。また、画像バッファ領域は必要なサイズを固定量で確保する。よって、そのプリンタがサポートするＵＳＢのデータ転送モードのうち、最も低速なデータ転送モードでＰＣとプリンタが接続されている場合に必要となるサイズの画像バッファ領域を固定量で確保しておく必要があった。
【０００９】
特許文献１では、接続されたホストとのデータ転送モードを認識して、それが高速のデータ転送モードであると判断すると、データの転送方向に応じて、それと逆方向のバッファの一部を、転送方向のバッファに切り替えるデータ転送制御装置が提案されている。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特開２００６−１８５３０２号公報
【発明の概要】
【発明が解決しようとする課題】
【００１１】
一般的に、ＰＣとプリンタがＵＳＢのＳＳモードで接続されている場合、ＰＣからプリンタへの印刷データ転送速度は、プリンタのコントローラの画像バッファ領域からエンジンへのビデオ出力速度よりも圧倒的に速くなる。そのような場合は、コントローラの画像バッファ領域にごく少量の印刷データさえ溜まればエンジンへのビデオ出力を開始しても、ページの印刷の途中で、エンジンへのそのページの印刷データのビデオ出力が途切れるという事態に陥ることがない。また、このような場合は、コントローラの画像バッファ領域はごく少量の印刷データが収まるサイズさえ確保されていれば問題ない。
【００１２】
しかしながら、プリンタでは、サポートする転送モードのうち、最も低速なデータ転送モードでＰＣとプリンタが接続されている場合に必要となるサイズの画像バッファ領域を固定量で確保していた。そのため、ＰＣとプリンタがＵＳＢのＳＳモードで接続されている場合は、無駄に大きなバッファを確保していたことになる。
【００１３】
本発明は、上記問題に鑑みて成されたものであり、データ転送モードが高速である場合に画像バッファ領域のサイズを減少させることができ、メモリ領域の利用の効率化を図ることができる技術を提供することを目的とする。
【課題を解決するための手段】
【００１４】
上記目的を達成するために、本発明の画像形成装置は、ホスト端末から送られてきた印刷データを記憶する第１の記憶領域を備え、前記第１の記憶領域から前記印刷データを印刷部に出力することで印刷を実行する画像形成装置において、前記ホスト端末からデータ転送モードの通知を受け付ける受信手段と、前記受信手段により受信したデータ転送モードが高速であるか否かを判定する判定手段と、前記判定手段により高速であると判定された場合には前記第１の記憶領域のサイズを減少させる制御手段と、を備えることを特徴とする。
【発明の効果】
【００１５】
本発明によれば、データ転送モードが高速である場合に画像バッファ領域のサイズを減少させることができ、メモリ領域の利用の効率化を図ることができる。
【図面の簡単な説明】
【００１６】
【図１】本発明の実施形態に係る画像形成装置が配置された環境の一例を示す図である。
【図２】図１におけるＰＣのハードウェア構成を示すブロック図である。
【図３】図１におけるデバイスのハードウェア構成を示すブロック図である。
【図４】図３におけるコントローラユニット内のＲＡＭのメモリマップの一例を示す図である。
【図５】ＰＣにおけるソフトウェア構成を示すブロック図である。
【図６】デバイスにおける印刷動作を説明するためのブロック図である。
【図７】ＰＣがＵＳＢ  Ｉ／Ｆに接続されたデバイスとのデータ転送モードを決定する動作処理の流れを示すフローチャートである。
【図８】デバイスのバッファ制御部がコントローラユニットのＲＡＭの画像バッファ領域のサイズを制御する動作処理の流れを示すフローチャートである。
【発明を実施するための形態】
【００１７】
以下、本発明の実施の形態を図面を参照して詳細に説明する。
【００１８】
図１は、本発明の実施形態に係る画像形成装置が配置された環境の一例を示す図である。
【００１９】
デバイス（画像形成装置）１０３は、ホスト端末であるＰＣ１０２とＵＳＢケーブル等で接続されている。ユーザ１０１は、ＰＣ１０２の操作部２０６またはデバイス１０３の操作部３０８を操作することで、デバイス１０３に任意の設定や指示を行うことが出来る。
【００２０】
図２は、図１におけるＰＣ１０２のハードウェア構成を示すブロック図である。
【００２１】
ＰＣ１０２は、以下のものを備える。ＣＰＵ２０１は、システム全体を制御するプロセッサである。ＲＡＭ２０２は、ＣＰＵ２０１が動作するためのシステムワークメモリであり、プログラムを記憶するためのプログラムメモリとして使用される。
【００２２】
ＨＤＤ２０３はデータ記憶装置である。操作部Ｉ／Ｆ２０４は、操作部２０６に接続されたインターフェースであり、操作部２０６からの入力信号を受け付ける。また、操作部Ｉ／Ｆ２０４は、操作部２０６からユーザが入力した情報を、ＣＰＵ２０１に伝える役割をする。
【００２３】
表示部Ｉ／Ｆ２０９は、表示部２０７に接続されたインターフェースであり、ＣＰＵ２０１の制御に応じて表示部２０７への出力信号を出力する。ＵＳＢ  Ｉ／Ｆ２０８は、ＵＳＢデバイスに接続するための機能ユニットである。
【００２４】
ＰＣ１０２は、ＵＳＢ１．０、ＵＳＢ１．１、ＵＳＢ２．０、ＵＳＢ３．０に対応しており、ＵＳＢ  Ｉ／Ｆ２０８を介して接続されたＵＳＢデバイスに印刷データを転送したりすることができる。
【００２５】
以上のデバイスがシステムバス２０５上に配置される。
【００２６】
図３は、図１におけるデバイス１０３のハードウェア構成を示すブロック図である。
【００２７】
コントローラユニット３１３は、画像出力デバイスとして機能するプリンタ部（印刷部）３１４と接続されることで、ＰＣ１０２とプリンタ部３１４との画像データやデバイス情報の入出力を行う。また、コントローラユニット３１３は、操作部３０８と接続することで、ユーザからの任意の設定や指示を受け付けることが可能となる。
【００２８】
ＣＰＵ３０１は、システム全体を制御するプロセッサである。ＦＬＡＳＨ  ＲＯＭ３０２は書き換え可能な不揮発性メモリであり、システムを制御するための各種制御プログラムが記憶される。ＲＡＭ３０３は、ＣＰＵ３０１が動作するためのシステムワークメモリであり、プログラムを記憶するためのプログラムメモリや、画像データを一時記憶するための画像メモリでもある。
【００２９】
ＮＶＭＥＭ３０４は不揮発性のメモリであり、設定情報等を記憶する。操作部Ｉ／Ｆ３１１は、操作部３０８に接続されたインターフェースであり、操作部３０８からの入力信号を受け付ける。また、操作部Ｉ／Ｆ３１１は、操作部３０８からユーザが入力した情報を、ＣＰＵ３０１に伝える役割をする。ＵＳＢ  Ｉ／Ｆ３０６は、ＰＣ１０２とのＵＳＢ接続を可能にする。
【００３０】
デバイス１０３は、ＵＳＢ１．０、ＵＳＢ１．１、ＵＳＢ２．０、ＵＳＢ３．０に対応しており、ＵＳＢ  Ｉ／Ｆ３０６を介して接続されたＰＣ１０２から印刷データを受信したりすることができる。
【００３１】
以上のデバイスがシステムバス３０５上に配置される。
【００３２】
イメージバス（ＩＭＡＧＥ  ＢＵＳ）Ｉ／Ｆ３０７は、システムバス３０５と、画像データを高速で転送する画像バス３１２とを接続し、データ構造を変換するバスブリッジである。画像バス３１２は、ＰＣＩバスまたはＩＥＥＥ１３９４で構成される。
【００３３】
イメージバス（ＩＭＡＧＥ  ＢＵＳ）３１２上には以下のデバイスが配置される。プリンタＩ／Ｆ３１０は、プリンタ部３１４とコントローラユニット３１３を接続し、画像データの同期系／非同期系の変換やデータのやりとりを行う。
【００３４】
画像処理部３０９は、入力画像データに対し補正、加工、編集を行ったり、プリント出力画像データに対して、プリンタの補正、解像度変換等を行う。また、これに加えて、画像データの回転や多値画像データに対してはＪＰＥＧ、２値画像データはＪＢＩＧ、ＭＭＲ、ＭＨ等の圧縮伸張処理を行う。プリンタ部３１４は、ラスタイメージデータを用紙上の画像に変換する。その方式は感光体ドラムや感光体ベルトを用いた電子写真方式である。プリント動作の起動は、ＣＰＵ３０１からの指示によって開始する。
【００３５】
図４は、図３におけるコントローラユニット３１３内のＲＡＭ３０３のメモリマップの一例を示す図である。
【００３６】
プログラムワーク領域４０１は、ＣＰＵ３０１を制御するために実行するプログラムをロードするための領域である。デバイス１０３の電源が投入された後、ＦＬＡＳＨ  ＲＯＭ３０２から読み出されたプログラムがこの領域に格納される。
【００３７】
画像バッファ領域４０２は、ＰＣ１０２からＵＳＢ  Ｉ／Ｆ３０６を介して送られてきた印刷データを一時記憶するための領域（第１の領域）である。この領域に一時記憶された印刷データはイメージバス（ＩＭＡＧＥ  ＢＵＳ）およびプリンタＩ／Ｆ３１０を介して、プリンタ部３１４にビデオ出力される。
【００３８】
ログバッファ領域４０３は、デバイス１０３の動作やデータ通信などのログを記憶するための領域（第２の記憶領域）である。
【００３９】
図５は、ＰＣ１０２におけるソフトウェア構成を示すブロック図である。
【００４０】
オペレーティングシステム５０１は、ＰＣ１０２が備えるハードウェア、およびアプリケーション５０２、プリンタドライバ５０３、ランゲージモニタ５０４、ポートドライバ５０５などのソフトウェアを管理する。
【００４１】
アプリケーション５０２は、例えばワードプロセッサのようなソフトウェアであり、ユーザ１０１の指示に従って文書の作成・印刷などを行う。プリンタドライバ５０３は、アプリケーション５０２が発行した印刷指令をオペレーティングシステム５０１を経て受け取り、該印刷指令をランゲージモニタ５０４、およびデバイス１０３が解釈可能なプリンタコマンドに変換する。ランゲージモニタ５０４は、プリンタドライバ５０３が出力したプリンタコマンドを受け取り、ポートドライバ５０５を経由してデバイス１０３に送信する。ポートドライバ５０５は、ランゲージモニタ５０４が出力したプリンタコマンドを、例えば、ＵＳＢ  Ｉ／Ｆ２０８を経てデバイス１０３へ送信する。また、ポートドライバ５０５は、デバイス１０３から応答を受信した場合にはランゲージモニタ５０４にその応答を出力する。デバイス１０３は、ポートドライバ５０５から受信したプリンタコマンドに従って印刷を行う。
【００４２】
次に、図１の環境における印刷動作について図５及び図６を参照して説明する。
【００４３】
図６は、デバイス１０３における印刷動作を説明するためのブロック図である。
【００４４】
ユーザ１０１がＰＣ１０２の操作部２０６を用いてアプリケーション５０２を操作して印刷を指示すると、アプリケーション５０２からオペレーティングシステム５０１を経由してプリンタドライバ５０３に印刷指令が渡される。プリンタドライバ５０３は、アプリケーション５０２から発行された印刷指令に基づき、それを画像データに変換して圧縮し、圧縮した画像データを、両面印刷の有無、印刷部数の指定などを指示するジョブ情報コマンドとともに出力する。また、用紙サイズ、用紙タイプ、給紙口、排紙口、画像データのラインの長さとライン数などを指定するページ情報コマンド、ページの終了を示す終了コマンド、およびジョブの終了を通知するジョブ終了コマンドもともに出力する。
【００４５】
プリンタコマンドが出力されると、オペレーティングシステム５０１は出力されたプリンタコマンドを順次ランゲージモニタ５０４へ引き渡す。ランゲージモニタ５０４は、受け取ったプリンタコマンドを順次デバイス１０３に送信する。なお、ランゲージモニタ５０４は、プリンタコマンドをデバイス１０３に送信する前に、ステータス要求コマンドを送信し、デバイス１０３のステータスを取得して、プリンタコマンドが送信可能であることを確認する。
【００４６】
制御回路６０４は、ＵＳＢ  Ｉ／Ｆ３０６を介してＰＣ１０２からプリンタコマンドを受信すると、ＰＣ１０２から受信した印刷データをＲＡＭ３０３に格納する。そして、制御回路６０４はまた、ＲＡＭ３０３に十分な量の印刷データが溜まったと判断すると、プリンタ部３１４に対して印刷開始を指示する。
【００４７】
プリンタ部３１４は、印刷開始を指示されると給紙を行い、用紙が所定の位置に達したときに画像データの出力を要求する。画像データの出力が要求されると、復号回路６０３はＲＡＭ３０３から圧縮された画像データを読み出して復号し、復号した元の画像データを順次プリンタ部３１４に出力する。このときＲＡＭ３０３から読み出された画像データは、ＲＡＭ３０３から取り除かれる。
【００４８】
ランゲージモニタ５０４は、取得したプリンタステータスがページの印刷が終了したことを示した場合には、該当するページメモリを開放する。ランゲージモニタ５０４はまた、取得したプリンタステータスがエラーを示した場合は、印刷が正常終了していないページを含むシートから再送信を試みる。ここでシートとは、一枚の紙に相当し、片面印刷においては１ページによって、両面印刷においては２ページによって構成される。
【００４９】
このようにしてジョブの全ページのプリンタコマンドを転送し終えると、ランゲージモニタ５０４はジョブの全シートの印刷完了を待ち、ジョブの全シートの印刷が完了した場合には、ジョブを終了する。
【００５０】
図６において、ＵＳＢ管理部６０１は、ＵＳＢ  Ｉ／Ｆ３０６を介して接続されたＰＣ１０２から受信した情報等の管理を行う。バッファ制御部６０２は、ＲＡＭ３０３のメモリマップ割り当てを制御する。
【００５１】
図７は、ＰＣ１０２がＵＳＢ  Ｉ／Ｆ２０８に接続されたデバイス１０３とのデータ転送モードを決定する動作処理の流れを示すフローチャートである。本処理は、ＣＰＵ２０１がＲＡＭ２０２またはＨＤＤ２０３から読み出したプログラムを実行することにより実現されるものとする。なお、デバイス１０３が実行可能な複数のデータ転送モードは、上述したＬＳモード、ＦＳモード、ＨＳモード、ＳＳモードの４つとする。
【００５２】
ステップＳ７０１では、ＰＣ１０２（内のＣＰＵ２０１）は、ＵＳＢ  Ｉ／Ｆ２０８のＶＢＵＳの信号レベルがＨ（Ｈｉｇｈ）であるか否かを判定する。ステップＳ７０１の判定結果からＨでないと判定した場合にはそのまま待機する一方、Ｈであると判定した場合には、ＰＣ１０２にＵＳＢデバイスが接続されたと検知する（ステップＳ７１１）。そして、接続されたデバイスで遠端終端（Ｆａｒ  Ｅｎｄ  Ｒｅｃｅｉｖｅｒ  Ｔｅｒｍｉｎａｔｉｏｎ）が検出されたか否かを判定する（ステップＳ７０２）。検出されたと判定した場合、接続されたデバイスとのデータ転送モードをＳＳモードとし（ステップＳ７０３）、そのモードを接続されたデバイスに通知して（ステップＳ７０４）、フローを終了する。
【００５３】
ステップＳ７０２で検出されていないと判定した場合、ＵＳＢ  Ｉ／Ｆ２０８のＤ−（ＤＡＴＡ−）の信号レベルがＨであるか否かを判定する（ステップＳ７０５）。ステップＳ７０５の判定結果からＨであると判定した場合、接続されたデバイスとのデータ転送モードをＬＳモードとし（ステップＳ７０６）、そのモードを接続されたデバイスに通知して（ステップＳ７０４）、フローを終了する。
【００５４】
ステップＳ７０５でＨでないと判定した場合、ＵＳＢ  Ｉ／Ｆ２０８のＤ＋（ＤＡＴＡ＋）の信号レベルがＨであるか否かを判定する（ステップＳ７０７）。ステップＳ７０７の判定結果からＨでないと判定した場合、ステップＳ７０５に戻る一方、Ｈであると判定した場合にはＣＨＩＲＰプロトコルにより、ＰＣ１０２とそれに接続されたデバイスの双方がＨＳモードに対応しているか否かを判定する（ステップＳ７０８）。
【００５５】
ステップＳ７０８の判定結果から、対応していると判定した場合、接続されたデバイスとのデータ転送モードをＨＳモードとし（ステップＳ７０９）、そのモードを接続されたデバイスに通知して（ステップＳ７０４）、フローを終了する。
【００５６】
一方、ステップＳ７０８で対応していないと判定した場合、接続されたデバイスとのデータ転送モードをＦＳモードとし（ステップＳ７１０）、そのモードを接続されたデバイスに通知して（ステップＳ７０４）、フローを終了する。
【００５７】
なお、ＰＣ１０２がＵＳＢ  Ｉ／Ｆ２０８に接続されたデバイスとのデータ転送モードを決定する方法は、上述したものに限るものではない。
【００５８】
図８は、デバイス１０３のバッファ制御部６０２がコントローラユニット３１３内のＲＡＭ３０３の画像バッファ領域４０２のサイズを制御する動作処理の流れを示すフローチャートである。
【００５９】
デバイス１０３のＵＳＢ管理部６０１は、接続されたＰＣ１０２からデータ転送モードが通知されたか否かを判定する（ステップＳ８０１）。通知されていないと判定した場合にはそのまま待機する。一方、通知されたと判定した場合には、ＵＳＢ管理部６０１は、バッファ制御部６０２にデータ転送モードを通知し、バッファ制御部６０２はそのデータ転送モードがＳＳモードであるか否かを判定する（ステップＳ８０２）。
【００６０】
ステップＳ８０２の判定結果からＳＳモードであると判定した場合、バッファ制御部６０２は、コントローラユニット３１３内のＲＡＭ３０３の画像バッファ領域４０２のサイズを小サイズＳ１（例えば８ＭＢ）にする（ステップＳ８０３）。更に、ＲＡＭ３０３のログバッファ領域４０３のサイズを増やして大サイズＴ１（例えば４０ＭＢ）にし（ステップＳ８０５）、フローを終了する。
【００６１】
ステップＳ８０２の判定結果からＳＳモードでないと判定した場合、バッファ制御部６０２は、コントローラユニット３１３のＲＡＭ３０３の画像バッファ領域４０２のサイズを大サイズＳ２（例えば３２ＭＢ）にする（ステップＳ８０４）。更に、ＲＡＭ３０３のログバッファ領域４０３のサイズを減らして小サイズＴ２（例えば１６ＭＢ）にし（ステップＳ８０６）、フローを終了する。
【００６２】
なお、上述したＳ１とＳ２の関係はＳ１＜Ｓ２である。Ｓ１は、ごく少量の印刷データが収まるサイズであれば問題ない。Ｓ２は、デバイス１０３がサポートするデータ転送モードのうち、最も低速なデータ転送モードでＰＣ１０２とデバイス１０３が接続されている場合に必要となるサイズ以上である必要がある。
【００６３】
また、Ｔ１とＴ２の関係はＴ１＞Ｔ２である。ＳＳモードである場合は、画像バッファ領域４０２を小サイズＳ１にすることにより余剰したバッファをログバッファ領域４０３に割り当てることができるため、ログバッファ領域４０３を大サイズＴ１にすることができる。
【００６４】
ログバッファ領域４０３を大サイズＴ１にすることにより、デバイス１０３はより多くのログを記憶することが可能となる。ＳＳモードでない場合は、画像バッファ領域４０２を大サイズＳ２にするため、ログバッファ領域４０３に割り当てることができるバッファも小サイズＴ２となる。
【００６５】
なお、上記実施形態では、画像バッファ領域４０２を小サイズＳ１にすることにより余剰したバッファをログバッファ領域４０３に割り当てているが、これは一例であり、余剰したバッファを何に割り当てるのかは、これに限るものではない。例えば、デバイス１０３がプリント機能、ＦＡＸ機能を備えている複合機である場合は、本発明により余剰したバッファをＦＡＸのメモリ受信用バッファ領域に割り当てることができる。ＦＡＸのメモリ受信用バッファ領域のサイズを大きくすることにより、複合機はより多くのＦＡＸデータを受信して記憶することが可能となる。
【００６６】
上記実施形態によれば、これにより、データ転送モードが高速である場合に画像バッファ領域のサイズを減少させることができる。その結果、デバイスのメモリ領域の利用の効率化を図ることができる。
【００６７】
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【符号の説明】
【００６８】
１０２  ＰＣ
１０３  デバイス
３０１  ＣＰＵ
３０３  ＲＡＭ
３０８  操作部
３１４  プリンタ部
４０１  プログラムワーク領域
４０２  画像バッファ領域
４０３  ログバッファ領域
６０１  ＵＳＢ管理部
【図１】
2015104901.tif 000003
【図２】
2015104901.tif 000004
【図３】
2015104901.tif 000005
【図４】
2015104901.tif 000006
【図５】
2015104901.tif 000007
【図６】
2015104901.tif 000008
【図７】
2015104901.tif 000009
【図８】
2015104901.tif 000010