(57)【要約】【課題】記憶部の記憶容量がインストールされるソフトウエアのファイル容量の大きさに比して相対的に小さい場合であっても、インストールの失敗による周辺装置の再起動不能を防止、抑制して、ソフトウエアをインストールすることを目的とする。【解決手段】更新ファイルのファイル容量情報と解凍後のファイルのファイル容量情報とを含むファイル情報と、インストール先であるフラッシュメモリの空き容量を比較し、フラッシュメモリの空き容量が、更新ファイルのファイル容量と解凍後のファイルのファイル容量とを合わせた容量未満の場合であって、解凍後のファイルのファイル容量以上である場合には、プリンタの起動に必要なファイルをフラッシュメモリに存在させた状態でインストールを行う。【選択図】図５
2007219720.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータの周辺装置であって、
前記コンピュータからソフトウエアを圧縮してなる更新ファイルと、少なくとも前記更新ファイルのファイル容量情報と前記更新ファイルを解凍した後のファイルのファイル容量情報とを含むファイル情報とを受信する受信手段と、
前記解凍後のファイルがインストールされる第１の記憶手段と、
前記第１の記憶手段の空き容量を算出する空き容量算出手段と、
前記ファイル情報に含まれる解凍後のファイルのファイル容量情報と前記第１の記憶手段の空き容量とを比較し、前記第１の記憶手段の空き容量が、前記更新ファイルのファイル容量と前記解凍後のファイルのファイル容量とを合わせた容量未満の場合であって、前記解凍後のファイルのファイル容量以上である場合には、周辺装置の起動に必要なファイルを前記第１の記憶手段に存在させた状態で、前記更新ファイルを解凍し、解凍後のファイルを前記第１の記憶手段にインストールするインストール手段とを備える、
周辺装置。
【請求項２】
請求項１に記載の周辺装置において、
前記第１の記憶手段は、書き換え可能な不揮発メモリである、
周辺装置。
【請求項３】
請求項１又は請求項２に記載の周辺装置において、
前記インストール手段は、インストール中に、更新されるファイルと前記更新ファイルと前記解凍後のファイルとのうち少なくとも１つのファイルを前記第１の記憶手段に存在させた状態でインストールを実行する、
周辺装置。
【請求項４】
請求項１又は請求項２に記載の周辺装置において、
前記インストール手段は、インストール中に前記第１の記憶手段からファイルを削除する場合には、更新されるファイルと前記更新ファイルと前記解凍後のファイルとのうち少なくとも２つのファイルを前記第１の記憶手段に存在させた状態で前記ファイルを削除し、インストールを実行する、
周辺装置。
【請求項５】
請求項１から請求項４のいずれか一項に記載の周辺装置において、
前記インストール手段は、前記ソフトウエアのインストール前の前記第１の記憶手段の空き容量と更新されるファイルのファイル容量とを合わせた容量が、前記更新ファイルのファイル容量と前記解凍後のファイルのファイル容量とを合わせた容量以上である場合には、
前記第１の記憶手段に前記更新ファイルを記憶し、前記第１の記憶手段から更新されるファイルを削除し、前記第１の記憶手段に更新ファイルを解凍し、前記第１の記憶手段から更新ファイルを削除してインストールを実行する、
周辺装置
【請求項６】
請求項１から請求項４のいずれか一項に記載の周辺装置はさらに、
前記解凍後のファイルを一時記憶する第２の記憶手段を備え、
前記インストール手段は、前記第１の記憶手段の空き容量が、前記解凍後のファイルのファイル容量以上である場合には、
前記第１の記憶手段に更新ファイルを記憶し、前記第２の記憶手段に更新ファイル解凍し、前記第１の記憶手段から更新ファイルを削除し、前記第２の記憶手段から前記第１の記憶手段に解凍後のファイルをコピーし、前記第１の記憶手段から更新されるファイルを削除してインストールを実行する、
周辺装置。
【請求項７】
周辺装置にソフトウエアをインストールする方法であって、
コンピュータから、ソフトウエアを圧縮してなる更新ファイルのファイル容量情報と前記更新ファイルを解凍した後のファイルのファイル容量情報とを含むファイル情報を受信し、
前記解凍後のファイルがインストールされる第１の記憶手段の空き容量を算出し、
前記ファイル情報の解凍後のファイルのファイル容量情報と前記第１の記憶手段の空き容量とを比較し、
前記第１の記憶手段の空き容量が、前記更新ファイルのファイル容量と前記解凍後のファイルのファイル容量とを合わせた容量未満の場合であって、前記解凍後のファイルのファイル容量以上である場合には、
前記コンピュータから、前記ソフトウエアの更新ファイルを受信し、
前記周辺装置の起動に必要なファイルを前記第１の記憶手段に存在させた状態で前記更新ファイルを解凍し、解凍後のファイルを前記第１の記憶手段にインストールする、
ソフトウエアのインストール方法。
【請求項８】
ソフトウエアをインストールするための周辺装置のコンピュータプログラムであって、
コンピュータから、ソフトウエアを圧縮してなる更新ファイルのファイル容量情報と前記更新ファイルを解凍した後のファイルのファイル容量情報とを含むファイル情報を受信し、
前記解凍後のファイルがインストールされる第１の記憶手段の空き容量を算出し、
前記ファイル情報の解凍後のファイルのファイル容量情報と前記第１の記憶手段の空き容量とを比較し、
前記第１の記憶手段の空き容量が、前記更新ファイルのファイル容量と前記解凍後のファイルのファイル容量とを合わせた容量未満の場合であって、前記解凍後のファイルのファイル容量以上である場合には、
前記コンピュータから、前記ソフトウエアの更新ファイルを受信し、
前記周辺装置の起動に必要なファイルを前記第１の記憶手段に存在させた状態で、前記更新ファイルを解凍し、解凍後のファイルを前記第１の記憶手段にインストールする機能を実現する、
コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータの周辺装置にソフトウエアをインストールする技術に関する。
【背景技術】
【０００２】
従来、コンピュータの周辺装置は、ソフトウエアをフラッシュメモリにインストールする場合に、フラッシュメモリとＲＡＭとの容量の比較結果に基づいて、ＲＡＭ上で動作可能ならばＲＡＭ上で動作するように、ＲＡＭ上で動作不可能であればフラッシュメモリ上で動作するように動作環境を設定してインストールしていた（特許文献１）。
【０００３】
【特許文献１】特開２０００−２４２５０３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
フラッシュメモリは、書き換え可能な不揮発メモリであり、通常、電源断により消去されて困るプログラム、例えば、周辺装置のファームウエアを記憶している。周辺装置は、周辺装置の利便性向上、機能向上のために更新され、更新では、ホスト装置から受信されたファームウエアの更新ファイルが、フラッシュメモリにインストールされる。更新ファイルは、ネットワークのトラフィック量の増加を防止できることから、あるいは、複数のモジュールを１つにまとめることにより取り扱いが容易になることから、一般的には、圧縮形式のファイルとなっている。したがって、周辺装置がファームウエアをインストールする場合には、フラッシュメモリ上に、更新ファイルを記憶する領域と更新ファイルを解凍する領域とが必要である。
【０００５】
しかし、ファームウエアの巨大化により、周辺装置は、フラッシュメモリ上に、更新ファイルを記憶する領域と更新ファイルを解凍する領域とを確保することが困難になってきている。一方、周辺装置は、ファームウエアをインストールする場合に、先に更新される旧ファームウエアをフラッシュメモリから削除すれば、フラッシュメモリ上に更新ファイルを記憶する領域と更新ファイルを解凍する領域とを確保することは可能となるが、旧ファームウエアを削除してから更新ファイルをインストールするまでの期間は、フラッシュメモリ上にファームウエアが存在しないことになる。その結果、周辺装置は、例えば、ファームウエアのインストール中に発生した電源断等によりファームウエアのインストールに失敗すると、再起動できなくなる恐れがある。
【０００６】
本発明の目的は、上記課題を解決し、記憶部の記憶容量がインストールされるソフトウエアのファイル容量の大きさに比して相対的に小さい場合であっても、インストールの失敗による周辺装置の再起動不能を防止、抑制して、ソフトウエアをインストールすることを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、本発明に係る周辺装置は、コンピュータの周辺装置であって、前記コンピュータからソフトウエアを圧縮してなる更新ファイルと、少なくとも前記更新ファイルのファイル容量情報と前記更新ファイルを解凍した後のファイルのファイル容量情報とを含むファイル情報とを受信する受信手段と、前記解凍後のファイルがインストールされる第１の記憶手段と、前記第１の記憶手段の空き容量を算出する空き容量算出手段と、前記ファイル情報に含まれる解凍後のファイルのファイル容量情報と前記第１の記憶手段の空き容量とを比較し、前記第１の記憶手段の空き容量が、前記更新ファイルのファイル容量と前記解凍後のファイルのファイル容量とを合わせた容量未満の場合であって、前記解凍後のファイルのファイル容量以上である場合には、周辺装置の起動に必要なファイルを前記第１の記憶手段に存在させた状態で前記更新ファイルを解凍し、解凍後のファイルを前記第１の記憶手段にインストールするインストール手段とを備える。
【０００８】
本発明に係る周辺装置によれば、ソフトウエアのインストール前の第１の記憶手段の空き容量が前記更新ファイルのファイル容量と前記解凍後のファイルのファイル容量とを合わせた容量未満であっても、解凍後のファイルの空き容量以上である場合には、インストール手段は、周辺装置の再起動に必要なファイルを第１の記憶手段に存在させた状態でインストールを実行するので、ソフトウエアのインストールに失敗しても周辺装置の再起動不能を防止、抑制できる。
【０００９】
本発明に係る周辺装置においては、前記第１の記憶手段は、書き換え可能な不揮発メモリである。本発明に係る周辺装置によれば、記憶手段として書き換え可能な不揮発メモリを使用するので、ソフトウエアのインストールに失敗してもファイルの消失が発生せず、周辺装置の再起動不能を防止、抑制できる。
【００１０】
本発明に係る周辺装置においては、前記インストール手段は、インストール中に、更新されるファイルと前記更新ファイルと前記解凍後のファイルとのうち少なくとも１つのファイルを前記第１の記憶手段に存在させた状態でインストールを実行する。
【００１１】
本発明に係る周辺装置によれば、インストール中に、更新されるファイルと前記更新ファイルと前記解凍後のファイルとのうち少なくとも１つのファイルが第１の記憶手段に存在しているため、インストールに失敗しても、周辺装置の再起動時に更新されるファイルあるいは解凍後のファイルのいずれかが実行可能となり、周辺装置の再起動不能を防止、抑制できる。なお、周辺装置の再起動時に、第１の記憶手段に更新ファイルのみが存在している場合であっても、再起動時に更新ファイルが解凍され、実行されることにより再起動が可能である。
【００１２】
本発明に係る周辺装置においては、前記インストール手段は、インストール中に前記第１の記憶手段からファイルを削除する場合には、更新されるファイルと前記更新ファイルと前記解凍後のファイルとのうち少なくとも２つのファイルを前記第１の記憶手段に存在させた状態で前記ファイルを削除し、インストールを実行する。
【００１３】
本発明に係る周辺装置によれば、インストール中に第１の記憶手段からファイルを削除する場合には、更新されるファイルと前記更新ファイルと前記解凍後のファイルのうち少なくとも２つのファイルを第１の記憶手段に存在させた状態で前記ファイルを削除するため、ファイルの削除後には更新されるファイルと前記更新ファイルと前記解凍後のファイルのうち少なくとも１つのファイルが第１の記憶手段に存在している。したがって、インストールに失敗しても、周辺装置の再起同時に更新されるファイルあるいは解凍後のファイルのいずれかが実行可能となるため、周辺装置の再起動不能を防止、抑制できる。
【００１４】
本発明に係る周辺装置においては、前記インストール手段は、前記ソフトウエアのインストール前の前記第１の記憶手段の空き容量と更新されるファイルのファイル容量とを合わせた容量が、前記更新ファイルのファイル容量と前記解凍後のファイルのファイル容量とを合わせた容量以上である場合には、前記第１の記憶手段に前記更新ファイルを記憶し、前記第１の記憶手段から更新されるファイルを削除し、前記第１の記憶手段に更新ファイルを解凍し、前記第１の記憶手段から更新ファイルを削除してインストールを実行する。
【００１５】
本発明に係る周辺装置によれば、前記ソフトウエアのインストール前の第１の記憶手段の空き容量と更新されるファイルのファイル容量とを合わせた容量が、更新ファイルのファイル容量と解凍後のファイルのファイル容量とを合わせた容量以上である場合には、第１の記憶手段に更新ファイルを記憶し、更新されるファイルを削除した後に更新ファイルを第１の記憶手段に解凍すれば、更新されるファイル又は更新ファイル又は解凍後のファイルのうち少なくとも１つのファイルが第１の記憶手段に存在している状態でインストールを実行できる。したがって、ソフトウエアのインストールに失敗しても、周辺装置の再起動時に更新されるファイル又は解凍後のファイルのいずれかが実行可能であるため、周辺装置の再起動不能を防止、抑制できる。
【００１６】
本発明に係る周辺装置においては、前記解凍後のファイルを一時記憶する第２の記憶手段をさらに備え、前記インストール手段は、前記第１の記憶手段の空き容量が、前記解凍後のファイルのファイル容量以上の場合には、前記第１の記憶手段に更新ファイルを記憶し、前記第２の記憶手段に更新ファイル解凍し、前記第１の記憶手段から更新ファイルを削除し、前記第２の記憶手段から前記第１の記憶手段に解凍後のファイルをコピーし、前記第１の記憶手段から更新されるファイルを削除してインストールを実行する。
【００１７】
本発明に係る周辺装置によれば、第１の記憶手段の空き容量が、解凍後のファイルのファイル容量以上である。更新ファイルは圧縮形式のファイルであり、その容量は解凍後のファイルの容量よりも小さいので、第１の記憶手段の空き領域に更新ファイルを記憶できる。また、第２の記憶手段に更新ファイルを解凍し、第１の記憶手段から更新ファイルを削除した後に第２の記憶手段から第１の記憶手段に解凍後のファイルをコピーするので、第１の記憶手段には、更新されるファイル又は解凍後のファイルのいずれかのファイルが存在している。したがって、インストールに失敗しても、周辺装置の再起動時に更新されるファイル又は解凍後のファイルのいずれかのファイルを実行可能であるため、周辺装置の再起動不能を防止、抑制できる。
【００１８】
本発明に係るソフトウエアのインストール方法は、周辺装置にソフトウエアをインストールする方法であって、コンピュータから、ソフトウエアを圧縮してなる更新ファイルのファイル容量情報と前記更新ファイルを解凍した後のファイルのファイル容量情報とを含むファイル情報を受信し、前記解凍後のファイルをインストールする第１の記憶手段の空き容量を算出し、前記ファイル情報の解凍後のファイルのファイル容量情報と前記第１の記憶手段の空き容量とを比較し、前記第１の記憶手段の空き容量が、前記更新ファイルのファイル容量と前記解凍後のファイルのファイル容量とを合わせた容量未満の場合であって、前記解凍後のファイルのファイル容量以上である場合には、前記コンピュータから、前記ソフトウエアの更新ファイルを受信し、前記周辺装置の起動に必要なファイルを前記第１の記憶手段に存在させた状態で前記更新ファイルを解凍し、解凍後のファイルを前記第１の記憶手段にインストールする。
【００１９】
本発明に係るコンピュータプログラムは、ソフトウエアをインストールするための周辺装置のコンピュータプログラムであって、コンピュータから、ソフトウエアを圧縮してなる更新ファイルのファイル容量情報と前記更新ファイルを解凍した後のファイルのファイル容量情報とを含むファイル情報を受信し、前記解凍後のファイルをインストールする第１の記憶手段の空き容量を算出し、前記ファイル情報の解凍後のファイルのファイル容量情報と前記第１の記憶手段の空き容量とを比較し、前記第１の記憶手段の空き容量が、前記更新ファイルのファイル容量と前記解凍後のファイルのファイル容量とを合わせた容量未満の場合であって、前記解凍後のファイルのファイル容量以上である場合には、前記コンピュータから、前記ソフトウエアの更新ファイルを受信し、前記周辺装置の起動に必要なファイルを前記第１の記憶手段に存在させた状態で前記更新ファイルを解凍し、解凍後のファイルを前記第１の記憶手段にインストールする機能を実現する。
【００２０】
本発明は、上述したデバイス装置としての構成のほかに種々の態様で実現可能であり、ソフトウエアの更新方法、これらのデバイス装置又はソフトウエアの更新方法を実現するコンピュータプログラム、及びそのプログラムを記憶した記憶媒体、そのプログラムを含み搬送波内に具現されたデータ信号など種々の態様で実現することが可能である。
【発明を実施するための最良の形態】
【００２１】
以下、本発明の実施の形態を本実施例に基づいて以下の順序で説明する。
Ａ．本実施例に係るプリンタ１０及びパーソナルコンピュータ（以下、「ＰＣ」という。）５０の構成
Ｂ．本実施例に係るプリンタ１０におけるファームウエアのインストール処理
Ｃ．変形例
【００２２】
Ａ．：本実施例に係るプリンタ１０及びＰＣ５０の構成
図１を参照して、本発明の実施例に係るプリンタ１０の構成について説明する。図１は、本発明の実施例に係るプリンタ１０の構成を示す説明図である。プリンタ１０は、ＣＰＵ１１とフラッシュメモリ１２とＲＯＭ１３とＲＡＭ１４とネットワークインターフェース１５と印刷部１６とを備えている。
【００２３】
ＣＰＵ１１は、プリンタ１０の中枢であり、プリンタ１０全体の動作を制御するほか、受信した印刷データを印刷フォーマットに変換し、印刷部に送り印刷を行う。
【００２４】
フラッシュメモリ１２は、例えば、ＣＰＵ１１と印字部１６を制御するためのファームウエア及び印刷のためのアプリケーションを記憶する。ファームウエアあるいはアプリケーションは、１つのあるいは複数のモジュールから構成される。
【００２５】
ＲＯＭ１３は、例えば、印刷のためのフォントデータを記憶する。ＲＡＭ１４は、印刷データを一時的に記憶するバッファーメモリとして機能するほか、フラッシュメモリ１２からファームウエアや印刷のためのアプリケーションがコピーされ、ＲＡＭ１４上で実行される。
【００２６】
ネットワークインターフェース１５は、プリンタ１０をネットワーク１７に接続する。プリンタ１０は、ネットワークインターフェース１５を介して、印刷データを受信するほか、ファームウエアあるいはアプリケーションの更新ファイルを受信する。
【００２７】
印刷部１６は、受信した印刷データを印刷するところであり、印字ヘッド１８と紙送り機構１９とを有する。
【００２８】
図２を参照して、本発明の実施例に係るＰＣ５０の構成について説明する。図２は、本発明の実施例に係るＰＣ５０の構成を示す説明図である。ＰＣ５０は、ＣＰＵ５１とＲＯＭ５２とＲＡＭ５３とハードディスク５４とＣＤ−ＲＯＭ装置５５と入力インターフェース５６と出力インターフェース５７とネットワークインターフェース５８とを備えている。
【００２９】
ＣＰＵ５１は、ＰＣ５０の中枢であり、ＰＣ５０全体の動作を制御するほか、各種演算を行い、演算結果をハードディスク５４に記憶したり、出力インターフェース５７を介してディスプレイ５９に表示したり、ネットワークインターフェース５８を介してほかのコンピュータ（図示せず）と通信を行う。
【００３０】
ＲＯＭ５２は、ＰＣ５０に接続されたハードディスク５４や入力インターフェース５６を介して接続されたキーボード６０などの周辺機器を制御するＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）を記憶し、通常、書き換え可能な不揮発性メモリであるフラッシュメモリが用いられる。ＲＡＭ５３は、書き換え可能な揮発性メモリであり、ＰＣ５０のオペレーティングシステム（以下、「ＯＳ」という。）やアプリケーションはハードディスク５４からＲＡＭ５３上にコピーされ、ＲＡＭ５３上で実行される。ＲＡＭ５３は、ＣＰＵ５１が演算した結果あるいは演算中のデータを一時記憶する。
【００３１】
ハードディスク５４は、ＯＳとアプリケーションとデータとを記憶する固体記憶装置である。プリンタ１０のファームウエアの更新プログラムは、ハードディスク上にデータとして記憶される。通常、プリンタ１０のファームウエアの更新プログラムは、プリンタメーカーのＷｅｂページ上に公開されているので、プリンタ１０の管理者は、Ｗｅｂページにアクセスして、プリンタ１０のファームウエアの更新プログラムをダウンロードし、ハードディスク５４に記憶させる。更新プログラムには、更新ファイルとファイル情報とが含まれる。更新ファイルは圧縮形式のファイルであり、例えばｚｉｐ、ｌｚｈ、ｃａｂ、ｒａｒ、ｔａｒなどの圧縮形式が用いられる。ファイル情報には更新ファイルのファイル容量情報と更新ファイルを解凍した後のファイルのファイル容量情報が含まれる。ＣＤ−ＲＯＭ装置５５は、コンパクトディスク（以下、「ＣＤ」という。）を使ったコンピュータ用の読み出し専用記憶装置である。プリンタ１０のファームウエアの更新プログラムは、プリンタメーカーのＷｅｂページ上に公開されるが、ＣＤ−ＲＯＭの形で提供されてもよい。
【００３２】
入力インターフェース５６は、例えば、キーボード６０とマウス６１などの入力装置とＰＣの間を接続する。入力装置として、キーボード６０やマウス６１のほか、例えば、タブレット（図示せず）が使われることがある。プリンタ１０のファームウエアを更新する場合、管理者は、キーボード６０からＰＣ５０に対して、ファームウエアの更新命令を入力する。出力インターフェース５７は、ＰＣ５０とディスプレイ５９、プリンタ１０の出力装置とを接続し、ＣＰＵの演算結果をディスプレイ５９、プリンタ１０に出力する。
【００３３】
ネットワークインターフェース５８は、ＰＣ５０とネットワーク１７とを接続し、ほかのＰＣやホストコンピュータとデータのやりとりを中継する。本実施例においては、プリンタ１０は、ネットワーク１７経由でＰＣ５０に接続されている。したがって、プリンタ１０のファームウエアの更新ファイルは、ＰＣ５０からネットワーク１７を経由してプリンタ１０に送られる。
【００３４】
Ｂ．本実施例に係るプリンタ１０におけるファームウエアのインストール処理
Ｂ−１．プリンタ１０のファームウエアをインストールするときのＰＣ５０の動作
図３を参照しながら、プリンタ１０のファームウエアをインストールするときのＰＣ５０の動作について説明する。図３は、プリンタ１０のファームウエアをインストールするときのＰＣ５０の動作のフローチャートを示す説明図である。管理者は、ＰＣ５０のハードディスク５４にファームウエアの更新プログラムを一旦保存し、キーボード６１から更新プログラムを起動してインストールを実行する。管理者が更新プログラムを実行すると、ＣＰＵ５１は、プリンタ１０に対して、ファイル情報を送付する（ステップＳ２００）。ファイル情報には、更新ファイルのファイル容量情報と更新ファイルを解凍した後のファイルのファイル容量情報とが含まれる。ＣＰＵ５１は、プリンタ１０からの応答を待つ（ステップＳ２０５）。
【００３５】
ＣＰＵ５１は、プリンタ１０からの応答がファームウエアのインストール不可の場合には、ＰＣ５０のディスプレイ５９にファームウエアのインストールができないことを表示する（ステップＳ２１０）。
【００３６】
ＣＰＵ５１は、プリンタ１０からの応答が、ファームウエアのインストールが可能である場合には、ハードディスク５４から更新ファイルを読み出して、プリンタ１０に送る（ステップＳ２１５）。ＣＰＵ５１は、更新ファイルを送ると、プリンタ１０からのインストール完了通知を待つ。ＣＰＵ５１は、インストール完了通知を受信すると（ステップＳ２２０）、ディスプレイ５９に、プリンタ１０のファームウエアの更新ファイルのインストールが完了したことを表示し（ステップＳ２２５）、ファームウエアのインストールを完了する。
【００３７】
Ｂ−２．プリンタ１０におけるファームウエアのインストール処理
図４から図８を参照しながら、プリンタ１０におけるファームウエアのインストール処理ついて説明する。本実施例については、以下の３つの条件に基づいてインストールの態様が変更される。
【００３８】
条件１：ファームウエアをインストール前のフラッシュメモリ１２の空き容量が、解凍後のファイルのファイル容量以上である。
条件２：ファームウエアをインストールする前のフラッシュメモリ１２の空き容量が、更新ファイルのファイル容量と解凍後のファイルのファイル容量とを合わせた容量以上である。
条件３：ファームウエアをインストールする前のフラッシュメモリ１２の空き容量と更新されるファイルのファイル容量とを合わせた容量が、更新ファイルのファイル容量と解凍後のファイルのファイル容量とを合わせた容量以上である。
【００３９】
なお、フラッシュメモリ１２に記憶されている全ファイルが更新される場合には、条件１は、フラッシュメモリ１２の全容量が、更新されるファイルのファイル容量と解凍後のファイルのファイル容量とを合わせた容量以上である、条件２は、フラッシュメモリ１２の全容量が、更新されるファイルのファイル容量と更新ファイルのファイル容量と解凍後のファイルのファイル容量とを合わせた容量以上である、条件３は、フラッシュメモリ１２の全容量が、更新ファイルのファイル容量と解凍後のファイルのファイル容量とを合わせた容量以上である、としてもよい。
【００４０】
図４は、プリンタ１０のファームウエアのインストール処理のフローチャートを示す説明図である。図５は、プリンタ１０のファームウエアのインストール処理のフローチャートを示す説明図である。
【００４１】
図６は、条件１及び条件２を満たす場合のフラッシュメモリ１２のメモリ使用量を模式的に示す説明図である。図７は、条件１及び条件３を満たす場合のフラッシュメモリ１２のメモリ使用量を模式的に示す説明図である。図８は、条件１を満たす場合のフラッシュメモリ１２メモリ使用量を模式的に示す説明図である。
【００４２】
ＣＰＵ１１は、ＰＣ５０よりファイル情報を受信する（ステップＳ３００）。ファイル情報には、更新ファイルのファイル容量情報と更新ファイルを解凍した後のファイルのファイル容量情報とが含まれる。ＣＰＵ１１は、フラッシュメモリ１２の空き容量を算出し、条件１を満たすか判断する（ステップＳ３０５）。
【００４３】
ＣＰＵ１１は、条件１を満たさない場合には、ファームウエアをインストールできないことをＰＣに通知する（ステップＳ３１０）。ＣＰＵ１１は、条件１を満たす場合には、条件２も満たすか判断する（ステップＳ３１５）。
【００４４】
ＣＰＵ１１は、条件２も満たす場合には、ＰＣ５０に対してファームウエアをインストールできることを通知し、（ステップＳ３２０）更新ファイルが送信されるのを待つ。ＣＰＵ１１は、ＰＣ５０から更新ファイルを受信すると、フラッシュメモリ１２上に更新ファイルを記憶する（ステップＳ３２５）。更新ファイルは圧縮形式のファイルであり、更新ファイルのファイル容量は、解凍後のファイルのファイル容量よりも小さいので、条件１を満たしていれば、ＣＰＵ１１は、フラッシュメモリ１２上に更新ファイルを記憶することが可能である。図６（ｂ）に示すようにフラッシュメモリ１２上には、更新されるファイルと更新ファイルの２つのファイルが存在する。ここで、矢印の右にあるかっこ書きは、図４のフローチャートのステップを示す。更新されるファイルとはインストール動作により削除されるファイル、更新ファイルとはＰＣ５０からプリンタ１０に送られる更新ファイル、解凍後のファイルとは更新ファイルを解凍してできる解凍後のファイルをいう。未使用というのは、フラッシュメモリ１２が使用されていない領域である。なお、図６から図８において、（ａ）はインストール前の初期状態を示している。
【００４５】
ＣＰＵ１１は、フラッシュメモリ１２上に更新ファイルを解凍し、フラッシュメモリ１２上に解凍後のファイルをインストールする（ステップＳ３３０）。図６（ｃ）に示すようにフラッシュメモリ１２上には、更新されるファイル、更新ファイル、解凍後のファイルの３つのファイルが存在する。ＣＰＵ１１は、解凍後のファイルのインストール完了後に、フラッシュメモリ１２上から、更新されるファイル及び更新ファイルを削除し（ステップＳ３３５）、ＰＣ５０にファームウエアのインストールが完了したことを通知し（ステップＳ３４０）、ファームウエアのインストールを完了する。インストール完了後のフラッシュメモリ１２のメモリ使用量は、図６（ｄ）に示すようになっている。
【００４６】
条件１及び条件２を満たす場合には、インストール動作中にはフラッシュメモリ１２上には、更新されるファイルと解凍後のファイルのいずれかのファイルが存在し、フラッシュメモリ１２からファイルが削除される場合には、削除される直前に、更新されるファイルと更新ファイルと解凍後のファイルとのうち少なくとも２つのファイルが存在している。
【００４７】
ＣＰＵ１１は、条件２を満たさない場合には、条件３を満たすか判断する（ステップＳ４００）。ＣＰＵ１１は、条件３を満たす場合には、ＰＣ５０に対してファームウエアをインストールできることを通知し、（ステップＳ４０５）更新ファイルが送信されるのを待つ。ＣＰＵ１１は、ＰＣ５０から更新ファイルを受信すると、フラッシュメモリ１２上に更新ファイルを記憶する（ステップＳ４１０）。図７（ｂ）に示すようにフラッシュメモリ１２上には、更新されるファイルと更新ファイルとが存在する。ここで、矢印の右にあるかっこ書きは、図５のフローチャートのステップを示す。ＣＰＵ１１は、フラッシュメモリ１２上から更新されるファイルを削除する（ステップＳ４１５）。図７（ｃ）に示すようにフラッシュメモリ１２上には更新ファイルが存在する。
【００４８】
ＣＰＵ１１は、フラッシュメモリ１２上に更新ファイルを解凍し、フラッシュメモリ１２上に解凍後のファイルをインストールする（ステップＳ４２０）。図７（ｄ）に示すようにフラッシュメモリ１２上には、更新ファイルと解凍後のファイルとが存在する。ＣＰＵ１１は、解凍後のファイルのインストール完了後、フラッシュメモリ１２上から、更新ファイルを削除し（ステップＳ４２５）、）ＰＣ５０に更新ファイルのインストールが完了したことを通知し（ステップＳ４３０）ファームウエアのインストールを完了する。インストール完了後のフラッシュメモリ１２のメモリ使用量は、図７（ｅ）に示すようになっているを示す。
【００４９】
条件１及び条件３を満たす場合には、インストール動作中にはフラッシュメモリ１２上には、更新されるファイルと更新ファイルと解凍後のファイルとのうち少なくとも１つのファイルが存在している。また、フラッシュメモリ１２上から更新されるファイルが削除される場合には、フラッシュメモリ１２上には、更新されるファイルと更新ファイルとの２つのファイルが存在し、フラッシュメモリ１２上から更新ファイルが削除される場合には、フラッシュメモリ１２上には、更新ファイルと解凍後のファイルとの２つのファイルが存在している。
【００５０】
ＣＰＵ１１は、条件３を満たさない場合であっても、条件１を満たしているので（ステップＳ３０５）、ＰＣ５０に対してファームウエアを更新ファイルをインストールできることを通知し、（ステップＳ４５５）更新ファイルが送信されるのを待つ。ＣＰＵ１１は、ＰＣ５０から更新ファイルを受信すると、フラッシュメモリ１２上に更新ファイルを記憶する（ステップＳ４６０）。図８（ｂ）に示すようにフラッシュメモリ１２上には更新されるファイルと更新ファイルとが存在する。
【００５１】
ＣＰＵ１１は、更新ファイルをＲＡＭ１４上に解凍し（ステップＳ４６５）、フラッシュメモリ１２上から更新ファイルを削除する（ステップＳ４７０）。図８（ｃ）に示すようにフラッシュメモリ１２上には更新されるファイルが存在する。ＣＰＵ１１は、解凍後のファイルをＲＡＭ１４からフラッシュメモリ１２上にコピーすることによりフラッシュメモリ１２上に解凍後のファイルをインストールする（ステップＳ４７５）。図８（ｄ）に示すようにフラッシュメモリ１２上には更新されるファイルと解凍後のファイルとが存在する。
【００５２】
ＣＰＵ１１は、解凍後のファイルのインストール完了後、フラッシュメモリ１２上から更新されるファイルを削除し（ステップＳ４８０）、ＰＣ５０に更新ファイルのインストールが完了したことを通知し（ステップＳ４８５）ファームウエアのインストールを完了する。インストール完了後のフラッシュメモリ１２のメモリ使用量は、図８（ｅ）に示すようになっている。
【００５３】
条件１を満たす場合、インストール動作中にはフラッシュメモリ１２上には、更新されるファイルと解凍後のファイルのいずれかが存在している。また、フラッシュメモリ１２から更新ファイルが削除される場合には、フラッシュメモリ１２には、更新されるファイルと更新ファイルとの２つのファイルが存在し、フラッシュメモリ１２から更新されるファイルが削除される場合には、フラッシュメモリ１２には、更新されるファイルと解凍後のファイルとの２つのファイルが存在している。
【００５４】
以上説明したように、本実施例に係るプリンタによれば、フラッシュメモリ１２の空き容量が、解凍後のファイルのファイル容量よりも大きい場合には、ＣＰＵ１１は、フラッシュメモリ１２上にプリンタ１０の実行に必要なファイルを存在させた状態でファームウエアをインストールができる。したがって、ファームウエアのインストールが、例えば電源断の発生により失敗した場合であっても、プリンタ１０を再起動不能を防止、抑制できる。
【００５５】
ファームウエアをインストールする前のフラッシュメモリ１２の空き容量が、更新ファイルのファイル容量と解凍後のファイルのファイル容量とを合わせた容量以上である場合には、ＣＰＵ１１は、ファームウエアのインストール中に、更新されるファイルと解凍後のファイルとのどちらかのファイルをフラッシュメモリ１２上に存在した状態で、ファームウエアをインストールできる。したがって、ファームウエアのインストールが、例えば、電源断の発生により、失敗した場合であっても、フラッシュメモリ１２上には、更新されるファイル又は解凍後のファイルのどちらかのファイルが存在しているので、プリンタ１０の再起動不能を防止、抑制できる。
【００５６】
ＣＰＵ１１は、ファームウエアをインストールする前のフラッシュメモリ１２の空き容量が、更新ファイルのファイル容量と解凍後のファイルのファイル容量とを合わせた容量未満である場合であっても、ファームウエアをインストール前のフラッシュメモリ１２の空き容量が、解凍後のファイルのファイル容量以上であり、かつ、ファームウエアをインストールする前のフラッシュメモリ１２の空き容量と更新されるファイルのファイル容量とを合わせた容量が、更新ファイルのファイル容量と更新されるファイルのファイル容量とを合わせた容量以上である場合には、ファームウエアのインストール中に、更新されるファイルと更新ファイルと解凍後のファイルとのうち少なくとも１つのファイルをフラッシュメモリ１２上に存在させた状態でファームウエアのインストールが実行できる。したがって、ファームウエアのインストール中が、例えば、電源断の発生により失敗した場合であっても、プリンタ１０の再起動不能を脳死、抑制できる。また、この場合、フラッシュメモリ１２の空き容量がより少ない場合であっても、ファームウエアのインストールが実行できる。ただし、ファームウエアのインストールに失敗した場合、失敗のタイミングによっては、更新ファイルを解凍して実行する必要がある場合がある。
【００５７】
ＣＰＵ１１は、ファームウエアをインストール前のフラッシュメモリ１２の空き容量が、解凍後のファイルのファイル容量以上である場合には、ＲＡＭ１４が必要となるが、更新されるファイルと解凍後のファイルのいずれかのファイルをフラッシュメモリ１２上に存在させた状態でファームウエアのインストールができる。したがって、ファームウエアのインストールが、例えば、電源断の発生等により失敗した場合であっても、プリンタ１０の再起動不能を防止、抑制できる。また、ＲＡＭ１４が必要になるが、フラッシュメモリ１２の空き容量がさらに少なくても、ファームウエアのインストールが実行できる。
【００５８】
Ｃ．変形例
本実施例では、第１の記憶手段としてフラッシュメモリ１２を用いて説明したが、例えばハードディスクのような固体記憶装置であってもよい。
【００５９】
本発明の実施例の説明では、ＣＰＵ１１は、フラッシュメモリ１２の空き容量と更新されるファイルのファイル容量とを合わせた容量が、更新ファイルのファイル容量と解凍後のファイルのファイル容量とを合わせた容量以上の場合には、ステップＳ４１０からステップＳ４２５を手順を採用し、更新ファイルのファイル容量と解凍後のファイルのファイル容量とを合わせた容量に満たない場合には、ステップＳ４６０からステップＳ４７５の手順を採用しているが、プリンタ１０がＲＡＭ１４を有していれば、いずれの場合であってもステップＳ４６０からステップＳ４７５の手順を採用してもよい。ファームウエアのインストール中は、フラッシュメモリ１２上には、更新されるファイル又は解凍後のファイルのいずれかが記憶されているので、電源断が発生しても、更新されるファイル又は解凍後のファイルのいずれかが実行可能である。また、更新ファイルを記憶する場合に、フラッシュメモリ１２ではなく、ＲＡＭ１４に最初に記憶してもよい。
【００６０】
図９から１１を参照して、フラッシュメモリ１２に記憶されているファイルのうち一部のファイルが更新されない場合について説明する。この場合、条件１は、フラッシュメモリ１２の全容量が、更新されないファイルのファイル容量と更新されるファイルのファイル容量と解凍後のファイルのファイル容量とを合わせた容量以上である、条件２は、フラッシュメモリ１２の全容量が、更新されないファイルのファイル容量と更新されるファイルのファイル容量と更新ファイルのファイル容量と解凍後のファイルのファイル容量とを合わせた容量以上である、条件３は、フラッシュメモリ１２の全容量が、更新されないファイルのファイル容量と更新ファイルのファイル容量と解凍後のファイルのファイル容量とを合わせた容量となる。
【００６１】
図９は、条件１及び条件２を満たす場合のフラッシュメモリ１２のメモリ使用量を模式的に示す説明図である。図１０は、条件１及び条件３を満たす場合のフラッシュメモリ１２のメモリ使用量を模式的に示す説明図である。図１１は、条件１を満たす場合のフラッシュメモリ１２のメモリ使用量を模式的に示す説明図である。ここで未更新ファイルとはインストールにより更新されないファイルをいう。他については図６から図８と同じであるので説明を省略する。
【００６２】
図９は、図６に対応するものであり、インストール動作中、フラッシュメモリ１２上には、更新されるファイル又は解凍後のファイルにいずれかのファイルが存在している。図１０は、図８に対応するものであり、インストール動作中、フラッシュメモリ１２上には、更新されるファイルと更新ファイルと解凍後のファイルのうち少なくとも１つのファイルが存在している。図１１は図８に対応するものであり、インストール動作中、フラッシュメモリ１２上には、更新されるファイル又は解凍後のファイルのいずれかのファイルが存在している。
【００６３】
したがって、プリンタ１０は、フラッシュメモリ１２に記憶されているファイルのうち一部のファイルが更新されない場合であっても、ファームウエアのインストールに失敗による、再起動不能を防止、抑制することができる。なお、ファイルが更新されず、追加されるだけの場合は、更新されるファイルの大きさが０であると考えればよい。
【００６４】
以上、実施例に基づいて本発明に係るプリンタを説明してきたが、上記した発明の実施の形態は、本発明の理解を容易にするためのものであり、本発明を限定するものではない。本発明は、その趣旨並びに特許請求の範囲を逸脱することなく、変更、改良され得るとともに、本発明にはその等価物が含まれることはもちろんである。
【図面の簡単な説明】
【００６５】
【図１】本発明の実施例に係るプリンタの構成を示す説明図。
【図２】本発明の実施例に係るＰＣの構成を示す説明図。
【図３】プリンタのファームウエアをインストールするときのＰＣの動作のフローチャートを示す説明図。
【図４】プリンタのファームウエアのインストール処理のフローチャートを示す説明図。
【図５】プリンタのファームウエアのインストール処理のフローチャートを示す説明図。
【図６】条件１及び条件２を満たす場合のフラッシュメモリのメモリ使用量を模式的示す説明図。
【図７】条件１及び条件３を満たす場合のフラッシュメモリのメモリ使用量を模式的に示す説明図。
【図８】条件１を満たす場合のフラッシュメモリのメモリ使用量を模式的に示す説明図。
【図９】条件１及び条件２を満たす場合のフラッシュメモリのメモリ使用量を模式的示す説明図。
【図１０】条件１及び条件３を満たす場合のフラッシュメモリのメモリ使用量を模式的に示す説明図。
【図１１】条件１を満たす場合のフラッシュメモリのメモリ使用量を模式的に示す説明図。
【符号の説明】
【００６６】
１０…プリンタ
１１…ＣＰＵ
１２…フラッシュメモリ
１３…ＲＯＭ
１４…ＲＡＭ
１５…ネットワークインターフェース
１６…印刷部
１７…ネットワーク
１８…印字ヘッド
１９…紙送り機構
５０…ＰＣ
５１…ＣＰＵ
５２…ＲＯＭ
５３…ＲＡＭ
５４…ハードディスク
５５…ＣＤ−ＲＯＭ
５６…入力インターフェース
５７…出力インターフェース
５８…ネットワークインターフェース
５９…ディスプレイ
６０…キーボード
６１…マウス
【図１】
2007219720.tif 000003
【図２】
2007219720.tif 000004
【図３】
2007219720.tif 000005
【図４】
2007219720.tif 000006
【図５】
2007219720.tif 000007
【図６】
2007219720.tif 000008
【図７】
2007219720.tif 000009
【図８】
2007219720.tif 000010
【図９】
2007219720.tif 000011
【図１０】
2007219720.tif 000012
【図１１】
2007219720.tif 000013