(57)【要約】【課題】通信ネットワークに接続されたプリンタ等の周辺機器との間の通信速度を、直接プリンタ等の周辺機器を操作することなく、当該プリンタ等の周辺機器が対応可能な最大の通信速度で当該プリンタ等の周辺機器のファームウェアの更新データを送信することにより送信時間を削減する方法、システム及びプログラムを提供すること。【解決手段】コンピュータ１１等は、周辺機器（プリンタ１３ａ１等）から、対応可能な最大の通信速度を受信し、周辺機器（プリンタ１３ａ１等）の通信速度を、前記対応可能な最大の通信速度に再設定して、前記更新データを送信する。【選択図】図４
2008033708.tif 000002
【特許請求の範囲】
【請求項１】
通信ネットワークに接続されたコンピュータが、前記通信ネットワークに接続された周辺機器に、前記周辺機器のファームウェアの更新データを送信する方法であって、
前記周辺機器に、対応可能な最大の通信速度を示すデータの送信を要求するデータを送信するステップと、
前記周辺機器から、前記対応可能な最大の通信速度を示すデータを受信して記憶するステップと、
前記対応可能な最大の通信速度を示すデータを受信したことに応じて、前記周辺機器に、前記対応可能な最大の通信速度に設定するコマンドを送信するステップと、
前記周辺機器に、設定した前記最大の通信速度で前記更新データを送信するステップと、を含む方法。
【請求項２】
対応可能な最大の通信速度を示すデータの送信を要求するデータを送信するステップにおいて、前記コンピュータが、複数の前記周辺機器に、それぞれ対応可能な最大の通信速度を示すデータの送信を要求するデータを送信し、
前記対応可能な最大の通信速度を示すデータを受信して記憶するステップにおいて、前記コンピュータが、複数の前記周辺機器から、それぞれ前記対応可能な最大の通信速度を示すデータを受信して前記周辺機器を識別するデータに関連付けて記憶し、
前記対応可能な最大の通信速度に設定するコマンドを送信するステップにおいて、前記コンピュータが、複数の前記周辺機器から、それぞれ前記対応可能な最大の通信速度を示すデータを受信したことに応じて、複数の前記周辺機器に、それぞれ前記対応可能な最大の通信速度に設定するコマンドを送信し、
設定した前記最大の通信速度で前記更新データを送信するステップにおいて、前記コンピュータが、複数の前記周辺機器に、それぞれ設定した前記最大の通信速度で前記更新データを送信する請求項１に記載の方法。
【請求項３】
前記更新データを送信するステップにおいて、前記コンピュータは、前記対応可能な最大の通信速度に設定するコマンドを、前記周辺機器に送信し、所定の時間待機してから前記更新データを送信する請求項１又は請求項２に記載の方法。
【請求項４】
前記更新データを送信するステップにおいて、前記コンピュータは、前記更新データを送信する前に、所定のテストコマンドデータを前記周辺機器に送信し、前記所定のテストコマンドデータの送信から所定の確認時間以内に前記周辺機器から所定のリプライデータを受信したことに応じて、前記更新データを送信する請求項１から請求項３のいずれかに記載の方法。
【請求項５】
通信ネットワークに接続された周辺機器に、前記周辺機器のファームウェアの更新データを送信するコンピュータであって、
前記周辺機器に、対応可能な最大の通信速度を示すデータの送信を要求するデータを送信する手段と、
前記周辺機器から、前記対応可能な最大の通信速度を示すデータを受信して記憶する手段と、
前記対応可能な最大の通信速度を示すデータを受信したことに応じて、前記周辺機器に、前記対応可能な最大の通信速度に設定するコマンドを送信する手段と、
前記周辺機器に、設定した前記最大の通信速度で前記更新データを送信する手段と、を含むコンピュータ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ソフトウェアの更新データを送信する方法及びコンピュータに関する。特に、通信ネットワークに接続されたプリンタ等の周辺機器のファームウェアの更新データを送信する方法及びコンピュータに関する。
【背景技術】
【０００２】
従来、通信ネットワークに接続されたプリンタ等の周辺機器のファームウェアをバージョンアップや不具合対応等のために更新する場合、当該通信ネットワークに接続されたコンピュータから、当該ファームウェアの更新データを送信することにより、当該プリンタ等の周辺機器において当該更新データを受信して更新処理を実行している。
【０００３】
より具体的には、当該プリンタ等の周辺機器は、当該ファームウェアを記憶するＦｌａｓｈＲＯＭ等の記憶手段を備えている。そこで、当該コンピュータから、例えば、モトローラ（登録商標）Ｓ３フォーマットで当該ＦｌａｓｈＲＯＭに記憶されているファームウェアの全体イメージファイルの更新データを、通信ネットワークを介して当該プリンタ等の周辺機器に送信する。
【０００４】
近年のプリンタの機能向上の要請に応じて、プリンタのファームウェアも高機能化が進んでおり、ファームウェアの更新データのサイズは拡大する傾向にある。それに伴い、１回のファームウェアの更新で送信する更新データを構成する単位データの数は増大することになる。
【０００５】
ここで、上述のように、送信する更新データのサイズが大きくなってきたことによって、例えば、当該プリンタ等の周辺機器がＵＳＢ、パラレル、Ｅｔｈｅｒｎｅｔ（登録商標）その他の高速通信インターフェイスで接続されている場合には、更新データの送信時間はそれほど問題とはならないものの、ＲＳ−２３２Ｃ等のシリアルＩ／Ｆその他の低速通信インターフェイスで接続されている場合には、更新データの送信時間が運用上の課題となってきた。
【０００６】
例えば、６ＭＢの更新データを１９２００ｂｐｓで送信する場合には通信時間は４５分、９６００ｂｐｓで送信する場合には９０分かかることになる。通常、ファームウェアの更新データの送受信中は、当該プリンタ等の周辺機器は使用できないので、特に、２４時間稼動している施設のプリンタのファームウェアの更新の際等において、更新データの送信時間の削減が望まれている。
【０００７】
このような状況において、特許文献１に記載の技術によれば、例えば、ＰＣから９６００ｂｐｓで受信したデータを一旦記憶しておく外部メモリを備えたインターフェースボックスを当該ＰＣに接続して使用することにより、その後、より高速な通信速度でデータ送受信可能な携帯型情報機器を当該インターフェースボックスに接続したことに応じて、当該外部メモリに一旦記憶しておいたデータを当該携帯型情報機器に例えば５００００ｂｐｓで送信することができる。
【０００８】
従って、当該インターフェースボックスは、接続される携帯型情報機器の最大通信速度に応じて、最適な通信速度を選択してデータを当該携帯型情報機器に送信することができる。
【特許文献１】特開平１１−２１２９０８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
しかしながら、上述のように、通信ネットワークに接続されたコンピュータから、当該通信ネットワークに接続されたＰＣ等にあらかじめシリアルＩ／Ｆで接続されているプリンタ等の周辺機器にファームウェアの更新データを送信する場合に、特許文献１の技術を応用したとしても、結局当該ＰＣとインターフェースボックス間の通信速度である９６００ｂｐｓがボトルネックとなり、システム全体としては更新データの送信時間を削減することはできない。なぜならば、上述のように、通信ネットワークに原則として常時接続されているプリンタ等の周辺機器のファームウェアの更新データを送信する場合には、特許文献１の技術は、ボトルネックとなるＩ／Ｆにおける通信速度を超えて送信することができないからである。
【００１０】
ここで、シリアルＩ／Ｆは９６００ｂｐｓ、１９２００ｂｐｓ、・・・と複数の規格が存在しており（ＲＳ−２３２Ｃの最大通信速度は１９．２Ｋｂｐｓ）、それぞれのプリンタ等の周辺機器は、普段は、必ずしも対応可能な最大の通信速度で接続されているとは限らない。そこで、上述のプリンタ等の周辺機器との間の通信速度を対応可能な最大速度に再設定することが考えられるが、当該プリンタ等の周辺機器が遠隔地に存在している場合には、現実の作業の手間を考慮すると、現地で当該プリンタ等の周辺機器を直接操作して通信速度を再設定することが難しい場合も多い。
【００１１】
更に、シリアルＩ／Ｆで接続されているプリンタ等の周辺機器が通信ネットワーク上に複数存在している場合、複数のそれぞれのプリンタ等の周辺機器が対応可能な最大速度が互いに異なることが考えられ、そのような場合には、通信速度の再設定は更に煩雑な作業となる。
【００１２】
従って、通信ネットワークに接続されたプリンタ等の周辺機器との間の通信速度を、直接当該プリンタ等の周辺機器を操作することなく、当該プリンタ等の周辺機器が対応可能な最大の通信速度で当該プリンタ等の周辺機器のファームウェアの更新データを送信することにより、送信時間を削減する方法を提供することが望まれている。
【００１３】
更に、互いに対応可能な最大の通信速度が異なる、ファームウェアの更新対象のプリンタ等の周辺機器が通信ネットワーク上に複数存在する場合にも、それぞれのプリンタ等の周辺機器との間の通信速度をそれぞれが対応可能な最大の通信速度で当該プリンタ等の周辺機器のファームウェアの更新データを送信することにより、送信時間を削減する方法を提供することが望まれている。
【００１４】
そこで、本発明は、通信ネットワークに接続されたプリンタ等の周辺機器との間の通信速度を、直接プリンタ等の周辺機器を操作することなく、当該プリンタ等の周辺機器が対応可能な最大の通信速度で当該プリンタ等の周辺機器のファームウェアの更新データを送信することにより送信時間を削減する方法及びコンピュータを提供することを目的とする。
【００１５】
更に、互いに対応可能な最大の通信速度が異なる、ファームウェアの更新対象のプリンタ等の周辺機器が通信ネットワーク上に複数存在する場合にも、それぞれのプリンタ等の周辺機器が対応可能な最大の通信速度でそれぞれのプリンタ等の周辺機器のファームウェアの更新データを送信することにより送信時間を削減する方法及びコンピュータを提供することを目的とする。
【課題を解決するための手段】
【００１６】
上記の目的を達成するため、本発明者らが研究を重ねた結果、それぞれのプリンタ等の周辺機器との間の通信速度をリモートで再設定することにより、当該ファームウェアの更新データの送信時間を削減する方法を見出し、本発明を完成するに至った。本発明は、具体的には以下のようなものを提供する。
【００１７】
本発明は、通信ネットワーク（通信ネットワーク１４）に接続されたコンピュータ（コンピュータ１１等）が、前記通信ネットワークに接続された周辺機器（プリンタ１３ａ１等）に、前記周辺機器のファームウェアの更新データを送信する方法であって、
前記周辺機器に、対応可能な最大の通信速度を示すデータの送信を要求するデータを送信するステップと、
前記周辺機器から、前記対応可能な最大の通信速度を示すデータを受信して記憶するステップと、
前記対応可能な最大の通信速度を示すデータを受信したことに応じて、前記周辺機器に、前記対応可能な最大の通信速度に設定するコマンドを送信するステップと、
前記周辺機器に、設定した前記最大の通信速度で前記更新データを送信するステップと、を含むことを特徴とする。
【００１８】
本発明のこのような構成によれば、前記コンピュータは、前記周辺機器に、対応可能な最大の通信速度を示すデータの送信を要求するデータを送信し、
前記周辺機器から、前記対応可能な最大の通信速度を示すデータを受信して記憶し、
前記対応可能な最大の通信速度を示すデータを受信したことに応じて、前記周辺機器に、前記対応可能な最大の通信速度に設定するコマンドを送信し、
前記周辺機器に、設定した前記最大の通信速度で前記更新データを送信することが可能である、という作用効果を有する。
【００１９】
このことにより、前記コンピュータは、前記周辺機器から、対応可能な最大の通信速度を示すデータを受信し、前記周辺機器の通信速度を、前記対応可能な最大の通信速度に（リモートで）再設定して、前記更新データを送信することができる。
【００２０】
その結果、ネットワーク上に、対応可能な最大の通信速度が現在の設定よりも高い周辺機器が接続されていた場合に、前記コンピュータは、前記周辺機器との間の通信速度をリモートで再設定することによって、前記対応可能な最大の通信速度で前記更新データを送信することができる。
【００２１】
従って、前記周辺機器がたとえ前記コンピュータから遠隔地に存在している場合においても、直接現地で前記周辺機器を操作して前記周辺機器との間の通信速度を再設定する手間を削減することができる。
【００２２】
また、本発明は、対応可能な最大の通信速度を示すデータの送信を要求するデータを送信するステップにおいて、前記コンピュータが、複数の前記周辺機器に、それぞれ対応可能な最大の通信速度を示すデータの送信を要求するデータを送信し、
前記対応可能な最大の通信速度を示すデータを受信して記憶するステップにおいて、前記コンピュータが、複数の前記周辺機器から、それぞれ前記対応可能な最大の通信速度を示すデータを受信して前記周辺機器を識別するデータに関連付けて記憶し、
前記対応可能な最大の通信速度に設定するコマンドを送信するステップにおいて、前記コンピュータが、複数の前記周辺機器から、それぞれ前記対応可能な最大の通信速度を示すデータを受信したことに応じて、複数の前記周辺機器に、それぞれ前記対応可能な最大の通信速度に設定するコマンドを送信し、
設定した前記最大の通信速度で前記更新データを送信するステップにおいて、前記コンピュータが、複数の前記周辺機器に、それぞれ設定した前記最大の通信速度で前記更新データを送信することが更に望ましい。
【００２３】
本発明のこのような構成によれば、対応可能な最大の通信速度を示すデータの送信を要求するデータを送信するステップにおいて、前記コンピュータが、複数の前記周辺機器に、それぞれ対応可能な最大の通信速度を示すデータの送信を要求するデータを送信し、
前記対応可能な最大の通信速度を示すデータを受信して記憶するステップにおいて、前記コンピュータが、複数の前記周辺機器から、それぞれ前記対応可能な最大の通信速度を示すデータを受信して前記周辺機器を識別するデータに関連付けて記憶し、
前記対応可能な最大の通信速度に設定するコマンドを送信するステップにおいて、前記コンピュータが、複数の前記周辺機器から、それぞれ前記対応可能な最大の通信速度を示すデータを受信したことに応じて、複数の前記周辺機器に、それぞれ前記対応可能な最大の通信速度に設定するコマンドを送信し、
設定した前記最大の通信速度で前記更新データを送信するステップにおいて、前記コンピュータが、複数の前記周辺機器に、それぞれ設定した前記最大の通信速度で前記更新データを送信することが可能である、という作用効果を有する。
【００２４】
このことにより、前記コンピュータは、複数の前記周辺機器からそれぞれ受信した前記対応可能な最大の通信速度に応じて、前記対応可能な最大の通信速度に複数の前記周辺機器の通信速度をそれぞれ再設定して、それぞれ前記更新データを送信することができる。
【００２５】
その結果、ネットワーク上にそれぞれ対応可能な最大の通信速度が異なる複数の周辺機器が接続されていた場合にも、前記コンピュータは、複数の前記周辺機器との間の通信速度をそれぞれリモートで再設定することによって、前記対応可能な最大の通信速度で、それぞれ前記更新データを送信することができる。
【００２６】
ここで、前記コンピュータは、前記コンピュータのユーザによる操作を受け付けたことに応じて、前記対応可能な最大の通信速度を示すデータの送信を要求するデータを、複数の前記周辺機器にそれぞれ送信してもよいし、あらかじめ作成しておいたプログラムを動作させることにより送信してもよい。
【００２７】
いずれにしても、前記コンピュータは、前記対応可能な最大の通信速度を示すデータの送信を要求するデータを一度に複数の周辺機器にそれぞれ送信することによって、複数の前記周辺機器との間の通信速度をそれぞれリモートで再設定して、同時に並行して更新データをそれぞれの周辺機器に送信することができる。
【００２８】
従って、複数の前記周辺機器がたとえ遠隔地に存在している場合においても、直接現地で複数の前記周辺機器を操作して複数の前記周辺機器との間の通信速度を設定する手間を削減することができる。
【００２９】
また、前記通信ネットワーク上に前記対応可能な最大通信速度の異なる多数の周辺機器が存在する場合においても、前記周辺機器を識別するデータに関連付けて記憶された対応可能な最大の通信速度を示すデータに応じて、それぞれ並行して前記更新データをそれぞれの周辺機器に送信することができる。
【００３０】
また、本発明は、前記更新データを送信するステップにおいて、前記コンピュータは、前記対応可能な最大の通信速度に設定するコマンドを、前記周辺機器に送信し、所定の時間待機してから前記更新データを送信することが更に望ましい。
【００３１】
本発明のこのような構成によれば、前記更新データを送信するステップにおいて、前記コンピュータは、前記対応可能な最大の通信速度に設定するコマンドを、前記周辺機器に送信し、所定の時間待機してから前記更新データを送信することが可能である、という作用効果を有する。
【００３２】
このことにより、前記コンピュータは、前記周辺機器との間の通信速度を、対応可能な最大の通信速度に設定するコマンドを送信後、所定の時間待機してから前記更新データを前記周辺機器に送信するため、前記コマンドを受信後、前記周辺機器が通信速度を対応可能な最大の通信速度に再設定する時間を確保することが可能となる。
【００３３】
その結果、前記周辺機器が、通信速度を対応可能な最大の通信速度に再設定する前に、前記コンピュータから引き続き前記更新データを前記最大の通信速度で受信してしまい、エラーとなる可能性をより小さくすることができる。
【００３４】
なお、上述の所定の待機時間は、前記周辺機器が前記コマンドを受信してから通信速度を再設定するまでに要する時間に応じて、安全マージンを持たせて決定してよい。より安全マージンをより大きく確保することにより、前記周辺機器が何らかの影響により通信速度を再設定するのが遅延した場合にもエラーとなる可能性をより小さくできる。逆に、安全マージンをより小さくすることにより、全体として更新データの送信に要する時間をより短くすることができる。
【００３５】
このように、上述の所定の待機時間の設定にはトレードオフがあり、周辺機器が前記コマンドを受信してから通信速度を再設定するまでに要する時間や、そのばらつき具合、更新データの送信を行うことが可能な時間等、様々な条件に応じて最適な待機時間を決定するのが望ましい。
【００３６】
また、本発明は、前記更新データを送信するステップにおいて、前記コンピュータは、前記更新データを送信する前に、所定のテストコマンドデータを前記周辺機器に送信し、前記所定のテストコマンドデータの送信から所定の確認時間以内に前記周辺機器から所定のリプライデータを受信したことに応じて、前記更新データを送信することが更に望ましい。
【００３７】
本発明のこのような構成によれば、前記更新データを送信するステップにおいて、前記コンピュータは、前記更新データを送信する前に、所定のテストコマンドデータを前記周辺機器に送信し、前記所定のテストコマンドデータの送信から所定の確認時間以内に前記周辺機器から所定のリプライデータを受信したことに応じて、前記更新データを送信することが可能である、という作用効果を有する。
【００３８】
このことにより、前記コンピュータは、前記所定のテストコマンドデータの送信から所定の確認時間以内に所定のリプライデータの受信を確認した場合にのみ前記更新データを送信することができる。
【００３９】
その結果、前記コンピュータは、何らかの原因により通信速度が前記コマンドにより設定された通信速度と一致しない場合等、前記所定の確認時間以内に前記所定のリプライデータの受信が確認できない場合には前記更新データの送信を回避することができる。
【００４０】
ここで、前記所定のテストコマンドデータ及び前記所定のリプライデータは、前記更新データのデータ長に比較して十分に短いデータ長のものを使用してよい。比較的長い前記更新データの送信を始める前に、通信速度が不一致である場合等のエラー状態を早期に確認してしかるべき対策を採ることができるからである。
【００４１】
本発明は、前記通信ネットワークに接続された周辺機器に、前記周辺機器のファームウェアの更新データを送信するコンピュータであって、
前記周辺機器に、対応可能な最大の通信速度を示すデータの送信を要求するデータを送信する手段と、
前記周辺機器から、前記対応可能な最大の通信速度を示すデータを受信して記憶する手段と、
前記対応可能な最大の通信速度を示すデータを受信したことに応じて、前記周辺機器に、前記対応可能な最大の通信速度に設定するコマンドを送信する手段と、
前記周辺機器に、設定した前記最大の通信速度で前記更新データを送信する手段と、を備えることを特徴とする。
【００４２】
本発明のこのような構成によれば、前記コンピュータは、前記周辺機器に、対応可能な最大の通信速度を示すデータの送信を要求するデータを送信し、
前記周辺機器から、前記対応可能な最大の通信速度を示すデータを受信して記憶し、
前記対応可能な最大の通信速度を示すデータを受信したことに応じて、前記周辺機器に、前記対応可能な最大の通信速度に設定するコマンドを送信し、
前記周辺機器に、設定した前記最大の通信速度で前記更新データを送信することが可能である、という作用効果を有する。
【発明を実施するための最良の形態】
【００４３】
以下、図面を参照して本発明の実施形態について説明する。
【００４４】
図１は、本発明の好適な実施形態の一例に係るシステムの全体構成を示すブロック図である。図２は、本発明の好適な実施形態の一例に係るコンピュータ１１、１２ａ、１２ｂ、１２ｃ、・・・の構成を示すブロック図である。図３は、本発明の好適な実施形態の一例に係る周辺機器としてのプリンタ１３ａ１、１３ａ２、１３ａ３、１３ｂ、１３ｃ、・・・の構成を示すブロック図である。図４は、本発明の好適な実施形態の一例に係る更新データ送信処理を示すフローチャートである。図５は、本発明の好適な実施形態の例に係る複数のプリンタの最大通信速度テーブルを示す図である。
［システムの全体構成］
【００４５】
図１に示すように、本発明に係る好適な実施形態の一例に係るシステム１は、コンピュータ１１、１２ａ、１２ｂ、１２ｃ、・・・、周辺機器としてのプリンタ１３ａ１、１３ａ２、１３ａ３、１３ｂ、１３ｃ・・・を含んで構成されている。
【００４６】
コンピュータ１１、１２ａ、１２ｂ、１２ｃ、・・・は通信ネットワーク１４を介して接続されている。更に、プリンタ１３ａ１、１３ａ２、１３ａ３はそれぞれ通信ネットワーク１５ａ１、１５ａ２、１５ａ３を介してコンピュータ１２ａに接続されている。同様に、プリンタ１３ｂはコンピュータ１２ｂに、プリンタ１３ｃは１２ｃに、それぞれ通信ネットワーク１５ｂ、１５ｃを介して接続されている。
【００４７】
図１の例において、コンピュータ１２ａ、１２ｂ、１２ｃはいわゆる汎用パーソナルコンピュータとして実現してもよいし、キャッシュレジスター等の専用情報機器として実現してもよい。
【００４８】
また、通信ネットワーク１４は、Ｅｔｈｅｒｎｅｔ（登録商標）等の構内通信網（ＬＡＮ）として実現してもよいし、専用線、インターネット、ＶＰＮ等の広域通信網（ＷＡＮ）として実現してもよい。通信ネットワーク１４がＷＡＮを含み、コンピュータ１１がコンピュータ１２ａ、１２ｂ、１２ｃ、・・・と互いに遠隔地の関係にある場合に、本発明の効果がより発揮される。
【００４９】
更に、通信ネットワーク１５ａ１、１５ａ２、１５ａ３、１５ｂ、１５ｃ、・・・はＲＳ−２３２Ｃ（最大通信速度１４．４Ｋｂｐｓ）、ＵＳＢ（ＵＳＢ２．０で最大通信速度６０Ｍｂｐｓ）等のシリアルインターフェイスで実現してもよいし、ＳＣＳＩ（最大通信速度３２０Ｍｂｐｓ）等のパラレルインターフェイスで実現してもよい。
【００５０】
更に、コンピュータ１２ａ、１２ｂ、１２ｃ、・・・は、通信ネットワーク１４を介して互いに異なる通信速度でコンピュータ１１に接続されていてもよい。
【００５１】
同様に、プリンタ１３ａ１、１３ａ２、１３ａ３、・・・はそれぞれ通信ネットワーク１５ａ１、１５ａ２、１５ａ３と互いに異なる通信速度で接続されていてもよい。
［コンピュータの構成］
【００５２】
図２に示すように、コンピュータ１１、１２ａ、１２ｂ、１２ｃ、・・・は、制御部１１１、記憶部１１２、通信Ｉ／Ｆ部１１３、入力部１１４、表示部１１５が、バス１１６を介して接続されて構成されている。
【００５３】
制御部１１１は、情報の演算、処理を行う情報演算処理装置であり、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）であってよい。また、制御部１１１はコンピュータ１１、１２ａ、１２ｂ、１２ｃ、・・・全体の制御を行い、記憶部１１２に記憶された各種プログラムを適宜読み出して実行することにより、上述のハードウェアが協働し、本発明に係る各種機能を実現している。
【００５４】
ここで、表示部１１５は、ユーザにデータの入力を受け付ける画面を表示したり、コンピュータ１１、１２ａ、１２ｂ、１２ｃ、・・・による演算処理結果の画面を表示したりするものであり、ブラウン管表示装置（ＣＲＴ）、液晶表示装置（ＬＣＤ）等のディスプレイ装置を含む。
【００５５】
ここで、入力部１１４は、ユーザによる入力の受付を行うものであり、キーボード、ポインティングデバイス等を含んでよい。入力部１１４は、直接又は介在Ｉ／Ｏコントローラを介してコンピュータ１１、１２ａ、１２ｂ、１２ｃ、・・・と接続することができる。
【００５６】
ここで、通信Ｉ／Ｆ部１１３は、コンピュータ１１、１２ａ、１２ｂ、１２ｃ、・・・を専用ネットワーク又は公共ネットワークを介して端末と接続できるようにするためのネットワーク・アダプタである。通信Ｉ／Ｆ部１１３は、モデム、ケーブル・モデム及びＥｔｈｅｒｎｅｔ（登録商標）・アダプタを含んでよい。
【００５７】
ここで、記憶部１１２は、制御部１１１と組み合わせてプログラムの実行に使用するローカルメモリ、大容量のバルクメモリ、及び当該バルクメモリの検索を効率的に行うために使用するキャッシュメモリを含んでよい。記憶部１１２を実現するコンピュータ可読媒体としては、電気的、磁気的、光学的、電磁的に実現するものを含んでよい。より具体的には、半導体記憶装置、磁気テープ、フレキシブルディスク、ランダム・アクセス・メモリ（ＲＡＭ）、リードオンリー・メモリ（ＲＯＭ）、ＣＤ−ＲＯＭとＣＤ−Ｒ／ＷとＤＶＤとを含む光ディスクが含まれる。
［プリンタの構成］
【００５８】
図３に示すように、プリンタ１３ａ１、１３ａ２、１３ａ３、１３ｂ、１３ｃ、・・・は、ＣＰＵ１３１、ＦｌａｓｈＲＯＭ１３２、ＲＡＭ１３３、通信Ｉ／Ｆ部１３４、操作ボタン１３５、表示部１３６、プリンタユニット１３７が、バス１３８を介して接続されて構成されている。
【００５９】
ＣＰＵ１３１は、情報の演算、処理を行う情報演算処理装置であり、プリンタ１３ａ１、１３ａ２、１３ａ３、１３ｂ、１３ｃ、・・・全体の制御を行い、ＦｌａｓｈＲＯＭ１３２に記憶されたファームウェア等の各種プログラムを適宜読み出して実行することにより、上述のハードウェアが協働し、本発明に係る各種機能を実現している。
【００６０】
ここで、表示部１３６は、ユーザにデータの入力を受け付ける画面を表示したり、プリンタ１３ａ１、１３ａ２、１３ａ３、１３ｂ、１３ｃ、・・・による演算処理結果の画面を表示したりするものであり、液晶表示装置（ＬＣＤ）等のディスプレイ装置を含む。
【００６１】
ここで、操作ボタン１３５は、ユーザによる入力の受付を行うものであり、様々な形式のボタンその他の入力デバイスを含んでよい。操作ボタン１３５は、直接又は介在Ｉ／Ｏコントローラを介してプリンタ１３ａ１、１３ａ２、１３ａ３、１３ｂ、１３ｃ、・・・と接続することができる。
【００６２】
ここで、通信Ｉ／Ｆ部１３４は、プリンタ１３ａ１、１３ａ２、１３ａ３、１３ｂ、１３ｃ、・・・を専用ネットワーク又は公共ネットワークを介して端末と接続できるようにするためのネットワーク・アダプタである。通信Ｉ／Ｆ部１１３は、ＲＳ−２３２Ｃ、ＵＳＢ等のシリアルインターフェイス・アダプタ、ＳＣＳＩ等のパラレルインターフェイス・アダプタ、Ｅｔｈｅｒｎｅｔ（登録商標）・アダプタ等を含んでよい。
【００６３】
ここで、ＦｌａｓｈＲＯＭ１３２は、本発明の更新データに係るファームウェアを記憶しており、６４ｋＢ等の所定のブロック単位で一括消去、書き換えが可能となっている。
【００６４】
また、ＲＡＭ１３３は、制御部１１１と組み合わせてプログラムの実行に使用するローカルメモリ、大容量のバルクメモリ、及び当該バルクメモリの検索を効率的に行うために使用するキャッシュメモリを含んでよい。
【００６５】
また、プリンタユニット１３７は、詳細な説明は省略するが、ＣＰＵ１３１の制御に基づいて実際に印刷を行うプリンタヘッド、用紙フィード装置等が含まれる。
［更新データ送信処理］
【００６６】
図４に示したように、本発明の好適な実施形態の一例に係るシステム１は、プリンタ１３ａ１、１３ａ２、１３ａ３、１３ｂ、１３ｃ、・・・のＦｌａｓｈＲＯＭ１３２に記憶されたファームウェアの更新データの送信処理を実行する。
【００６７】
まず、コンピュータ１１、１２ａ、１２ｂ又は１２ｃ、・・・の制御部１１１は、前処理を行う（ステップＳ１０１）。
【００６８】
具体的には、制御部１１１は、更新データの送信の準備のために、例えば、プリンタのスプーラを停止させたり、デバイスＩＤを取得したり、信号線の確認を行ったりする。
【００６９】
次に、制御部１１１は、対象のファームウェアの更新データの準備を行う（ステップＳ１０２）。
【００７０】
具体的には、制御部１１１は、送信する更新データを読み込み、必要に応じてフォーマット変換等を実施する。
【００７１】
次に、制御部１１１は、当該更新データを送信するプリンタ１３ａ１、１３ａ２、１３ａ３、１３ｂ又は１３ｃ、・・・が対応可能な最大の通信速度を示すデータの送信を要求するデータを、プリンタ１３ａ１、１３ａ２、１３ａ３、１３ｂ又は１３ｃ、・・・に送信する。（ステップＳ１０３）。
【００７２】
次に、プリンタ１３ａ１、１３ａ２、１３ａ３、１３ｂ又は１３ｃ、・・・のＣＰＵ１３１は、制御部１１１から送信された、プリンタ１３ａ１、１３ａ２、１３ａ３、１３ｂ又は１３ｃ、・・・が対応可能な最大の通信速度を示すデータの送信を要求するデータを受信したことに応じて、プリンタ１３ａ１、１３ａ２、１３ａ３、１３ｂ又は１３ｃ、・・・が対応可能な最大の通信速度を示すデータをコンピュータ１１、１２ａ、１２ｂ又は１２ｃ、・・・に送信する（ステップＳ１０４）。
【００７３】
次に、制御部１１１は、ＣＰＵ１３１からプリンタ１３ａ１、１３ａ２、１３ａ３、１３ｂ又は１３ｃ、・・・が対応可能な最大の通信速度を示すデータを受信したことに応じて、当該最大の通信速度に設定するコマンドをプリンタ１３ａ１、１３ａ２、１３ａ３、１３ｂ又は１３ｃ、・・・に送信する（ステップＳ１０５）。
【００７４】
なお、通信ネットワーク１４、１５ａ１。１５ａ２、１５ａ３、１５ｂ、１５ｃに複数の更新対象のプリンタが接続されている場合、図５に示すように、制御部１１１は、各プリンタを識別するデータ（ネットワークアドレス、ポート番号等）に関連付けて最大の通信速度を記憶部１１２に記憶する。
【００７５】
次に、ＣＰＵ１３１は、制御部１１１から、当該最大の通信速度に設定するコマンドを受信したことに応じて、当該コマンドを実行し、プリンタ１３ａ１、１３ａ２、１３ａ３、１３ｂ又は１３ｃ、・・・の通信速度を当該最大の通信速度に設定する（ステップＳ１０６）。
【００７６】
ここで、制御部１１１は、ステップＳ１０５の処理を実行した後、ＣＰＵ１３１がプリンタ１３ａ１、１３ａ２、１３ａ３、１３ｂ又は１３ｃ、・・・の通信速度を当該最大の通信速度に設定する時間を確保するため、所定の時間待機する（ステップＳ１０７）。
【００７７】
なお、この待機時間は、プリンタ１３ａ１、１３ａ２、１３ａ３、１３ｂ又は１３ｃ、・・・が当該コマンドを実行する時間、通信ネットワーク１４、１５ａ１、１５ａ２、１５ａ３、１５ｂ、１５ｃ、・・・の通信速度その他のシステム条件に基づいてあらかじめ決定しておいてもよい。具体的には、例えば、プリンタ１３ａ１、１３ａ２、１３ａ３、１３ｂ又は１３ｃ、・・・が当該コマンドを実行する時間が５００ｍｓｅｃであった場合、待機時間を１ｓｅｃとしてもよい。また、プリンタ毎に適当な別々の待機時間を設定してもよい。
【００７８】
或いは、ステップＳ１０１の前処理において、通信ネットワーク１４、１５ａ１、１５ａ２、１５ａ３、１５ｂ、１５ｃ、・・・の通信速度を測定し、測定した当該通信速度に応じて、毎回最適な値を決定してもよい。
【００７９】
また、図５に示すように最大通信速度の異なる複数のプリンタに更新データを送信する場合、制御部１１１は、それぞれのプリンタ毎に通信速度及び待機時間を設定し、マルチスレッド等の技術により、並行して当該複数のプリンタへの更新データの送信を行うことができる。
【００８０】
ここで、当該コマンドの実行時間に対して、当該待機時間により多くのマージンを確保することにより、ＣＰＵ１３１が通信速度を変更する前に制御部１１１が更新データを送信してしまい、通信エラーとなる確率をより低くことができる。しかしながら、当該マージンをあまり大きくすると、更新データの送信処理全体の処理時間がその分多く必要になるというトレードオフがあるので、上述のように状況に応じて適当な値を選択すると好適である。
【００８１】
次に、制御部１１１は、更新データを設定した当該最大の通信速度でプリンタ１３ａ１、１３ａ２、１３ａ３、１３ｂ又は１３ｃ、・・・に送信する（ステップＳ１０８）。
【００８２】
次に、ＣＰＵ１３１は、送信された当該更新データを受信する（ステップＳ１０９）。
【００８３】
次に、制御部１１１及びＣＰＵ１３１は所定の後処理を行う（ステップＳ１１０）。具体的には、例えば、ＣＰＵ１３１は、受信した当該更新データの通信エラーをチェックしたり、更新データ自体の整合性をチェックしたり、等の処理を行った後、当該更新データでＦｌａｓｈＲＯＭ１３２を更新する。
【００８４】
その後、ＣＰＵ１３１は、プリンタ１３ａ１、１３ａ２、１３ａ３、１３ｂ又は１３ｃ、・・・のリセットを行い、当該更新データによる更新を反映させる。
【００８５】
また、制御部１１１は、通信速度を元の通信速度に戻し、プリンタ１３ａ１、１３ａ２、１３ａ３、１３ｂ又は１３ｃ、・・・のファームウェアのバージョンデータ等を取得して、当該更新データによるファームウェアの更新が成功したか否かを確認する。
【００８６】
以上、本発明の実施形態について説明したが、本発明は上述した実施形態に限るものではない。また、本発明の実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、本発明の実施例に記載されたものに限定されるものではない。
【００８７】
具体的には、例えば、本発明に係る周辺機器として、プリンタの例を挙げて説明したが、本発明の技術的範囲はこれに限られず、ビデオカードやストレージドライブなど、その他の周辺機器のファームウェアの更新データの送信にも適用可能である。
【図面の簡単な説明】
【００８８】
【図１】本発明に係るシステムの全体構成を示すブロック図である。
【図２】本発明に係るコンピュータの構成を示すブロック図である。
【図３】本発明に係るプリンタの構成を示すブロック図である。
【図４】本発明に係る更新データ送信処理を示すフローチャートである。
【図５】本発明に係る複数のプリンタの最大の通信速度テーブルを示す図である。
【符号の説明】
【００８９】
１  システム、１１、１２ａ、１２ｂ、１２ｃ  コンピュータ、１３ａ１、１３ａ２、１３ａ３、１３ｂ、１３ｃ  プリンタ、１４、１５ａ１、１５ａ２、１５ａ３、１５ｂ、１５ｃ  通信ネットワーク、１１１  制御部、１１２  記憶部、１１３  通信Ｉ／Ｆ部、１１４  入力部、１１５  表示部、１１６  バス、１３１  ＣＰＵ、１３２  ＦｌａｓｈＲＯＭ、１３３  ＲＡＭ、１３４  通信Ｉ／Ｆ部、１３５  操作ボタン、１３６  表示部、１３７  プリンタユニット、１３８  バス
【図１】
2008033708.tif 000003
【図２】
2008033708.tif 000004
【図３】
2008033708.tif 000005
【図４】
2008033708.tif 000006
【図５】
2008033708.tif 000007