(57)【要約】【課題】装置構成に応じてファームウエアの更新を行うことは面倒だった。【解決手段】管理装置１００は、プログラム提供装置３０から第１主装置２０ａ向けの第１主装置ファームウエア２４ａと、第１付属装置２２ａ向けの第１付属装置ファームウエア２６ａと、それらの更新の手順を示すファイルとを取得する。管理装置１００は、そのファイルに基づいて第１主装置２０ａの装置構成に応じた手順で第１主装置ファームウエア２４ａおよび第１付属装置ファームウエア２６ａの更新処理を行う。これにより、管理装置１００は、装置構成に応じて適切な手順でファームウエアの更新作業を行うことができる。【選択図】　　　　図１
2004118586.tif 000002
【特許請求の範囲】
【請求項１】
主装置とその装置に関連して動作する関連装置との組み合わせに対応付けて、前記主装置と前記関連装置とが保持するプログラムの更新手順を格納する格納部と、
ネットワークに存在する所定の主装置とその関連装置とが保持するプログラムを、前記更新手順に基づいて更新する更新処理部と、
を備えることを特徴とする管理装置。
【請求項２】
主装置とそれに装着可能な付属装置の組み合わせに対応付けて、前記主装置および前記付属装置のファームウエアの更新手順を手順ファイルとして保持する格納部と、
前記組み合わせに従って手順ファイルを前記格納部から読み込み、その手順ファイルに基づいてその主装置および付属装置のファームウエアを更新する更新処理部と、
を備えることを特徴とする管理装置。
【請求項３】
互いに関連し合う装置がそれぞれ保持すべきプログラムの更新手順を、それら装置の組み合わせに対応付けて保持する格納部から、実際にネットワークに存在する装置の組み合わせに応じた更新手順を読み込む工程と、
その更新手順に基づいて、前記ネットワークに存在する装置のプログラムをそれぞれ更新する工程と、
を実行させるためのプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は所定の装置の管理技術に関し、とくにネットワークを介して所定の装置のプログラムを更新する技術に関する。
【０００２】
【従来の技術】
プリンタ、スキャナ、ＦＡＸ、ＭＦＰ（Ｍｕｌｔｉ　Ｆｕｎｃｔｉｏｎａｌ　Ｐｅｒｉｐｈｅｒａｌ）などの情報機器が普及している。これらの情報機器は、それぞれ内蔵する汎用のプロセッサにファームウエアを実行させることで種々の機能を実現する。一般にファームウエアはフラッシュメモリなどの不揮発性メモリに記録され、バージョンアップができるようになっている。ネットワーク技術の発達にともない、これらの情報機器もネットワークに接続する機能を有するようになり、ネットワーク経由でファームウエアを更新できる。（特許文献１）。
【０００３】
【特許文献１】
特開２００１−２３０８９２号公報　（第１−５項、第１図）
【０００４】
【発明が解決しようとする課題】
情報機器（以下、「主装置」という）には、オプション機器（以下、「付属装置」という）を搭載または装着することで種々の機能を追加できるものがある。付属装置としては、例えばＦＡＸの回線数を増設するためのものや、ＦＡＸで受信した紙面イメージを電子メールで送信するためのものなどがある。このような付属装置もプロセッサを備えることがあり、その場合、それらの装置にそれぞれ内蔵されたファームウエアを実行させることで所定の機能を実現する。
【０００５】
このため、主装置および付属装置のいずれかのファームウエアを更新する場合、主装置と付属装置のファームウエアのバージョンの整合性や、更新の順番などに注意する必要がある。バージョンが合わなかったり、更新の順番を間違えたりすると、本来の機能が実現できなくなったり、更新作業が途中でできなくなったり、最悪の場合は、装置の再起動すらできないこともある。
【０００６】
また、付属装置は任意に取り付けられるので、主装置に搭載された付属装置の種類や数の組み合わせは様々である（以下、こうした組み合わせを単に「装置構成」という）。例えば、企業などでは装置構成の異なる主装置が同一のネットワークに複数存在する。こういう状況下で、一台毎にファームウエアを更新する作業を行うことは大変であるとともに、更新作業を間違うこともある。
【０００７】
本発明者はそうした点に着目して本発明をなしたものであり、その目的は、プログラムの更新作業を容易にする技術、装置構成に応じてプログラムを更新する技術、メンテナンスを容易にする技術、プログラムの更新作業を効率的に行う技術、プログラムの更新に係る障害情報を蓄積する技術の提供にある。
【０００８】
【課題を解決するための手段】
本発明のある態様は、所定の装置が有するプログラムを管理する装置である。この装置は、主装置とその装置に関連して動作する関連装置との組み合わせに対応付けて、前記主装置と前記関連装置とが保持するプログラムの更新手順を保持する格納部と、ネットワークに存在する所定の主装置とその関連装置とが保持するプログラムを、前記更新手順に基づいて更新する更新処理部とを備える。「プログラム」は、ファームウエア、アプリケーションプログラムなど任意の形態のプログラムであってよい。これにより、相関関係を有する装置がそれぞれ保持するプログラムの更新作業を適切に行うことができる。例えば、主装置がネットワークＦＡＸであり、関連装置がクライアントコンピュータである場合、当該装置は、ネットワークＦＡＸのファームウエアを更新するとともに、クライアントコンピュータのネットワークＦＡＸを利用するためのドライバソフトも更新することができる。
【０００９】
本発明の別の態様も、所定の装置が有するプログラムを管理する装置である。この装置は、主装置とそれに装着可能な付属装置の組み合わせに対応付けて、前記主装置および前記付属装置のファームウエアの更新手順を手順ファイルとして保持する格納部と、前記組み合わせに従って手順ファイルを前記格納部から読み込み、その手順ファイルに基づいてその主装置および付属装置のファームウエアを更新する更新処理部とを備える。「付属装置」は、主装置に接続されることで所定の機能を主装置に提供する装置である。これにより、装置構成に応じてファームウエアの更新作業を行うことができる。
【００１０】
本発明の更に別の態様は、プログラムである。このプログラムは、互いに関連し合う装置がそれぞれ保持すべきプログラムの更新手順を、それら装置の組み合わせに対応付けて保持する格納部から、実際にネットワークに存在する装置の組み合わせに応じた更新手順を読み込む工程と、その更新手順に基づいて、前記ネットワークに存在する各装置のプログラムをそれぞれ更新する工程とをコンピュータに実行させる。このプログラムを所定のコンピュータに実行させれば、互いに関連し合う装置が有するプログラムの更新作業を効率的に行うことができる。
【００１１】
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
【００１２】
【発明の実施の形態】
図１は、実施の形態に係るプログラム管理システム１０の構成図である。第１主装置２０ａおよび第２主装置２０ｂ（以下、場合により「主装置２０」という）は、例えばＦＡＸ、ＭＦＰ、プリンタ、スキャナなどであり、ローカルエリアネットワーク１２に接続される。第１付属装置２２ａ、第２付属装置２２ｂ、および第３付属装置２２ｃ（以下、場合により「付属装置２２」という）は、例えば回線増設機能、電子メール送受信機能、ＦＡＸサーバ機能、プリンタサーバ機能、スキャナ機能などの機能を実現する装置であり主装置２０に搭載される。主装置２０に搭載される付属装置２２の組み合わせは任意であり、本図では第１主装置２０ａに第１付属装置２２ａが搭載され、第２主装置２０ｂに第２付属装置２２ｂおよび第３付属装置２２ｃが搭載されている。
【００１３】
第１主装置ファームウエア２４ａおよび第２主装置ファームウエア２４ｂ（以下、場合により「主装置ファームウエア２４」という）が、第１主装置２０ａならびに第２主装置２０ｂに保持され実行される。第１付属装置ファームウエア２６ａ、第２付属装置ファームウエア２６ｂ、および第３付属装置ファームウエア２６ｃ（以下、場合により「付属装置ファームウエア２６」という）が、第１付属装置２２ａ、第２付属装置２２ｂ、ならびに第３付属装置２２ｃに保持され実行される。
【００１４】
クライアント１８は、例えばパーソナルコンピュータなどの端末装置であり、ローカルエリアネットワーク１２に接続されている。管理装置１００は、ローカルエリアネットワーク１２に接続された主装置２０の装置構成に基づいて、ファームウエアの更新作業を行う。また、管理装置１００はルータ１６を介してワイドエリアネットワーク１４に接続されたプログラム提供装置３０からファームウエアを取得する。
【００１５】
図２は、図１の管理装置１００の内部構成図である。管理装置１００の各構成要素は、ハードウエアコンポーネントで言えば、任意のコンピュータのＣＰＵ、メモリ、メモリにロードされた本図の構成要素を実現するプログラム、そのプログラムを格納するハードディスクなどの記憶ユニット、ネットワーク接続用インターフェースを中心に実現されるが、その実現方法、装置にはいろいろな変形例があることは、当業者には理解されるところである。これから説明する各図は、ハードウエア単位の構成ではなく、機能単位のブロックを示している。
【００１６】
装置構成情報取得部１０２は、主装置２０の装置構成を取得して、例えば、主装置２０のＩＰアドレス、主装置２０および付属装置２２の型式、ファームウエア型式、バージョン情報などを管理データベース１０４に格納する。装置構成情報取得部１０２は、装置構成を自動的に取得してもよいし、ユーザから装置構成の入力を受け付けてもよい。要は、装置構成情報取得部１０２は、任意の手段により装置構成を取得すればよい。これにより、管理データベース１０４は常に最新の装置構成を保持する。
【００１７】
図３は、図２の管理データベース１０４のデータ構造の一例を示す図である。装置ＩＤ欄１５０は、ローカルエリアネットワーク１２における主装置２０を特定する情報を保持する。ＩＰアドレス欄１５２は、主装置２０のＩＰアドレスを保持する。主装置型式欄１５４は、主装置２０の型式に関する情報を保持する。主装置ファームウエア型式欄１５６は、主装置ファームウエア２４の型式を保持する。付属装置型式欄１５８は、付属装置２２の型式に関する情報を保持する。付属装置ファームウエア型式欄１６０は、付属装置ファームウエア２６の型式を保持する。本図で装置ＩＤが「０００２」の主装置の型式は「ＭＦＰ００２」であり、主装置ファームウエアが「Ｍ０２ＪＰＮＣ０Ａ０Ａ０」であることがわかる。また、２つの付属装置が搭載されその型式は「ＯＰ０２」と「ＯＰ０３」であることがわかる。さらに、それら付属装置のファームウエアは「Ｏ０２ＪＰＮＡ０Ａ０Ａ０」と「Ｏ０３ＪＰＮＣ０Ａ０Ａ０」である。
【００１８】
図２に戻り、ファームウエア取得部１１２は、図１のプログラム提供装置３０または記録媒体１３０から主装置ファームウエア２４、付属装置ファームウエア２６を取得して格納部１１４に格納する。ファームウエア取得部１１２は、例えばＳＭＴＰ、ＦＴＰ、ＨＴＴＰ等のデータ通信手段によりプログラム提供装置３０からファームウエアを取得してもよいし、例えばフレキシブルディスク、光磁気ディスク、ＣＤ−ＲＯＭなどの記録媒体１３０からファームウエアを取得してもよい。また、ファームウエア取得部１１２は定期的にプログラム提供装置３０に接続して、新しいファームウエアを取得してもよいし、プログラム提供装置３０からファームウエアが自動的にプッシュされてもよい。また、ファームウエア取得部１１２は、ファームウエアのバージョンアップを伝える電子メールを受信し、そのタイミングでプログラム提供装置３０からファームウエアを取得してもよい。
【００１９】
格納部１１４は、主装置ファームウエアデータベース１１８、付属装置ファームウエアデータベース１２０、手順データベース１２２、およびファームウエア格納部１２４を含む。主装置ファームウエアデータベース１１８および付属装置ファームウエアデータベース１２０は、主装置ファームウエア２４ならびに付属装置ファームウエア２６の型式情報、バージョン情報、整合性情報などそれぞれのファームウエアに関連する情報を保持する。また、手順データベース１２２は、装置構成に対応付けて更新手順を示す手順情報を保持する。これらの情報は、ファームウエアのデータ中に含められていてもよいし、ファームウエアとは別の手順ファイルに含まれていてもよい。
【００２０】
図４は、図２の主装置ファームウエアデータベース１１８のデータ構造の一例を示す図である。主装置ファームウエア型式欄１７０は、主装置ファームウエア２４の型式情報およびバージョン情報を保持する。本実施例では、主装置ファームウエアの型式情報およびバージョン情報を意味するファイル名が保持されている。対象主装置型式欄１７２は、更新対象となる主装置２０の型式情報を保持する。日付欄１７４は、主装置ファームウエア２４の提供開始日を保持する。一般に日付欄１７４に保持されている日付が新しい主装置ファームウエア２４ほど、バージョンが高いものである。
【００２１】
図５は、図２の付属装置ファームウエアデータベース１２０のデータ構造の一例を示す図である。付属装置ファームウエア型式欄１８０は、付属装置ファームウエア２６の型式情報およびバージョン情報を保持する。本実施例では、図４で説明した主装置ファームウエア型式欄１７０と同様に、型式情報およびバージョン情報が含まれたファイル名が保持されている。対象付属装置型式欄１８２は、更新対象となる付属装置２２の型式情報を保持する。対象主装置欄１８４は、付属装置２２が搭載される主装置２０の型式情報を保持する。整合情報欄１８６は、付属装置ファームウエア２６と主装置ファームウエア２４との整合性に関する情報を保持する。本図から、型式「ＯＰ０２」のファームウエアを「Ｏ０２ＪＰＮＡ０Ａ０Ａ０」に更新するためには、「ＭＦＰ００２」のファームウエアが「Ｍ０２ＪＰＮＢ０Ａ０Ａ０」以降の必要があることがわかる。
【００２２】
図６は、図２の手順データベース１２２のデータ構造の一例を示す図である。主装置型式欄１９０は、主装置２０の型式情報を保持する。付属装置構成欄１９２は、主装置２０に搭載されている付属装置２２の組み合わせを保持する。更新手順欄１９４は、ファームウエアの更新手順を保持する。本図で型式が「ＭＦＰ００２」の主装置２０に、型式が「ＯＰ０２」および「ＯＰ０３」の付属装置２２が搭載されている場合、まず「ＯＰ０３」のファームウエアの更新を行い、次に「ＯＰ０２」の更新を行い、最後に「ＭＦＰ００２」の更新を行うことが指示されている。
【００２３】
図２に戻り、判定部１０６は、管理データベース１０４および格納部１１４に保持されているデータに基づいてファームウエアの更新が必要な装置構成を抽出する。そして、判定部１０６は、更新に必要な主装置ファームウエア２４および付属装置ファームウエア２６がファームウエア格納部１２４に格納されているか否かを判定する。必要な全てのファームウエアが格納されている場合、判定部１０６は、更新処理部１１６に更新処理の開始を指示する。また、ファームウエアが足りない場合、判定部１０６は、必要なファームウエアの取得をファームウエア取得部１１２に要求する。また、判定部１０６は判定結果を作業履歴格納部１１０に書き込む。
【００２４】
更新処理部１１６は、手順データベース１２２に保持されているデータに基づいて、第１主装置２０ａまたは第２主装置２０ｂに対してファームウエアの更新処理を行う。そして、更新処理部１１６は更新処理の成功の可否など更新処理に関連する情報を作業履歴格納部１１０に書き込む。通知部１０８は、判定部１０６における判定結果および作業履歴格納部１１０に保持されている作業履歴をクライアント１８に出力する。
【００２５】
図７は、管理装置１００におけるファームウエア更新処理のフローチャートである。図２を参照してこのフローチャートを説明する。まず、ファームウエア取得部１１２は、ファームウエアの更新指示を受け付け（Ｓ１０）、そのファームウエアが取得済みか否かを判定する（Ｓ１２）。ファームウエア取得部１１２は、この指示を電子メールにより受け付けてもよいし、ユーザから受け付けてもよい。取得済みの場合（Ｓ１２のＹ）、判定部１０６は格納部１１４からバージョン情報、整合性情報および更新順序情報を含む手順ファイルを読み込む（Ｓ１４）。Ｓ１２で取得済みでない場合（Ｓ１２のＮ）、ファームウエア取得部１１２はファームウエアと手順ファイルを取得して（Ｓ１６）、Ｓ１４に進む。
【００２６】
次に、判定部１０６は手順ファイルに含まれるバージョン情報と管理データベース１０４に保持されている主装置型式情報および付属装置型式情報とに基づいてファームウエアを更新すべき装置の有無を判定する（Ｓ１８）。この判定は例えば、新しく取得したファームウエアの対象となる主装置２０または付属装置２２が管理データベース１０４に含まれるか否かを調べることで行ってよい。更新すべき装置がある場合（Ｓ１８のＹ）、判定部１０６は主装置毎に装置構成情報を読み込み（Ｓ２０）、既にファームウエア格納部１２４に保持しているファームウエアで更新作業を行えるか否かを判定する（Ｓ２２）。この判定に、手順データベース１２２の更新順序情報、付属装置ファームウエアデータベース１２０の整合情報などが利用される。更新作業を行える場合（Ｓ２２のＹ）、更新処理部１１６はファームウエアの更新処理を開始する（Ｓ２４）。そして、装置構成情報を作業履歴格納部１１０に記録する（Ｓ２６）。そして、Ｓ１８に戻る。
【００２７】
また、Ｓ２２で更新作業を行えない場合（Ｓ２２のＮ）、判定部１０６は自動的に必要なファームウエアをダウンロードできるか否かを判定する（Ｓ２８）。例えば、ネットワークへの接続可否を判定する。ダウンロード可能な場合（Ｓ２８のＹ）、判定部１０６はファームウエア取得部１１２にファームウエアとそれにともなう手順ファイルの取得を指示する（Ｓ３０）。そして、Ｓ２２に戻り、必要なファームウエアが揃うまでこの作業を繰り返す。Ｓ２８でダウンロードできない場合（Ｓ２８のＮ）、判定部１０６は更新作業を完了できない旨を作業履歴格納部１１０に記録する（Ｓ３２）。そして、Ｓ１８に戻る。
【００２８】
Ｓ１８で、更新すべき装置がない場合（Ｓ１８のＮ）、すなわち全ての装置について更新作業が完了した後、判定部１０６は作業履歴情報を通知するか否かを判定する（Ｓ３４）。通知する場合（Ｓ３４のＹ）、通知部１０８は判定部１０６の指示に応じて作業履歴の通知を行い（Ｓ３６）、処理を終了する。Ｓ３４で作業履歴の通知をしない場合（Ｓ３４のＮ）、処理を終了する。
【００２９】
以上、本発明を実施の形態をもとに説明した。実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【００３０】
例えば、互いに関連し合う装置間でも適切なプログラムの更新処理を行うようにしてもよい。例えば、ネットワーク上にプリンタと第１のオペレーティングシステムで動作する第１クライアントと第２のオペレーティングシステムで動作する第２クライアントが接続されたシステムを想定する。このシステムにおいてプリンタのファームウエアを更新すると、第１クライアントでは動作しても第２クライアントでは動作しない場合がある。これを解消するために、図１のプログラム管理システム１０を利用できる。これを実現するための各構成の変更点を説明する。
【００３１】
図２の装置構成情報取得部１０２がローカルエリアネットワーク１２に接続された、例えばクライアント１８を含む全ての機器の情報を取得し、管理データベース１０４に格納する。格納部１１４は、ファームウエア毎に整合性情報と更新手順情報とを対応付けて保持する。これにより、相互に関連する装置のファームウエアの更新作業を適切に行うことができる。例えば、これは家電ネットワークなどにおいても利用できる。また、図２の作業履歴格納部１１０は、更新作業ができなかった場合の障害情報も保持するので、通知部１０８はネットワークを介して、その障害情報を収集装置に送信してもよい。この障害情報を利用することでメーカーなどのサービスは迅速にファームウエアなどのプログラムの更新作業を進めることができる。
【発明の効果】
本発明によれば、装置構成に応じてプログラムを適切に更新できる。
【図面の簡単な説明】
【図１】本実施の形態に係るプログラム管理システムの構成図である。
【図２】図１の管理装置の内部構成図である。
【図３】図２の管理データベースのデータ構造の一例を示す図である。
【図４】図２の主装置ファームウエアデータベースのデータ構造の一例を示す図である。
【図５】図２の付属装置ファームウエアデータベースのデータ構造の一例を示す図である。
【図６】図２の手順データベースのデータ構造の一例を示す図である。
【図７】図２の管理装置におけるファームウエア更新処理のフローチャートである。
【符号の説明】
１０　プログラム管理システム、２４　主装置ファームウエア、２６　付属装置ファームウエア、３０　プログラム提供装置、１００　管理装置、１０２　装置構成情報取得部、１０４　管理データベース、１０６　判定部、１０８　通知部、１１０　作業履歴格納部、１１２　ファームウエア取得部、１１６　更新処理部、１１８　主装置ファームウエアデータベース、１２０　付属装置ファームウエアデータベース、１２２　手順データベース、１２４　ファームウエア格納部。
【図１】
2004118586.tif 000003
【図２】
2004118586.tif 000004
【図３】
2004118586.tif 000005
【図４】
2004118586.tif 000006
【図５】
2004118586.tif 000007
【図６】
2004118586.tif 000008
【図７】
2004118586.tif 000009