(57)【特許請求の範囲】
【請求項１】
上位装置と複数機種の端末装置とにより構成されたシステムであって、
前記上位装置は、各機種にそれぞれ対応した制御プログラムのモジュールを有し、
各前記端末装置は、それぞれ当該端末装置の機種を示す機種情報を有し、
前記上位装置から各前記端末装置へ新しい更新プログラムを配布し、端末装置のプログラムと当該更新プログラムとのプログラム交換を行うにあたり、
前記上位装置は、前記更新プログラムとともに、各前記モジュールを各前記端末装置へネットワークを経由して配布し、
各前記端末装置は、当該端末装置の有する前記機種情報に対応した前記モジュールを読込むにあたり、
特定機種に対応する前記モジュールをいったん読込み、
当該端末装置の有する前記機種情報の示す機種と当該特定機種とを照合し、照合結果が不一致の場合に、当該機種情報の示す機種に対応するモジュールを読込む
ことを特徴とする一斉プログラム交換システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、サーバ等の上位装置とクライアント等の端末装置とにより構成されたシステムにおいて、各端末装置のプログラムを一斉に交換する技術に関する。
【０００２】
【従来の技術】
従来、クライアント／サーバ・システム等において、上位装置と端末装置との通信中に、上位装置に配信されている最新の端末用プログラムのバージョンと、端末状のプログラミングのバージョンとを照合し、これらバージョンどうしが一致しているか否かを判断している。そして、バージョンどうしが不一致の場合に、端末のプログラムを最新の端末用プログラムに更新する、プログラム交換が実施されていた。
なお、端末用プログラムとしては、例えば、業務上アプリケーションプログラム、ミドルウエア又はドライバが挙げられる。
【０００３】
ところで、クライアント／サーバ・システムなどが大規模システムである場合、端末装置の一部分を後から増設する場合が多い。例えば、数年間という長期間をかけてリリースされた大規模システムにおいては、図１の左側上下部分又は中央上下部分にそれぞれ示すように、各端末装置を同一のもとするべきである。
【０００４】
しかし、実際には、端末装置の改良などにより、リリース期間内であっても、端末装置の購入時期によって端末装置の構成部品が異なるものを用いざるを得ない場合がある。その結果、図１の右側上下部分に示すように、一つのシステムを複数種類の端末装置（端末１及び端末２）で構成する端末装置の機種が異なり、端末装置どうしでドライバが異なってしまうことがある。特に、ドライバに相互互換性がない場合には、各端末装置に単一モジュールを配信しても、端末装置によってはプログラムを更新できなくなる場合がある。
【０００５】
そこで、クライアント／サーバ・システム等において、各端末のプログラムを一斉に更新するための保守管理方式が、種々提案されている。
例えば、文献１：「特開平３−２３７５３０号公報」には、ネットワークに接続されたホストコンピュータと、端末装置としての複数のパーソナルコンピュータとからなるネットワークシステムにおけるソフトウエアの保守方式が開示されている。そして、この保守方式によれば、ソフトウエアに対する更新モジュールファイルと、更新対象リストファイルとを予め作成しておき、更新対象の端末装置のプログラムを更新する。
【０００６】
また、例えば、文献２：「特開平４−３５９３４５号公報」に開示の技術によれば、ホストコンピュータに、各端末装置の情報を一括して管理する端末ソフト管理テーブルを設けておき、このテーブルに基づいて、更新の必要な端末装置を判断して、端末装置のソフトウエアを交換している。
【０００７】
【発明が解決しようとする課題】
しかしながら、文献１に開示の技術には、上述のように、更新モジュールファイルと更新対象リストファイルとを予め作成しておかなければならないという問題点があった。
また、文献２に開示の技術によれば、上述のように、配信が必要なソフトウエアの管理テーブルをホスト側に設けている。このため、例えば、ストレージカードを利用してデータ交換を実施しようとしても、ホスト側で端末装置を識別することができないという問題点があった。
【０００８】
本発明は、上記の問題を解決すべくなされたものであり、ドライバの互いに異なる複数種類の端末装置に対する一斉プログラム交換を容易に行う技術の提供を目的とする。
【０００９】
なお、文献３：「特開平７−２１１００号公報」には、サーバからクライアントへソフトウエアの資源を同報配布する技術が開示されている。この技術によれば、サーバからクライアントへの配信が失敗した場合にも、再配布の指向を行いプログラム交換を実施する。
しかしながら、文献３に開示の技術では、ドライバの互いに異なる複数種類の端末装置に対して、プログラム交換を一斉に行うことについては何ら考慮されていなかった。
【００１０】
また、文献４：「特開平８−１７１４８７号公報」にも、モジュールを転送する技術が開示されている。この技術によれば、モジュール内を細分化することにより、ファイル転送量の縮小とファイル転送時間の短縮とを図っている。
しかしながら、文献４に開示の技術においても、文献３と同様に、ドライバの互いに異なる複数種類の端末装置に対して、プログラム交換を一斉に行うことについては何ら考慮されていなかった。
【００１１】
【課題を解決するための手段】
この目的の達成を図るため、本発明の請求項１に係る一斉プログラム交換システムによれば、上位装置と複数機種の端末装置とにより構成されたシステムであって、前記上位装置は、各機種にそれぞれ対応した制御プログラムのモジュールを有し、各前記端末装置は、それぞれ当該端末装置の機種を示す機種情報を有し、前記上位装置から各前記端末装置へ新しい更新プログラムを配布し、端末装置のプログラムと当該更新プログラムとのプログラム交換を行うにあたり、前記上位装置は、前記更新プログラムとともに、各前記モジュールを各前記端末装置へネットワークを経由して配布し、各前記端末装置は、当該端末装置の有する前記機種情報に対応した前記モジュールを読込むにあたり、特定機種に対応する前記モジュールをいったん読込み、当該端末装置の有する前記機種情報の示す機種と当該特定機種とを照合し、照合結果が不一致の場合に、当該機種情報の示す機種に対応するモジュールを読込む構成としてある。
【００１２】
このような構成によれば、各端末装置において当該端末装置の機種情報にそれぞれ対応したモジュールを読込むので、ドライバの互いに異なる複数機種の端末装置に対して、容易に一斉プログラム交換を行うことができる。
また、特定機種の端末装置は、機種情報を持つ必要がなく、非特定機種装置の端末装置のみに機種情報を持たせることができる。したがって、この発明は、例えば、特定機種の端末装置が大多数を占め、非特定機種の端末装置が少数である場合に適用して好適である。
【００２０】
【発明の実施の形態】
以下、本発明の実施の形態について、図面を参照して説明する。
なお、以下の各実施形態における一斉プログラム交換のための処理は、プログラムに制御されたコンピュータにより実行される。このプログラムは、例えば、記録媒体により提供される。記録媒体としては、例えば、磁気ディスク、半導体メモリ、その他の任意の、コンピュータで読み取り可能なものを使用することができる。
【００２１】
［第一実施形態］
まず、図２を参照して、本発明の一斉プログラム交換システム及び一斉プログラム交換方法の第一実施形態について説明する。
図２は、第一実施形態の一斉プログラム交換システムを説明するためのブロック図である。図２に示すように、このシステムは、上位装置１００と、端末１と表示した第一機種の端末装置１３０と、端末２と表示した第二機種の端末装置１４０とにより構成されている。
なお、図２では、端末１及び端末２をそれぞれ一つずつ代表して示しているが、実際には、端末１及び端末２はそれぞれ複数ずつ設けられている。
【００２２】
上位装置１００は、ＣＰＵ１０１、ＲＡＭ１０２、ＲＯＭ１０３、Ｉ／Ｏ１０４、ＰＣカードスロット部１０５及び記憶装置１０６を備えている。そして、この記憶装置１０６には、各端末装置へ配布される端末プログラム１０７が格納されている。
また、第一機種の端末装置（端末１）１３０は、ＣＰＵ１３１、ＲＡＭ１３２、ＲＯＭ１３３、Ｉ／Ｏパターン１３４、ＰＣカードスロット部１３５及び記憶装置１３６を備えている。そして、この記憶装置１３６には、上位装置１００から配布された端末プログラム１３７が格納されている。
また、第二機種の端末装置（端末２）１４０は、ＣＰＵ１４１、ＲＡＭ１４２、ＲＯＭ１４３、Ｉ／Ｏパターン１４４、ＰＣカードスロット部１４５及び記憶装置１４６を備えている。そして、この記憶装置１４６には、上位装置１００から配布された端末プログラム１４７が格納されている。
【００２３】
さらに、ここで、図３に、上位装置１００と、各端末装置１３０及び１４０の装置記憶部１０６、１３６及び１４６の内部の端末プログラム１０７、１３７及び１４７としての内部のソフトウエアの概念図を示す。
図３に示すように、上位装置１００の装置記憶部（上位装置格納エリア）１０６には、機種識別情報３０１、バージョン情報３０７、アプリケーションプログラム（ＡＰ）３０２、プログラム交換を実行させるミドルウエア（ＭＷ）、ドライバやレジストリ等のオペレーティングシステム（ＯＳ）３０４、端末１用のドライバやレジストリ等のモジュール３０５、及び、端末２用のドライバやレジストリ等のモジュール３０６が格納されている。
このように、上位装置１００は、第一及び第二の各機種にそれぞれ対応した制御プログラムのモジュール３０５及び３０６を有している。
【００２４】
また、図３に示すように、第一機種の端末装置１３０の装置記憶部（端末１格納エリア）１３６には、機種識別情報３２１、バージョン情報３２７、アプリケーションプログラム（ＡＰ）３０２、プログラム交換を実行させるミドルウエア（ＭＷ）、ドライバやレジストリ等のオペレーティングシステム（ＯＳ）３０４、及び、端末１用のドライバやレジストリ等のモジュール３０５が格納されている。
そして、機種識別情報３２１は、この端末装置１３０の機種が、第一機種であることを示している。
【００２５】
また、図３に示すように、第二機種の端末装置１４０の装置記憶部（端末２格納エリア）１４６には、機種識別情報３４１、バージョン情報３４７、アプリケーションプログラム（ＡＰ）３０２、プログラム交換を実行させるミドルウエア（ＭＷ）、ドライバやレジストリ等のオペレーティングシステム（ＯＳ）３０４、及び、端末２用のドライバやレジストリ等のモジュール３０６が格納されている。
そして、機種識別情報３４１は、この端末装置１４０の機種が、第二機種であることを示している。
【００２６】
次に、図４を参照して、上位装置１００から各端末装置１３０及び１４０へそれぞれ新しい更新プログラムを配布し、各端末装置１３０及び１４０のプログラム交換を行う例について説明する。
図４は、第一実施形態の一斉プログラム交換システムにおける交換動作を説明するためのフローチャートである。図４に示すように、まず、データ交換処理を行う（Ｓ４０１）。
【００２７】
このデータ交換処理にあたっては、上位装置１００から更新プログラムとともに各モジュールを各端末装置１３０及び１４０へ一斉に配布する。すなわち、上位装置１００のＰＣカードスロット部１０５に、ストレージカード１６０（図１参照。）を差込み、装置記憶部１０６内の端末プログラム１０７を、このストレージカード１６０にコピーする。そして、このストレージカード１６０を、端末装置１３０及び１４０のＰＣカードスロット部１３５及び１４５にそれぞれ差し込むことにより、各端末装置１３０及び１４０は、上記装置１００とのデータ交換処理開始状態となる（Ｓ４０１）。
【００２８】
次に、各端末１３０及び１４０のＭＷ３０３に含まれるプログラム交換用プログラムが、ストレージカード１６０のＳＣバージョン情報３０７と、端末装置のバージョン情報３２７及び３４７とをそれぞれ比較する（Ｓ４０２）。
なお、このプログラム交換用プログラムは、上述したように、任意好適な記憶媒体により各端末装置１３０及び１４０へ提供される。
【００２９】
比較の結果、ＳＣバージョン情報３０７の示すバージョンと、バージョン応報３２７及び３４７の示すバージョンとが等しい場合には、処理を終了する（Ｓ４２０）。
一方、比較の結果、ＳＣバージョン情報３０７の示すバージョンと、バージョン応報３２７及び３４７の示すバージョンとが異なる場合には、プログラム交換が開始される（Ｓ４０３）。
プログラム交換が開始されると、ストレージカード１６０から、ＭＷ、ＡＰ及びＯＳが各端末１３０及び１４０にコピーされる（Ｓ４１０）。
【００３０】
次に、各端末装置１３０及び１４０内で、プログラム交換実行プログラムが、当該端末装置の機種別情報３２１及び３４１を参照して、各端末装置の機種を識別する（Ｓ４１１）。
識別の結果、第一機種と識別された場合には、端末装置１３０は、端末１用のドライバ及びレジストリ３０５をコピーする（Ｓ４１２）。
一方、識別の結果、第二機種と識別された場合には、端末装置１４０は、端末２用ドライバ及びレジスト３０６をコピーする（Ｓ４１３）。
このようにして、各端末装置１３０及び１４０は、当該端末装置の有する機種情報に対応したモジュールを読込む。
【００３１】
次に、モジュール読込み後、プログラム交換を行う（Ｓ４１５）。
各端末装置は、それぞれ機種に対応したモジュールを得ているので、それぞれのモジュールにより一斉にプログラム交換を実施することができる。
そして、プログラム交換後データ交換処理を終了する（Ｓ４２０）。
このようにレジストカードを介して、各端末装置１３０及び１４０において当該端末装置の機種情報にそれぞれ対応したモジュールを読込むので、ドライバの互いに異なる複数機種の端末装置に対して、容易に一斉プログラム交換を行うことができる。
【００３２】
［第二実施形態］
次に、図５を参照して、本発明の第二実施形態について説明する。
第二実施形態では、通信回線を介してプログラムを配布する。このため、図５に示すように、上位装置１００及び各端末装置１３０及び１４０は、ＰＣカードスロット部の代わりに、通信制御部１０９、１３９及び１４９を備えている。
なお、第二実施形態では、第一実施形態と同一の構成成分については、同一の符号を付して、その詳細な説明を省略する。
なお、通信回線には、例えば、無線や赤外線ＬＡＮが含まれる。
【００３３】
次に、図６を参照して、第二実施形態の上位装置１００から各端末装置１３０及び１４０へそれぞれ新しい更新プログラムを配布し、各端末装置１３０及び１４０のプログラム交換を行う例について説明する。
図６は、第二実施形態の一斉プログラム交換システムにおける交換動作を説明するためのフローチャートである。図６に示すように、ここでは、まず、上位装置１００の通信制御部１０９と、端末装置１３０及び１４０の通信制御部１３９及び１４９とをそれぞれＬＡＮケーブルで接続し、上位装置１００と端末装置１３０及び１４０とを通信可能状態として通信を開始する（Ｓ５０１）。
【００３４】
次に、各端末１３０及び１４０のＭＷ３０３に含まれるプログラム交換用プログラムが、上位装置１００のＳＣバージョン情報３０７と、端末装置のバージョン情報３２７及び３４７とをそれぞれ比較する（Ｓ５０２）。
比較の結果、ＳＣバージョン情報３０７の示すバージョンと、バージョン応報３２７及び３４７の示すバージョンとが等しい場合には、処理を終了する（Ｓ５２０）。
一方、比較の結果、ＳＣバージョン情報３０７の示すバージョンと、バージョン応報３２７及び３４７の示すバージョンとが異なる場合には、プログラム交換が開始される（Ｓ５０３）。
プログラム交換が開始されると、上位装置１００から、ＭＷ、ＡＰ及びＯＳが各端末１３０及び１４０にコピーされる（Ｓ５１０）。
【００３５】
次に、各端末装置１３０及び１４０内で、プログラム交換実行プログラムが、当該端末装置の機種別情報３２１及び３４１を参照して、各端末装置の機種を識別する（Ｓ５１１）。
識別の結果、第一機種と識別された場合には、端末装置１３０は、端末１用のドライバ及びレジストリ３０５をコピーする（Ｓ５１２）。
一方、識別の結果、第二機種と識別された場合には、端末装置１４０は、端末２用ドライバ及びレジスト３０６をコピーする（Ｓ５１３）。
このようにして、各端末装置１３０及び１４０は、当該端末装置の有する機種情報に対応したモジュールを読込む。
【００３６】
次に、モジュール読込み後、プログラム交換を行う（Ｓ５１５）。
各端末装置は、それぞれ機種に対応したモジュールを得ているので、それぞれのモジュールにより一斉にプログラム交換を実施することができる。
そして、プログラム交換後データ交換処理を終了する（Ｓ５２０）。
このように通信回線を介して、各端末装置１３０及び１４０において当該端末装置の機種情報にそれぞれ対応したモジュールを読込むので、ドライバの互いに異なる複数機種の端末装置に対して、容易に一斉プログラム交換を行うことができる。
【００３７】
［第三実施形態］
次に、本発明の第三実施形態について説明する。
一般に、大規模システムにおいては、大多数の端末装置が初期に集中して導入され、少数の端末装置が後から追加導入される場合が多い。このため、初期導入の端末装置とドライバ互換性のない追加導入の端末装置は、少数となることが多い。
そこで、第三実施形態では、初期導入の端末装置に対応するモジュールを全ての端末装置に読込ませた後、追加導入に端末装置に対してだけ再度対応するモジュールを上書きする。以下、具体的に説明する。
【００３８】
第三実施形態におけるシステム構成は、いったん全端末に第一基主要のモジュールを読込ませるので、第一機種の端末装置１３０が、機種情報を有する必要がなく、第二機種の端末装置１４０のみに機種情報を有している（図示せず）。
なお、第三実施形態のシステム構成は、第一機種の端末装置１３０が機種情報を有しない点を除いては、上述した第二実施形態と同一であるので、その詳細な説明を省略し、図７を参照して、一斉プログラム交換方法の一例について説明する。
【００３９】
まず、上述の第二実施形態と同様にして、上位装置１００と端末装置１３０及び１４０とを通信可能状態として通信を開始する（Ｓ６０１）。
次に、第二実施形態と同様にして、上位装置１００のＳＣバージョン情報３０７と、端末装置のバージョン情報３２７及び３４７とをそれぞれ比較する（Ｓ６０２）。比較の結果、バージョンどうしが等しい場合には、処理を終了する（Ｓ６２０）。一方、比較の結果、バージョンどうしが異なる場合には、プログラム交換が開始される（Ｓ６０３）。
【００４０】
プログラム交換が開始されると、各端末装置１３０及び１４０は、当該端末装置の有する機種情報に対応したモジュールを読込むにあたり、特定機種に対応するモジュールをいったん読込む。すなわち、上位装置１００から、ＭＷ、ＡＰ及びＯＳに加えて、端末１用のドライバ及びレジストリが各端末１３０及び１４０にコピーされる（Ｓ６０４）。
【００４１】
次に、各端末装置１３０及び１４０内で、ＭＷのプログラム交換実行プログラムが、当該端末装置の機種別情報３２１及び３４１を第一機種と照合して、各端末装置の機種を識別する（Ｓ６０５）。
識別の結果、第一機種と識別された場合には、端末装置１３０は、既に読込んだ端末１用のドライバ及びレジストリによりプログラム交換を実施する（Ｓ６０８）。
【００４２】
一方、識別の結果、第二機種と識別された場合には、端末装置１４０は、上位装置１００から、さらに、端末２用ドライバ及びレジストをコピーして、既に読込んでいた端末１用ドライバ及びレジストに上書きする（Ｓ６０６）。
このようにして、第二機種の端末装置１４０も、機種に対応したモジュールを読込むことができる。
【００４３】
次に、モジュール読込み後、第二機種の端末装置１４０もプログラム交換を行う（Ｓ６０８）。
各端末装置は、それぞれ機種に対応したモジュールを得ているので、それぞれのモジュールにより一斉にプログラム交換を実施することができる。
そして、プログラム交換後データ交換処理を終了する（Ｓ６２０）。
【００４４】
上述した実施の形態においては、本発明を特定の条件で構成した例について説明したが、本発明は、種々の変更を行うことができる。例えば、上述した実施の形態においては、端末の機種を第一及び第二の二機種とした例について説明したが、本発明では、機種の種類は二種類に限定されない。したがって、本発明は、例えば、三種類以上の機種についても適用することができる。
【００４５】
【発明の効果】
以上、詳細に説明したように、本発明によれば、各端末装置において当該端末装置の機種情報にそれぞれ対応したモジュールを読込むので、ドライバの互いに異なる複数機種の端末装置に対して、容易に一斉プログラム交換を行うことができる。
【図面の簡単な説明】
【図１】第一実施形態の一斉プログラム交換システムの構成例を説明するためのブロック図である。
【図２】第一実施形態の一斉プログラム交換システムを構成する上位装置及び端末装置の構成を説明するためのブロック図である。
【図３】第一実施形態の一斉プログラム交換システムにおける装置記憶部内のソフトウエアの概念図である。
【図４】第一実施形態の一斉プログラム交換システムにおける交換動作を説明するためのフローチャートである。
【図５】第二実施形態の一斉プログラム交換システムを構成する上位装置及び端末装置の構成を説明するためのブロック図である。
【図６】第二実施形態の一斉プログラム交換システムにおける交換動作を説明するためのフローチャートである。
【図７】第三実施形態の一斉プログラム交換システムにおける交換動作を説明するためのフローチャートである。
【符号の説明】
１００  上位装置
１０１、１３１、１４１  ＣＰＵ
１０２、１３２、１４２  ＲＡＭ
１０３、１３３、１４３  ＲＯＭ
１０４、１３４、１４４  Ｉ／Ｏ
１０５、１３５、１４５  ＰＣカードスロット部
１０６、１３６、１４６  装置記憶部
１０７、１３７、１４７  端末プログラム
１０９、１３９、１４９  通信制御部
１３０  第一機種の端末装置（端末１）
１４０  第二機種の端末装置（端末２）
１６０  ストレージカード
【図１】
0003570918.tif 000002
【図２】
0003570918.tif 000003
【図３】
0003570918.tif 000004
【図４】
0003570918.tif 000005
【図５】
0003570918.tif 000006
【図６】
0003570918.tif 000007
【図７】
0003570918.tif 000008