JP4911187B2 - 情報処理システム、ドライバ更新プログラム及び周辺装置 - Google Patents

情報処理システム、ドライバ更新プログラム及び周辺装置 Download PDF

Info

Publication number
JP4911187B2
JP4911187B2 JP2009074223A JP2009074223A JP4911187B2 JP 4911187 B2 JP4911187 B2 JP 4911187B2 JP 2009074223 A JP2009074223 A JP 2009074223A JP 2009074223 A JP2009074223 A JP 2009074223A JP 4911187 B2 JP4911187 B2 JP 4911187B2
Authority
JP
Japan
Prior art keywords
driver
information processing
firmware
update
peripheral device
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.)
Active
Application number
JP2009074223A
Other languages
English (en)
Other versions
JP2010225079A (ja
Inventor
智 吉森
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Brother Industries Ltd
Original Assignee
Brother Industries Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2009074223A priority Critical patent/JP4911187B2/ja
Publication of JP2010225079A publication Critical patent/JP2010225079A/ja
Application granted granted Critical
Publication of JP4911187B2 publication Critical patent/JP4911187B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Transfer Between Computers (AREA)

Description

本発明は、情報処理装置に接続される周辺機器に組み込まれているファームウェア、及び情報処理装置に組み込まれているデバイスドライバの更新方法に関する。
周辺機器(例えばプリンタ)のファームウェアと、その周辺機器を制御するために情報処理装置(例えばPC)に組み込まれるデバイスドライバ(以下、ドライバ)のバージョンを一致させるための技術として、特許文献1に記載のような方法が知られている。PCに組み込まれたドライバが生成する印刷データ内に、期待する(例えば、最新版)ファームウェアのバージョン情報を埋め込んでおく。その印刷データを受信したプリンタは、印刷データからバージョン情報を抜き出し、現在作動中のファームウェアのバージョンと比較する。比較の結果、例えば現在組み込まれているファームウェアのバージョンの方が古い場合、外部Webからファームウェアを取得する。このようにすることで、PC側に組み込まれているドライバと、プリンタ側に組み込まれているファームウェアのバージョンを一致させることができる。
特開2006−235739 特開2004−178278
ところで、PC側に組み込まれているドライバが最新バージョンで、プリンタ側に組み込まれているファームウェアが古いバージョンである場合、最新バージョンのドライバに対応する新しいファームウェアをプリンタ側で取得すれば、直ちにファームウェアを更新すればよい。この場合、ドライバとファームウェアのバージョンを一致させる上で、プリンタがファームウェアの取得後直ちに更新を行うことに特に問題はない。
一方、特許文献2の段落[0013]に記載のように、インターネットを介してPCがドライバとファームウェアとを同時に取得する技術が存在する。このような技術を用いることで、PC側でドライバを更新すると共に、ファームウェアをプリンタへ送信することで、プリンタのファームウェアも直ちに更新される。しかしながら、PC側のドライバを更新した場合、この更新されたドライバを有効にするためにPCのオペレーションシステム(OS)の再起動を要する場合がある。そのため、PC側でOSの再起動が行われるまでは、プリンタ側のファームウェアのみが最新状態で、PCのドライバが依然として古いバージョンのままとなり、PC側のドライバとプリンタ側のファームウェアを同時に取得したのにも関わらず両者のバージョンが不一致になるという問題があった。
本発明は上記問題を解決するためになされており、情報処理装置側のドライバの更新後に再起動が実行されるまでの期間において、そのドライバの更新に対応して同時期に更新される周辺機器のファームウェアとの対応の不一致を未然に防ぐことを目的とする。
上記目的を達成するためになされた請求項1に記載の情報処理システムでは、周辺機器を制御するためのドライバが組み込まれた情報処理装置と、情報処理装置のドライバと連携して自周辺機器を作動させるためのファームウェアが組み込まれた周辺機器とが通信可能に接続されている。このうち、情報処理装置は、ドライバ更新データを用いて情報処理装置のドライバを更新するドライバ更新手段と、ドライバ更新手段によるドライバの更新後において情報処理装置の再起動の実行が確定したことを条件に、そのドライバ更新データと対応するファームウェア更新データを周辺機器へ転送する転送制御手段とを備える。また、周辺機器は、情報処理装置から転送されてきたファームウェア更新データに基づいて周辺機器のファームウェアを更新するファームウェア更新手段を備える。
なお、ここでいうドライバ更新データとは、既存のドライバと差し替えるための新しいドライバそのものであってもよいし、既存のドライバの一部を書き換えるプログラム等であってもよい。また、ファームウェア更新データについても同様である。
また、「ドライバ更新データと対応するファームウェア更新データ」というように、ドライバ更新データとファームウェア更新データとが「対応する」というのは、ドライバ及びファームウェアの性能を完全に発揮し得る最適化された組み合わせであることを示しており、通常、両者のバージョンが最新のものであることを指す。
本発明の情報処理システムによれば、更新後のドライバを有効にするための情報処理装置の再起動に連動して、ファームウェア更新データを情報処理装置から周辺機器へ転送することで、更新後のドライバが有効になるのとほぼ同時期にファームウェアを更新できるようになる。よって、更新後のドライバが有効にならない再起動前に周辺機器のファームウェアの更新のみが有効になることに起因する、ドライバとファームウェアとの対応の不一致を防止できる。
ところで、情報処理装置においてドライバを更新した際、再起動をしなくても更新後のドライバを有効にできるケースもある。その場合、情報処理装置の再起動を待たずに周辺機器のファームウェアを更新しても差し支えない。
そこで、請求項2に記載のように構成するとよい。すなわち、情報処理装置は、更新データが適用された更新後のドライバを有効にするために、ドライバ更新手段によるドライバの更新後に情報処理装置を再起動する必要があるか否かを判断する判断手段を更に備える。そして、情報処理装置の転送制御手段は、判断手段によって再起動をする必要があると判断された場合、ドライバ更新手段によるドライバの更新後において情報処理装置の再起動の実行が確定したことを条件に、そのドライバ更新データと対応するファームウェア更新データを周辺機器へ転送する。一方、判断手段によって再起動をする必要がないと判断された場合、無条件にドライバ更新データと対応するファームウェア更新データを周辺機器へ転送する。
このように構成することで、ドライバの更新によって情報処理装置の再起動が必要ないのであれば、再起動の有無に関わらずファームウェア更新データが直ちに周辺機器へ転送され、周辺機器側でファームウェアの更新を行うことができる。よって、ドライバ及びファームウェアの更新をいち早く完了することができる。
つぎに、請求項3に記載の情報処理システムでは、情報処理装置は、ドライバ更新データ用いて情報処理装置のドライバを更新するドライバ更新手段と、ドライバ更新手段によるドライバの更新後における情報処理装置の再起動の実行が確定する前に、そのドライバ更新データと対応するファームウェア更新データを周辺機器へ転送する転送手段と、ドライバ更新手段によるドライバの更新後において情報処理装置の再起動の実行が確定した場合、先に転送手段によって転送したファームウェア更新データによるファームウェアの更新を要求する更新指示を周辺機器に対して通知する通知手段とを備える。そして、周辺機器は、情報処理装置から転送されてきたファームウェア更新データを、周辺機器のファームウェアの更新に適用しない状態で一時的に記憶する記憶手段と、情報処理装置から更新指示を受信したことを条件に、記憶手段に記憶されているファームウェア更新データを用いて周辺機器のファームウェアの更新を行うファームウェア更新手段を備える。
請求項3に記載の情報処理システムによれば、情報処理装置においてドライバ更新後の再起動が確定する前に、予めファームウェア更新データが周辺機器へと転送される。ただし、ファームウェア更新データを受信した周辺機器では、直ぐにはファームウェアの更新を行わず、情報処理装置の再起動が確定してからファームウェアを更新する。このようにすることで、更新後のドライバが有効になるのとほぼ同時期にファームウェアを更新できるようになる。よって、更新後のドライバが有効にならない再起動前に周辺機器のファームウェアの更新のみが有効になることに起因する、ドライバとファームウェアとの対応の不一致を防止できる。
つぎに、請求項4に記載の情報処理システムは次のような特徴を有する。すなわち、周辺機器のファームウェア更新手段は、ファームウェア更新データを受信したときから、更新指示を受信していない状態で所定の時間が経過したと判断した場合、更新指示の受信を待たずして記憶手段に記憶されているファームウェア更新データを用いて周辺機器のファームウェアの更新を行う。
このようにすることで、周辺機器がファームウェア更新データを受信してから、何らかの理由により情報処理装置側から更新指示が受信できなかった場合でも、記憶手段の記憶領域が長時間にわたってファームウェア更新データに占有され続ける状態を回避できる。
ところで、プリンタや複合機等の周辺機器では、作業用のメモリに印刷データ等が記憶される。このような作業用メモリを本発明における記憶手段として利用する場合、ファームウェア更新データがこの作業用メモリに記憶され続けることで印刷データを記憶するための記憶容量を圧迫しないように配慮する必要がある。
そこで、請求項5に記載のように構成するとよい。すなわち、周辺機器のファームウェア更新手段は、ファームウェア更新データが記憶手段に記憶されている状態で、記憶手段の空き記憶容量が所定の規定値以下になったと判定した場合、更新指示の受信を待たずして記憶手段に記憶されているファームウェア更新データを用いて周辺機器のファームウェアの更新を行い、記憶手段においてファームウェア更新データが記憶されている部分の記憶領域を開放する。
このようにすることで、記憶手段の記憶容量が少なくなった状態にも関わらず、ファームウェア更新データによって記憶領域が占有され続けてしまうといった状態を回避できる。
なお、請求項6に記載のように、情報処理装置からの更新指示の受信を待たずして周辺機器においてファームウェアの更新が行われた場合、その旨を情報処理装置に通知するように構成するとよい。このようにすることで、情報処理装置側でドライバの更新後に再起動が行われていない状態で周辺機器からの更新通知を受信した場合、ユーザがドライバとファームウェアとの対応の不一致に気づき、必要に応じて情報処理装置を再起動させてドライバの更新を有効にすることができる。また、情報処理装置が周辺機器から更新通知を受信した場合、ユーザに対して情報処理装置の再起動を促すメッセージを報知するように構成することもできる。さらに、情報処理装置からの更新指示の受信を待たずして周辺機器においてファームウェアの更新が行われた場合、情報処理装置では、更新指示を周辺機器に対して出力する必要がなくなったにも関わらず、更新指示を出力するための処理を継続することになる。そこで、周辺機器からの更新通知を受信した場合に、更新指示を出力するための処理を停止させるように構成することで、情報処理装置側の処理を軽減させることができる。
つぎに、請求項7に記載のドライバ更新プログラムは、ドライバ更新データを用いて情報処理装置のドライバを更新するドライバ更新手順と、ドライバ更新手順によるドライバの更新後において情報処理装置の再起動の実行が確定したことを条件に、そのドライバ更新データと対応するファームウェア更新データを周辺機器へ転送する転送制御手順とを有することを特徴とする。
このように構成されたドライバ更新プログラムを情報処理装置で実行することで、請求項1に記載の情報処理システムについて記述した効果と同様の効果を得られる。なお、このドライバ更新プログラムは、ドライバ更新データ及びファームウェア更新データとセットにして情報処理装置へ供給するといった運用が考えられる。
つぎに、請求項8に記載のドライバ更新プログラムは、ドライバ更新データ用いて情報処理装置のドライバを更新するドライバ更新手順と、ドライバ更新手順によるドライバの更新後における情報処理装置の再起動の実行が確定する前に、そのドライバ更新データと対応するファームウェア更新データを周辺機器へ転送する転送手順と、ドライバ更新手順によるドライバの更新後において情報処理装置の再起動の実行が確定した場合、先に転送手順によって転送したファームウェア更新データによるファームウェアの更新を要求する更新指示を周辺機器に対して通知する通知手順とを有することを特徴とする。
このように構成されたドライバ更新プログラムを情報処理装置で実行することで、請求項3に記載の情報処理システムについて記述した効果と同様の効果を得られる。なお、このドライバ更新プログラムは、ドライバ更新データ及びファームウェア更新データとセットにして情報処理装置へ供給するといった運用が考えられる。
つぎに、請求項9に記載の周辺機器は、請求項3に記載の情報処理システムを構成する周辺機器に相当する。すなわち、この周辺機器は、情報処理装置におけるドライバの更新に伴い情報処理装置から転送されてきたファームウェア更新データを、周辺機器のファームウェアの更新に適用しない状態で記憶する記憶手段と、情報処理装置で再起動の実行が確定したことに伴い情報処理装置から送信されてくる更新指示を受信したことを条件に、記憶手段に記憶されているファームウェア更新データを用いて周辺機器のファームウェアの更新を行うファームウェア更新手段を備える。このように構成された周辺装置によれば、請求項3に記載の情報処理システムに関して記述した効果と同様の効果を得られる。
実施形態の印刷システムの概略構成を示すブロック図である。 PC1が実行する更新処理の手順を示すフローチャートである。 ファームウェア更新通知画面の表示例を示す説明図である。 再起動確認画面の表示例を示す説明図である。 第1実施形態のファームウェア転送処理の手順を示すフローチャートである。 第2実施形態のファームウェア転送処理の手順を示すフローチャートである。 第1実施形態のファームウェア更新処理の手順を示すフローチャートである。 第2実施形態のファームウェア更新処理の手順を示すフローチャートである。
以下、本発明の一実施形態を図面に基づいて説明する。なお、本発明は下記の実施形態に何ら限定されるものではなく様々な態様にて実施することが可能である。
[印刷システムの構成の説明]
本発明の一実施形態である印刷システムは、図1に示すように、パーソナルコンピュータ1(本発明の情報処理装置に相当)と、PC1に接続されたプリンタ100(本発明の周辺機器に相当)とを備える。
PC1は、周知のコンピュータ装置と同様の構成を有し、CPU10、ROM12、RAM14、ハードディスクドライブ(以下、HDD)16、表示部18、操作部20、及び通信インタフェース(以下、通信I/F)22等を備える。
CPU10は、ROM12に記憶されたプログラムやデータに従って各種演算を実行する装置であり、本実施形態においては、PC1にインストールされているプリンタドライバプログラム(以下、ドライバ)に従って、プリンタ100に対して印刷データを出力する。ROM12は、PC1の電源を切っても記憶内容を保持する記憶装置で、IPLやBIOSといった一部のプログラムや読み出し専用のデータ等を記憶している。
RAM14は、CPU10から直接アクセスされるメインメモリとして利用される記憶装置である。このRAM14には、CPU10で実行される各種プログラムがROM12やHDD16から読み込まれ、また、CPU10による各種演算の結果や各種データも記憶される。上記の印刷制御に係る演算処理を実行する際には、各処理を実行するためのプログラムがHDD16からRAM14へ読み込まれる。そして、RAM14に記憶されたプログラムに従って、CPU10が処理を実行することになる。
HDD16は、OSやアプリケーションプログラム、ドライバ、各種データファイルを保存しておくための補助記憶装置である。PC1に接続されているプリンタ100を制御するためのドライバもHDD16に格納されている。表示部18は、液晶ディスプレイ等で構成されており、各種情報を表示する。操作部20は、マウス等のポインティングデバイスやキーボードにより構成されており、ユーザによる操作に応じた指令をCPU10へ入力する。通信I/F22は、PC1にプリンタ印刷装置やその他周辺機器を接続したり、PC1をネットワークへ接続するためのハードウェアインタフェースである。なお、図1においては、この通信I/F22を介してPC1とプリンタ100とが通信可能に接続されており、更に、PC1がインターネット200へ接続されている状態を示している。
プリンタ100は、印刷用紙に画像を印刷する印刷装置であり、CPU102、ROM104、RAM106、不揮発性メモリ108、操作部110、表示部112、印刷部114、及び通信インタフェース(以下、通信I/F)116等を備えている。
CPU102は、ROM104や不揮発性メモリ108に記憶されたプログラムやデータに従って各種演算を実行する装置であり、上述の画像印刷に係る演算処理はこのCPU102によって実行される。ROM104は、プリンタ100の電源を切っても記憶内容を保持する記憶装置で、PC1のドライバと連携してプリンタ100を作動させるためのファームウェア等のプリンタ100の作動用のプログラムや読み出し専用のデータ等を記憶している。
RAM106は、CPU102から直接アクセスされるメインメモリとして利用される記憶装置である。このRAM106には、CPU102で実行される各種プログラムがROM104から読み込まれ、また、CPU102による各種演算の結果や各種データも記憶される。上述の画像印刷に係る演算処理を実行する際には、各処理を実行するためのプログラムがROM104からRAM106へ読み込まれる。そして、RAM106に記憶されたプログラムに従って、CPU10が処理を実行することになる。
不揮発性メモリ108は、電源を切っても記憶内容が消えない書き換え可能な半導体メモリ(例えば、フラッシュメモリ)等によって構成されており、印刷データ等の各種データを記憶する。操作部110は、テンキーや文字キー、ファンクションキー等のキースイッチ群を備え、ユーザによるキー操作に応じた指令をCPU102へ入力する。表示部112は、液晶ディスプレイ等で構成された出力装置であり、プリンタ100の動作状態や操作ガイダンス等の各種情報を表示する。
印刷部22は、CPU102からの制御に基づいて、例えばインクジェット方式あるいはレーザ方式等により、印刷用紙に画像を印刷する装置である。通信I/F116は、プリンタ100と他の情報処理装置等を接続するためのハードウェアインタフェースであり、例えば、USB(Universal Serial Bus)等のリシアルバスやネットワークアダプタ等が用いられる。
[ドライバ及びファームウェアを更新する手順の概要]
上述のような印刷システムにおいて、PC1は、プリンタ100を制御するためのドライバによってドキュメントの印刷データを作成し、この作成した印刷データをプリンタ100へ送信する。プリンタ100は、ファームウェアによってPC1から送られてきた印刷データから画像を生成し、これを印刷する。
PC1及びプリンタ100にインストールされているドライバ及びファームウェアは、ソフトウェアベンダ等から提供される更新データを用いることで、それぞれ最新バージョンへ更新することができる。その際、ドライバ及びファームウェアの性能を完全に発揮し得る最適化された組み合わせとして、例えば、ドライバ及びファームウェアを最新バージョンへ同時期に更新するための更新データ(ドライバ更新データ、ファームウェア更新データ)がセットで提供される。さらに、これらの更新データをPC1及びプリンタ100へ導入するためのインストーラプログラムも更新データに同梱して提供される。なお、ここでいうドライバ更新データとは、既存のドライバと差し替えるための新しいドライバそのものであってもよいし、既存のドライバの一部を書き換えるプログラム等であってもよい。また、ファームウェア更新データについても同様である。
このような更新データ及びインストーラプログラムを含む更新パッケージは、例えば、インターネット200経由でソフトウェアベンダ側のWebサイトからPC100へダウンロードするといった提供方法や、更新パッケージのデータを記憶した記憶媒体をPC1に接続し、PC1がこれを読み取るといった提供方法が考えられる。
上記のような方法で更新パッケージを取得したPC1は、同梱のインストーラプログラムを実行し、その手順に従ってドライバを更新するとともにファームウェア更新データをプリンタ100へ転送する。なお、この一連の処理の詳細な内容については後述する。
[PC1が実行する更新処理の説明]
つぎに、PC1において実行される更新処理の手順について、図2のフローチャートに基づき説明する。この更新処理は、PC1で取得済みの更新パッケージに同梱のインストーラプログラムに従ってPC1のCPU10が実行する処理である。
PC1のCPU10は、まず、予め取得済みのドライバ更新データ及びファームウェア更新データによって提供されるドライバ及びファームウェアのバージョンと、PC1側のドライバ及びプリンタ100側のファームウェアのバージョンとを比較し、更新の必要があるか否かを調べる(S100)。ここでは、更新用データのバージョンが、現在インストールされているドライバ又はファームウェアのバージョンよりも新しい場合に更新の必要があると判定する。そして、この調査の結果、ドライバ及びファームウェアの両方に更新の必要があるか否かを判定する(S101)。S101での判定の結果、ドライバ又はファームウェアの何れか一方に更新が必要である、あるいはドライバ及びファームウェアの何れにも更新の必要がないと判定した場合(S101:NO)、更新が必要なドライバ又はファームウェアの何れか一方を各個に更新するか(S102)、あるいは更新を全くしないで更新処理を終了する。なお、S102では、PC1側のドライバに更新の必要がある場合、ドライバ更新データを用いてドライバの更新を行う。このとき、ドライバの更新を有効にするためにPC1のOSの再起動が必要であれば、適宜再起動を行う。あるいは、プリンタ100のファームウェアに更新の必要がある場合、ファームウェア更新データをプリンタ100へ転送する。
一方、S101でドライバ及びファームウェアの両方に更新の必要があると判定した場合(S101:YES)、まず、ドライバ更新データを用いてPC1側のドライバを更新する(S103)。そして、ドライバの更新を有効にするためにOSの再起動が必要であるか否かを判定する(S104)。ここで、OSの再起動が不要であると判定した場合(S104:NO)、PC100側のファームウェアの更新をユーザに通知するためのGUI(Graphical User Interface)を表示部18に表示する(S105)。
図3に、S105におけるファームウェア更新通知画面の表示例を示す。このGUIには、更新後のドライバに対応した新しいファームウェアをプリンタ100に適用する旨のメッセージ等が記述されている。ユーザは、このGUIの内容を確認することで、PC1側のドライバの更新とともに、プリンタ100側のファームウェアの更新も行われることを知ることができる。
図2のフローチャートの説明に戻る。S105でファームウェアの更新を通知するGUIを表示した後、ファームウェア更新データをプリンタ100へ転送し(S106)、更新処理を終了する。なお、PC1からファームウェア更新データを受信したプリンタ100は、この受信したファームウェア更新データを用いて、自プリンタ100にインストールされているファームウェアを更新する。一方、S104でドライバの更新を有効にするためにOSの再起動が必要であると判定した場合(S104:YES)、再起動の可否をユーザに問い合わせるためのGUIを表示部18に表示する(S107)。
図4に、S107における再起動確認画面の表示例を示す。このGUIには、PC1側のドライバが更新され、この更新を有効にするためにOSの再起動が必要であることを通知するメッセージ等が表示されている。さらに、このGUIには、OSの再起動を直ちに行うか否かを選択するためのラジオボタン301,302が設けられている。これらのラジオボタン301,302のうち何れか一方のボタンの「○」図形にポインティングデバイスを介してチェック(●印)を入れることで、再起動を直ちに行うか、あるいは再起動を保留するかの何れか一方の指示を選択することができる。ラジオボタン301,302で再起動を直ちに行うか否かを選択した後、完了ボタン303をポインティングデバイスでクリックすることで、その選択した内容が更新処理に反映される。
図2のフローチャートの説明に戻る。S108では、上述の再起動確認画面での選択結果に基づき、ユーザによりOSの再起動が承認された否かを判定する。ここで、OSの再起動が承認されたと判定した場合(S108:YES)、ファームウェア更新データをプリンタ100へ転送する(S109)。なお、PC1からファームウェア更新データを受信したプリンタ100は、この受信したファームウェア更新データを用いて、自プリンタ100にインストールされているファームウェアを更新する。S109でファームウェア更新データを転送した後、OSの再起動処理を開始し(S110)、更新処理を終了する。
一方、S108でOSの再起動が保留されたと判定した場合(S108:NO)、ファームウェア転送処理のプロセスを起動し(S111)、更新処理を終了する。なお、S111で起動するファームウェア転送処理の詳細な内容については後述する。
[PC1が実行するファームウェア転送処理(第1実施形態)の説明]
つぎに、PC1において実行されるファームウェア転送処理の第1実施形態の手順について、図5のフローチャートに基づき説明する。この処理は、PC1で取得済みの更新パッケージに同梱のインストーラプログラムに従ってPC1のCPU10が実行する処理であり、上述の更新処理(図2参照)のS111で起動されるプロセスである。
CPU10は、まず、OSの再起動処理又は終了処理の実施の有無を監視する(S200)。S200での監視の結果、OSの再起動処理又は終了処理の実行が確定したか否かを判定する(S201)。ここで、OSの再起動処理又は終了処理の何れも確定していないと判定した場合(S201:NO)、S200の処理へ戻って監視を継続する。一方、OSの再起動又は終了の実行が確定したと判定した場合(S202:YES)、ファームウェア更新データをプリンタ100へ転送する(S202)。
[PC1が実行するファームウェア転送処理(第2実施形態)の説明]
つぎに、PC1において実行されるファームウェア転送処理の第2実施形態の手順について、図6のフローチャートに基づき説明する。この処理は、PC1で取得済みの更新パッケージに同梱のインストーラプログラムに従ってPC1のCPU10が実行する処理であり、上述の更新処理(図2参照)のS111で起動されるプロセスである。
CPU10は、まず、ファームウェア更新データをプリンタ100へ転送する(S300)。つぎに、OSの再起動処理又は終了処理の実施の有無を監視する(S301)。S301での監視の結果、OSの再起動処理又は終了処理の実行が確定したか否かを判定する(S302)。ここで、OSの再起動処理又は終了処理の何れも確定していないと判定した場合(S302:NO)、プリンタ100からファームウェアの更新通知を受信したか否かを判定する(S303)。このファームウェアの更新通知は、プリンタ100がPC1からの更新指示の受信を待たずにファームウェアを更新したことを条件に、プリンタ100から送信される通知である。
S303で、プリンタ100からファームウェアの更新通知を受信していないと判定した場合(S303:NO)、S301の処理へ戻って監視を継続する。一方、プリンタ100からファームウェアの更新通知を受信したと判定した場合(S303:YES)、ファームウェア転送処理を終了する。
一方、S302でOSの再起動又は終了の実行が確定したと判定した場合(S302:YES)、ファームウェア更新指示をプリンタ100へ送信し(S304)、ファームウェア転送処理を終了する。
[プリンタ100が実行するファームウェア更新処理(第1実施形態)の説明]
つぎに、プリンタ100において実行されるファームウェア更新処理の第1実施形態の手順について、図7のフローチャートに基づき説明する。この処理は、PC1で実行される第1実施形態のファームウェア更新処理(図5)に対応するプリンタ100側の処理でありプリンタ100の起動後に開始され、プリンタ100の稼動中において繰り返し実行される。
CPU102は、まず、PC1から送信されるファームウェア更新データの受信の有無を監視する(S400)。S400での監視の結果、ファームウェア更新データを受信したか否かを判定する(S401)。ファームウェア更新データを受信していないと判定した場合(S401:NO)、S400の処理へ戻って監視を継続する。一方、ファームウェア更新データを受信したと判定した場合(S401:YES)、この受信したファームウェア更新データを用いて、自プリンタ100にインストールされているファームウェアを更新し(S402)、ファームウェア更新処理を終了する。具体的には、受信したファームウェア更新データを一旦、不揮発性メモリ108に記憶する。そして、ROM104に記憶されている、今まで使用していた既存のファームウェアに、受信したファームウェア更新データを上書きすることにより、ファームウェアを更新する。なお、ファーム更新データの内容により、既存のファームウェア全部が上書きにより消去される場合と、一部が上書きにより消去される場合とがあり得る。ファームウェアの更新後、不揮発性メモリ108に一時的に記憶したファームウェア更新データを消去し、メモリを開放する。
[プリンタ100が実行するファームウェア更新処理(第2実施形態)の説明]
つぎに、プリンタ100において実行されるファームウェア更新処理の第2実施形態の手順について、図8のフローチャートに基づき説明する。この処理は、PC1で実行される第2実施形態のファームウェア更新処理(図6)に対応するプリンタ100側の処理であり、プリンタ100の起動後に開始され、プリンタ100の稼動中において繰り返し実行される。
CPU102は、まず、不揮発性メモリ108の特定の記憶領域に未適用のファームウェア更新データが記憶されているか否かを判定する(S500)。ここで、不揮発性メモリ108にファームウェア更新データが記憶されていないと判定した場合(S500:NO)、PC1から送信されるファームウェア更新データの受信の有無を監視する(S501)。S501での監視の結果、ファームウェア更新データを受信したか否かを判定する(S502)。ファームウェア更新データを受信していないと判定した場合(S502:NO)、S501の処理へ戻って監視を継続する。
一方、PC1からファームウェア更新データを受信したと判定した場合(S502:YES)、この受信したファームウェア更新データをファームウェアの更新に適用しないまま不揮発性メモリ108の特定の記憶領域に格納し(S503)、タイムアウト判定のための時間の計測を開始する(S504)。
つぎに、不揮発性メモリ108の空き記憶容量が規定値以下になったか否かを判定する(S505)。ここで、不揮発性メモリ108の空き記憶容量が規定値より大きいと判定した場合(S505:NO)、時間の計測を開始してから所定のタイムアウト時間を経過したか否かを判定する(S506)。ここで、タイムアウト時間を経過していないと判定した場合(S506:NO)、PC1からファームウェア更新指示を受信したか否かを判定する(S507)。なお、ここでいうファームウェア更新指示とは、PC1が実行する第2実施形態のファームウェア転送処理(図6参照)のS304で送信されるものである。
S507でファームウェア更新指示を受信していないと判定した場合(S507:NO)、S505の処理へ戻る。
以降、S505〜S507の処理を順次繰り返す過程において、S505でPC1からファームウェア更新指示を受信したと判定した場合(S507:YES)、不揮発性メモリ108に格納してあるファームウェア更新データを用いて、ROM104に記憶されている既存のファームウェアを更新するとともに、不揮発性メモリ108に格納してあるファームウェア更新データを消去してその記憶領域を開放し(S509)、ファームウェア更新処理を終了する。
一方、S505で不揮発性メモリ108の空き記憶容量が規定値以下になったと判定した場合(S505:YES)、あるいは、S506でタイムアウト時間を経過したと判定した場合(S506:YES)、PC1に対してファームウェアの更新通知を送信する(S508)。そして、PC1からのファームウェア更新指示を待たずして、不揮発性メモリ108に格納してあるファームウェア更新データを用いてファームウェアを更新するとともに、不揮発性メモリ108からファームウェア更新データを消去してその記憶領域を開放し(S509)、ファームウェア更新処理を終了する。
あるいは、S500で不揮発性メモリ108に未適用のファームウェア更新データが記憶されていると判定した場合(S500:YES)、PC1に対してファームウェアの更新通知を送信する(S508)。そして、不揮発性メモリ108に記憶されているファームウェア更新データを用いてファームウェアを更新するとともに、不揮発性メモリ108からファームウェア更新データを消去してその記憶領域を開放し(S509)、ファームウェア更新処理を終了する。なお、ファームウェア更新処理開始直後のS500において肯定判定をするケースというのは、前回のファームウェア更新処理の実行時にPC1からファームウェアを受信した後、これを適用する前にプリンタ100の電源が切られる等の何らかの理由で処理が中断した可能性が高いと判断できる。よって、この場合、PC1からファームウェア更新指示が送信されてくることは期待できないため、直ちにこのファームウェア更新データを用いてファームウェアを更新するのである。
以上、実施形態の印刷システムについて説明したが、ここで実施形態の印刷システムの構成と特許請求の範囲に記載の構成との対応について説明する。
PC1が特許請求の範囲における情報処理装置に相当する。そして、PC1のCPU10がドライバ更新手段、転送制御手段、判断手段、転送手段及び通知手段に相当する。
プリンタ100が特許請求の範囲における周辺機器に相当する。そして、プリンタ100のCPU102がファームウェア更新手段及び更新通知手段に相当する。また、不揮発性メモリ108が記憶手段に相当する。
[効果]
上記実施形態の印刷システムによれば、次のような効果を奏する。
(1)PC1が実行する第1実施形態のファームウェア転送処理(図5参照)では、更新後のドライバを有効にするためのPC1の再起動に連動して、ファームウェア更新データをプリンタ100へ転送することで、更新後のドライバが有効になるのとほぼ同時期にファームウェアを更新できるようになる。よって、更新後のドライバが有効にならない再起動前にプリンタ100のファームウェアの更新のみが有効になることに起因する、ドライバとファームウェアとの対応の不一致を防止できる。
(2)PC1が実行する更新処理(図2参照)では、ドライバの更新によってPC1の再起動が必要ないのであれば、再起動の有無に関わらずファームウェア更新データが直ちにプリンタ100へ転送される。よって、ドライバ及びファームウェアの更新をいち早く完了することができる。
(3)PC1が実行する第2実施形態のファームウェア転送処理(図6参照)では、PC1においてドライバ更新後の再起動が確定する前に、予めファームウェア更新データがプリンタ100へと転送される。ただし、ファームウェア更新データを受信したプリンタ100では、直ぐにはファームウェアの更新を行わず、PC1の再起動が確定してからファームウェアを更新する。このようにすることで、更新後のドライバが有効になるのとほぼ同時期にファームウェアを更新できるようになる。よって、更新後のドライバが有効にならない再起動前にプリンタ100のファームウェアの更新のみが有効になることに起因する、ドライバとファームウェアとの対応の不一致を防止できる。
(4)同じく第2実施形態のファームウェア更新処理では、ファームウェア更新データを受信したときから所定のタイムアウト時間が経過した場合、PC1からの更新指示を待たずにファームウェアの更新を行う。このようにすることで、プリンタ100がファームウェア更新データを受信してから、何らかの理由によりPC1から更新指示が受信できなかった場合でも、不揮発性メモリ108の記憶領域が長時間にわたってファームウェア更新データに占有され続ける状態を回避できる。
(5)同じく第2実施形態のファームウェア更新処理では、ファームウェア更新データが不揮発性メモリ108に記憶されている状態で空き容量が所定の規定値以下になった場合、PC1からの更新指示の受信を待たずしてファームウェアの更新を行い、ファームウェア更新データが記憶されている記憶領域を開放する。このようにすることで、不揮発性メモリ108の記憶容量が少なくなった状態にも関わらず、ファームウェア更新データによって記憶領域が占有され続けてしまうといった状態を回避できる。
(6)同じく第2実施形態のファームウェア更新処理では、PC1からの更新指示の受信を待たずしてファームウェアの更新をした場合、その旨をPC1に通知する。このようにすることで、PC1側でドライバの更新後に再起動が行われていない状態でプリンタ100からのファームウェア更新通知を受信した場合、ユーザがドライバとファームウェアとの対応の不一致に気づき、必要に応じてPC1を再起動させてドライバの更新を有効にすることができる。また、PC1がプリンタ100からファームウェア更新通知を受信した場合、ユーザに対してPC1の再起動を促すメッセージを報知するように構成することもできる。
[変形例]
以上、本発明の実施形態について説明したが、本発明は上記の実施形態に何ら限定されるものではなく様々な態様にて実施することが可能である。
例えば、上記実施形態においては、本発明の周辺機器としてプリンタを適用した事例について説明した。しかしながら、PC1側のデバイスドライバと周辺機器側のファームウェアとが連携して処理を行い、なおかつ、共にアップデートが可能であるものであれば、本発明の技術思想は、上記実施形態のようなプリンタに限らず、様々な周辺機器(例えば、スキャナ、ファクシミリ、複合機等)にも適用できる。
1…パーソナルコンピュータ(PC)、10…CPU、12…ROM、14…RAM、16…HDD、18…表示部、20…操作部、22…通信インタフェース(I/F)、100…プリンタ、102…CPU、104…ROM、106…RAM、108…不揮発性メモリ、110…操作部、112…表示部、114…印刷部、116…通信インタフェース(I/F)、200…インターネット。

Claims (9)

  1. 周辺機器を制御するためのドライバが組み込まれた情報処理装置と、前記情報処理装置のドライバと連携して自周辺機器を作動させるためのファームウェアが組み込まれた周辺機器とが通信可能に接続された情報処理システムであって、
    前記情報処理装置は、
    ドライバ更新データを用いて前記情報処理装置のドライバを更新するドライバ更新手段と、
    前記ドライバ更新手段によるドライバの更新後において前記情報処理装置の再起動の実行が確定したことを条件に、そのドライバ更新データと対応するファームウェア更新データを前記周辺機器へ転送する転送制御手段とを備え、
    前記周辺機器は、
    前記情報処理装置から転送されてきたファームウェア更新データに基づいて前記周辺機器のファームウェアを更新するファームウェア更新手段を備えること
    を特徴とする情報処理システム。
  2. 請求項1に記載の情報処理システムにおいて、
    前記情報処理装置は、
    前記更新データが適用された更新後のドライバを有効にするために、前記ドライバ更新手段によるドライバの更新後に前記情報処理装置を再起動する必要があるか否かを判断する判断手段を更に備え、
    前記情報処理装置の転送制御手段は、前記判断手段によって再起動をする必要があると判断された場合、前記ドライバ更新手段によるドライバの更新後において前記情報処理装置の再起動の実行が確定したことを条件に、そのドライバ更新データと対応するファームウェア更新データを前記周辺機器へ転送する一方、前記判断手段によって再起動をする必要がないと判断された場合、無条件に前記ドライバ更新データと対応するファームウェア更新データを前記周辺機器へ転送すること
    を特徴とする情報処理システム。
  3. 周辺機器を制御するためのドライバが組み込まれた情報処理装置と、前記情報処理装置のドライバと連携して自周辺機器を作動させるためのファームウェアが組み込まれた周辺機器とが通信可能に接続された情報処理システムであって、
    前記情報処理装置は、
    ドライバ更新データ用いて前記情報処理装置のドライバを更新するドライバ更新手段と、
    前記ドライバ更新手段によるドライバの更新後における前記情報処理装置の再起動の実行が確定する前に、そのドライバ更新データと対応するファームウェア更新データを前記周辺機器へ転送する転送手段と、
    前記ドライバ更新手段によるドライバの更新後において前記情報処理装置の再起動の実行が確定した場合、先に前記転送手段によって転送したファームウェア更新データによるファームウェアの更新を要求する更新指示を前記周辺機器に対して通知する通知手段とを備え、
    前記周辺機器は、
    前記情報処理装置から転送されてきたファームウェア更新データを、前記周辺機器のファームウェアの更新に適用しない状態で一時的に記憶する記憶手段と、
    前記情報処理装置から前記更新指示を受信したことを条件に、前記記憶手段に記憶されているファームウェア更新データを用いて前記周辺機器のファームウェアの更新を行うファームウェア更新手段を備えること
    を特徴とする情報処理システム。
  4. 請求項3に記載の情報処理システムにおいて、
    前記周辺機器のファームウェア更新手段は、前記ファームウェア更新データを受信したときから、前記更新指示を受信していない状態で所定の時間が経過したと判断した場合、前記更新指示の受信を待たずして前記記憶手段に記憶されているファームウェア更新データを用いて前記周辺機器のファームウェアの更新を行うこと
    を特徴とする情報処理システム。
  5. 請求項3又は請求項4に記載の情報処理システムにおいて、
    前記周辺機器のファームウェア更新手段は、前記ファームウェア更新データが前記記憶手段に記憶されている状態で、前記記憶手段の空き記憶容量が所定の規定値以下になったと判定した場合、前記更新指示の受信を待たずして前記記憶手段に記憶されているファームウェア更新データを用いて前記周辺機器のファームウェアの更新を行い、前記記憶手段において前記ファームウェア更新データが記憶されている部分の記憶領域を開放すること
    を特徴とする情報処理システム。
  6. 請求項4又は請求項5に記載の情報処理システムにおいて、
    前記周辺機器は、
    前記ファームウェア更新手段によって前記更新指示の受信を待たずして前記ファームウェアの更新が行われた場合、ファームウェアが更新されたことを前記情報処理装置へ通知する更新通知手段を更に備えること
    を特徴とする情報処理システム。
  7. 周辺機器を制御するためのドライバが組み込まれた情報処理装置で実行されるドライバ更新プログラムであって、
    ドライバ更新データを用いて前記情報処理装置のドライバを更新するドライバ更新手順と、
    前記ドライバ更新手順によるドライバの更新後において前記情報処理装置の再起動の実行が確定したことを条件に、そのドライバ更新データと対応するファームウェア更新データを前記周辺機器へ転送する転送制御手順とを有すること
    を特徴とするドライバ更新プログラム。
  8. 周辺機器を制御するためのドライバが組み込まれた情報処理装置で実行されるドライバ更新プログラムであって、
    ドライバ更新データ用いて前記情報処理装置のドライバを更新するドライバ更新手順と、
    前記ドライバ更新手順によるドライバの更新後における前記情報処理装置の再起動の実行が確定する前に、そのドライバ更新データと対応するファームウェア更新データを前記周辺機器へ転送する転送手順と、
    前記ドライバ更新手順によるドライバの更新後において前記情報処理装置の再起動の実行が確定した場合、先に前記転送手順によって転送したファームウェア更新データによるファームウェアの更新を要求する更新指示を前記周辺機器に対して通知する通知手順とを有すること
    を特徴とするドライバ更新プログラム。
  9. 周辺機器を制御するためのドライバが組み込まれた情報処理装置と、前記情報処理装置のドライバと連携して自周辺機器を作動させるためのファームウェアが組み込まれた周辺機器とが通信可能に接続された情報処理システムを構成する前記周辺機器であって、
    前記情報処理装置におけるドライバの更新に伴い前記情報処理装置から転送されてきたファームウェア更新データを、前記周辺機器のファームウェアの更新に適用しない状態で記憶する記憶手段と、
    前記情報処理装置で再起動の実行が確定したことに伴い前記情報処理装置から送信されてくる更新指示を受信したことを条件に、前記記憶手段に記憶されているファームウェア更新データを用いて前記周辺機器のファームウェアの更新を行うファームウェア更新手段を備えること
    を特徴とする周辺装置。
JP2009074223A 2009-03-25 2009-03-25 情報処理システム、ドライバ更新プログラム及び周辺装置 Active JP4911187B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009074223A JP4911187B2 (ja) 2009-03-25 2009-03-25 情報処理システム、ドライバ更新プログラム及び周辺装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009074223A JP4911187B2 (ja) 2009-03-25 2009-03-25 情報処理システム、ドライバ更新プログラム及び周辺装置

Publications (2)

Publication Number Publication Date
JP2010225079A JP2010225079A (ja) 2010-10-07
JP4911187B2 true JP4911187B2 (ja) 2012-04-04

Family

ID=43042168

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009074223A Active JP4911187B2 (ja) 2009-03-25 2009-03-25 情報処理システム、ドライバ更新プログラム及び周辺装置

Country Status (1)

Country Link
JP (1) JP4911187B2 (ja)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003308215A (ja) * 2002-02-14 2003-10-31 Canon Inc 情報処理装置、制御方法、制御プログラム
JP3952893B2 (ja) * 2002-07-30 2007-08-01 株式会社日立製作所 ネットワーク機器およびプログラム自動更新方式
JP4597551B2 (ja) * 2003-03-28 2010-12-15 株式会社リコー ソフトウェア更新装置、ソフトウェア更新システム、ソフトウェア更新方法及びプログラム
JP2005266939A (ja) * 2004-03-16 2005-09-29 Hitachi Ltd ソフトウェア自動入替え方法
JP2007058453A (ja) * 2005-08-23 2007-03-08 Fuji Xerox Co Ltd 更新システム、プリンタ、情報処理装置、コンピュータの制御方法およびプログラム
JP2008071031A (ja) * 2006-09-13 2008-03-27 Seiko Epson Corp 情報処理装置および情報処理装置のファイル格納方法

Also Published As

Publication number Publication date
JP2010225079A (ja) 2010-10-07

Similar Documents

Publication Publication Date Title
JP5232427B2 (ja) 情報処理システム及びファームウェアの設定変更方法
JP4811486B2 (ja) プログラム、情報処理システムおよび情報処理装置
JP4874859B2 (ja) 情報処理装置、情報処理システム、プログラム及びその記録媒体
JP2007310783A (ja) 画像形成装置におけるファームウェアのアップデート方法、プログラム、記録媒体
JP2007157014A (ja) データ処理装置
JP4661939B2 (ja) 情報処理装置
JP4946141B2 (ja) 構成変更プログラム、および情報処理装置
KR101219432B1 (ko) 화상형성장치 및 그 펌웨어 이력정보 제공방법
JP7206106B2 (ja) 情報処理装置及びプログラム
JP4687283B2 (ja) 印刷制御装置、印刷制御装置の制御プログラム、および印刷システム
JP2009230400A (ja) 印刷システムおよびソフトウェア導入装置およびソフトウェア導入プログラム
JP5245661B2 (ja) 印刷制御装置、プログラム、記録媒体及び印刷制御方法
JP2009122986A (ja) 情報処理システム、情報処理プログラム、および情報処理装置
JP5396847B2 (ja) 印刷装置及びその制御方法
JP4631669B2 (ja) 印刷システム及び印刷制御プログラム
JP4639917B2 (ja) 画像形成装置および画像形成システム
US8521831B2 (en) Data processing apparatus, data input control method thereof, information processing device, and program for implementing the method
JP4911187B2 (ja) 情報処理システム、ドライバ更新プログラム及び周辺装置
JP6456150B2 (ja) 画像形成装置、画像形成装置の制御方法、およびプログラム
JP2023130149A (ja) 画像形成システム、及び画像形成装置
JP2000194543A (ja) ネットワ―ク装置
JP2010198059A (ja) 設定支援システム
JP5515642B2 (ja) 印刷装置とプログラムとサーバ装置
JP2019133407A (ja) ファームウェア更新システムおよびファームウェア更新方法
JP2018005834A (ja) 情報処理装置及びその制御方法、並びにプログラム

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20111214

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20111220

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120102

R150 Certificate of patent or registration of utility model

Ref document number: 4911187

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150127

Year of fee payment: 3