JP2008033445A - プログラム配布装置およびプログラム配布システム - Google Patents

プログラム配布装置およびプログラム配布システム Download PDF

Info

Publication number
JP2008033445A
JP2008033445A JP2006203789A JP2006203789A JP2008033445A JP 2008033445 A JP2008033445 A JP 2008033445A JP 2006203789 A JP2006203789 A JP 2006203789A JP 2006203789 A JP2006203789 A JP 2006203789A JP 2008033445 A JP2008033445 A JP 2008033445A
Authority
JP
Japan
Prior art keywords
firmware
program
distribution
terminal
terminals
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.)
Granted
Application number
JP2006203789A
Other languages
English (en)
Other versions
JP5023596B2 (ja
Inventor
Tatsuhiko Ushiki
竜彦 牛木
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2006203789A priority Critical patent/JP5023596B2/ja
Priority to US11/606,335 priority patent/US7693969B2/en
Publication of JP2008033445A publication Critical patent/JP2008033445A/ja
Application granted granted Critical
Publication of JP5023596B2 publication Critical patent/JP5023596B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 

Abstract

【課題】ダウンロードスケジュールの重複による問題を低コストで解消すること。
【解決手段】プログラム配布システムでは、端末100a、100b、100c、100d、100eの全てがプログラム配布サーバ50からファームウェアをダウンロードするのではなく、一部の端末(例えば、端末100a、100c)が他の端末の代わりにファームウェアをダウンロードしファームウェアを組み込む。そして、一部の端末から他の端末(例えば、端末100b、100d、100e)に対してファームウェアを配布する。
【選択図】 図1

Description

この発明は、複数の端末にプログラムを配布するプログラム配布装置およびプログラム配布システムに関し、特に、ダウンロードスケジュールの重複による問題を低コストで解消することができるプログラム配布装置およびプログラム配布システムに関するものである。
近年、インターネット環境の普及に伴って、インターネットを介してファームウェアのダウンロードを行うという方法がとられるようになった。また、複数の装置がファームウェアのダウンロードを一度に開始するとインターネット帯域が圧迫されると共にダウンロード先のサーバ装置にかかる負担が大きくなるため、複数の装置でファームウェアをダウンロードする場合には、ダウンロードスケジュールが重ならないようなシステムを構築し、運用している。
しかし、ファームウェアサイズの増加に伴い、装置一台分のファームウェアをダウンロードする時間が延びたことで各装置のダウンロードスケジュールが重複してしまうという問題があった。これにより、インターネット帯域が圧迫されると共にダウンロード先のサーバ装置にかかる負担が増し、迅速にファームウェアをダウンロードすることができず、ファームウェアダウンロード処理がタイムアウトし、ファームウェアのダウンロードにかかる処理が失敗してしまう場合があった。
そこで、特許文献1では、システム内にファームウェアをダウンロードする専門のサーバ装置を設け、このサーバ装置が代表してファームウェアをダウンロードし、ダウンロードしたファームウェアをシステム内の他の装置に配布することで上記したようなダウンロードスケジュール重複による問題を解消していた。
特開2001−216150号公報
しかしながら、上述した従来の技術では、ファームウェアの更新を行う装置の他に、ファームウェアのダウンロードのみを行う専用のサーバ装置をシステム内に設置する必要があったため、コストが高くなってしまうという問題があった。
すなわち、ダウンロードスケジュールの重複による問題を低コストで解消することが極めて重要な課題となっている。
この発明は、上述した従来技術による問題点を解消するためになされたものであり、コストを低くすることができるプログラム配布装置およびプログラム配布システムを提供することを目的とする。
上述した課題を解決し、目的を達成するため、本発明は、ネットワークを介してプログラム配布サーバおよび複数の端末と接続されたプログラム配布装置であって、前記複数の端末および自プログラム配布装置に組み込むプログラムを前記プログラム配布サーバから前記複数の端末に代わって取得する取得手段と、前記取得手段において取得したプログラムを前記複数の端末に配布する配布手段と、を備えたことを特徴とする。
また、本発明は、上記発明において、前記配布手段は、前記プログラムを配布できない場合に、当該プログラムの新たな配布元となる端末のアドレス情報を前記複数の端末に通知することを特徴とする。
また、本発明は、上記発明において、前記配布手段は、前記プログラムを配布する端末の数に上限値を設け、前記プログラムを配布する端末の数が前記上限値を上回った後に他の端末からプログラムの配布要求を受け付けた場合には、前記プログラムの新たな配布元となる端末のアドレス情報を通知することを特徴とする。
また、本発明は、上記発明において、前記配布手段は、端末に対する前記プログラムの配布が完了した後に、他の端末から前記プログラムの配布要求を受け付けた場合に、前記プログラムの配布が完了した端末を前記プログラムの新たな配布元として配布要求元の端末に通知することを特徴とする。
また、本発明は、ネットワークを介してプログラム配布サーバおよび複数の端末が接続されたプログラム配布システムであって、前記複数の端末の内の一端末であり、当該複数の端末に組み込むプログラムを前記複数の端末に代わって取得する端末の情報であるプログラム取得端末情報を記録する記録手段と、前記プログラム配布サーバが前記プログラムの配布要求を受け付けた場合に、前記記録手段に記録されたプログラム取得端末情報に基づいて、前記プログラムの配布元となる端末のアドレス情報を通知する通知手段と、を備えたことを特徴とする。
本発明によれば、複数の端末および自プログラム配布装置に組み込むプログラムを複数の端末に代わって取得し、取得したプログラムを複数の端末に配布するので、ダウンロードスケジュールの重複による問題を低コストで解消することができる。
また、本発明によれば、プログラムを配布できない場合に、当該プログラムの新たな配布元となる端末のアドレス情報を複数の端末に通知するので、プログラムの配布を滞りなく実行することできる。
また、本発明によれば、プログラムを配布する端末の数に上限値を設け、プログラムを配布する端末の数が上限値を上回った後に他の端末からプログラムの配布要求を受け付けた場合には、プログラムの新たな配布元となる端末のアドレス情報を通知するので、特定の端末のみに負荷が集中することを防止することができる。
また、本発明によれば、端末に対するプログラムの配布が完了した後に、他の端末からプログラムの配布要求を受け付けた場合に、プログラムの配布が完了した端末をプログラムの新たな配布元として配布要求元の端末に通知するので、プログラムの配布処理にかかる負荷を配分し、効率よくプログラムの配布を実行することができる。
また、本発明によれば、複数の端末に含まれ、当該複数の端末に組み込むプログラムを前記複数の端末に代わって取得する端末の情報であるプログラム取得端末情報を記録し、プログラムに対する配布要求を受け付けた場合に、プログラム取得端末情報に基づいて、プログラムの配布元となる端末のアドレス情報を通知するので、ネットワーク回線の通信負荷を軽減させることができると共に、プログラムを配布する大元のサーバ装置に対する負荷を軽減させることができる。
以下に添付図面を参照して、この発明に係るプログラム配布装置およびプログラム配布システムの好適な実施の形態を詳細に説明する。
まず、本実施例1にかかるプログラム配布システムの概要および特徴について説明する。図1は、本実施例1にかかるプログラム配布システムの概要および特徴を説明するための説明図である。同図に示すように、本実施例1にかかるプログラム配布システムでは、端末100a、100b、100c、100d、100eの全てがプログラム配布サーバ50(プログラム配布サーバ50は、ファームウェアをクライアント端末に配布するサーバ装置である)からファームウェアを取得(ダウンロード)するのではなく、一部の端末が他の端末の代わりにファームウェアを取得する。
図1に示す例では、端末100aおよび端末100bがグループAを構成し、端末100aが端末100bの代わりにファームウェアをプログラム配布サーバ50からルータ10、20を介して取得し、取得したファームウェアを端末100a自体に組み込むと共に、このファームウェアを端末100bに配布する。
また、端末100c、端末100dおよび端末100eがグループBを構成し、端末100cが端末100dおよび端末100eの代わりにファームウェアをプログラム配布サーバ50からルータ10、20を介して取得し、取得したファームウェアを端末100c自体に組み込むと共に、このファームウェアを端末100dおよび端末100eに配布する。
このように、本実施例1にかかるプログラム配布システムでは、一部の端末が他の端末の代わりにプログラム配布サーバ50からファームウェアを取得し、他の端末にファームウェアを配布するので、プログラム配布サーバ50、ルータ10、20に対する処理負荷を軽減させることができると共に、ネットワーク回線の通信負荷を軽減させることができる。
また、本実施例にかかるプログラム配布システムは、ファームウェアのダウンロードのみを行うサーバ装置を設置する必要が無く、顧客サイト内の装置自体によってファームウェアのダウンロードが行われるのでこのプログラム配布システムを低コストで構築することができる。
なお、図1では一例として、端末100aおよび端末100cがプログラム配布サーバ50からファームウェアを取得し、他の端末100b、100d、100eにファームウェアを配布していたが、これに限定されるものではなく、端末100b、100dあるいは100eが他の端末の代わりにファームウェアを取得してもよい。
つぎに、図1に示したプログラム配布サーバ50の構成について説明する。図2は、本実施例1にかかるプログラム配布サーバ50の構成を示す機能ブロック図である。同図に示すように、このプログラム配布サーバ50は、入力部51と、出力部52と、入出力制御IF部53と、通信制御IF部54と、記憶部55と、制御部56とを備えて構成される。
このうち、入力部51は、各種の情報を入力する入力手段であり、キーボードやマウス、マイクなどによって構成される。なお、後述するモニタ(出力部52)も、マウスと協働してポインティングディバイス機能を実現する。
出力部52は、各種の情報を出力する出力手段であり、モニタ(若しくはディスプレイ、タッチパネルなど)やスピーカなどによって構成される。そして、入出力制御IF部53はこれら入力部51および出力部52によるデータの入出力を制御する手段であり、通信制御IF部54は、主に端末100a〜端末100eとの間における通信を制御する手段である。
記憶部55は、制御部56による各種の処理に必要なデータおよびプログラムを記憶する記憶手段(格納手段)であり、特に本発明に密接に関連するものとしては、図2に示すように、ファームウェアデータ55aとファームウェア版数データ55bとを備える。
ここで、ファームウェアデータ55aは、ファームウェアを識別する情報とファームウェアのバイナリデータとを関連付けて記憶したデータであり、ファームウェア版数データ55bは、最新のファームウェアの版数を記録したデータである。
制御部56は、各種の処理手順を規定したプログラムや制御データを格納するための内部メモリを有し、これらによって種々の処理を実行する制御手段であり、特に本発明に密接に関連するものとしては、図2に示すように、ファームウェア配布処理部56aを備える。
このファームウェア配布処理部56aは、ファームウェアの配布要求を受け付けた場合に、配布要求元の端末にファームウェアを配布する処理部である。具体的に、このファームウェア配布処理部56aは、配布要求元の端末に組み込まれたファームウェアの版数のデータを含んだ配布要求を取得し、取得したファームウェアの版数とファームウェア版数データ55bとを比較し、ファームウェアが更新されているか否かを判定する。そして、ファームウェアが更新されている場合に、更新されたファームウェアをファームウェアデータ55aから検索し、検索したファームウェアを配布要求元の端末に配布する。
つぎに、図1に示した端末100aの構成について説明する(端末100b〜端末100eは、端末100aと同様の構成であるため説明を省略する)。図3は、本実施例1にかかる端末100aの構成を示す機能ブロック図である。同図に示すように、この端末100aは、入力部101と、出力部102と、入出力制御IF部103と、通信制御IF部104と、記憶部105と、制御部106とを備えて構成される。
このうち、入力部101は、各種の情報を入力する入力手段であり、キーボードやマウス、マイクなどによって構成される。なお、後述するモニタ(出力部102)も、マウスと協働してポインティングディバイス機能を実現する。
出力部102は、各種の情報を出力する出力手段であり、モニタ(若しくはディスプレイ、タッチパネルなど)やスピーカなどによって構成される。そして、入出力制御IF部103はこれら入力部101および出力部102によるデータの入出力を制御する手段であり、通信制御IF部104は、主にプログラム配布サーバ50と、端末100b〜端末100eとの間における通信を制御する手段である。
記憶部105は、制御部106による各種の処理に必要なデータおよびプログラムを記憶する記憶手段(格納手段)であり、特に、本発明に密接に関連するものとしては、図3に示すように、ファームウェア取得先テーブル105a、ファームウェアデータ105b、ファームウェア版数管理テーブル105cを備える。
ここで、ファームウェア取得先テーブル105aは、プログラム配布サーバ50のアドレス情報とファームウェアの配布元となる端末(例えば、端末100c)のアドレス情報とを記憶したデータである。なお、このファームウェア取得先テーブル105aは、ファームウェアの配布元が変更されるたびに変更される。
ファームウェアデータ105bは、端末100aがプログラム配布サーバ50あるいはファームウェアの配布元となる端末からダウンロードするファームウェアを記憶したデータである。ファームウェア版数管理テーブル105cは、端末100aに組み込まれた各ファームウェアの版数を記憶したデータである。
制御部106は、各種の処理手順を規定したプログラムや制御データを格納するための内部メモリを有し、これらによって種々の処理を実行する制御手段であり、特に本発明に密接に関連するものとしては、図3に示すように、ファームウェア取得処理部106aと、ファームウェア組込処理部106bと、ファームウェア配布処理部106cとを備える。
ファームウェア取得処理部106aは、端末100aがサーバの役割をする場合に、プログラム配布サーバ50にアクセスしてファームウェアを取得する。また、ファームウェア取得処理部106aは、端末100aがクライアントの役割をする場合に、ファームウェアの配布元となる端末からファームウェアを取得する。以下において、端末100aがサーバの役割をする場合のファームウェア取得処理部106aの処理を説明し、その後に、端末100aがクライアントの役割をする場合のファームウェア取得処理部106aの処理を説明する。なお、端末100aがサーバの役割をするか、クライアントの役割をするかは、ユーザが入力部101を介して設定するものとする。
まず、端末100aがサーバの役割をする場合、ファームウェア取得処理部106aは、ファームウェア版数管理テーブル105cに記憶されたファームウェアの版数のデータ(以下、版数データ)をプログラム配布サーバ50に送信し、ファームウェアが更新されているか否かの応答を受け付ける。そして、ファームウェア取得処理部106aは、ファームウェアが更新されている旨の情報をプログラム配布サーバ50から取得した場合に、更新されたファームウェアを取得してファームウェアデータ105bに記憶させる。
なお、ファームウェア取得処理部106aは、プログラム配布サーバ50からファームウェアを取得できなかった場合(ファームウェアの取得に失敗した場合)に、ファームウェアの取得を失敗した旨の情報をファームウェア配布処理部106cに通知する。
一方、端末100aがクライアントの役割をする場合、ファームウェア取得処理部106aは、ファームウェア取得先テーブル105aを参照し、ファームウェアの配布元となる端末からファームウェアを取得し、取得したファームウェアをファームウェアデータ105bに記憶させる。
なお、ファームウェア取得処理部106aは、ファームウェアの配布元となる端末から新たな配布先のアドレス情報を取得した場合には、取得したアドレス情報をファームウェア取得先テーブル105aに記録すると共に、このアドレス情報に対応する配布元の端末からファームウェアを取得する。
例えば、ファームウェア取得処理部106aが、端末100cから新たなファームウェアの配布元となる端末100eのアドレス情報を取得した場合には、このアドレス情報をファームウェア取得先テーブル105aに登録すると共に、端末100eからファームウェアを取得する。
ファームウェア組込処理部106bは、ファームウェア取得処理部106aによって取得されたファームウェアデータ105bからファームウェアを取得し、取得したファームウェアを端末100aに組み込む処理部である。
ファームウェア配布処理部106cは、ファームウェアの配布要求を受け付けた場合に、配布要求元の端末にファームウェアを配布する処理部である。例えば、ファームウェア配布処理部106cは、端末100bからファームウェアの配布要求を受け付けた場合に、ファームウェアデータ105bから配布対象となるファームウェアを取得し、取得したファームウェアを端末100bに配布する。
また、ファームウェア配布処理部106cは、ファームウェアの取得を失敗した旨の情報をファームウェア取得処理部106aから取得した後にファームウェアの配布要求を受け付けた場合には、ファームウェアの新たな配布元となる端末あるいはプログラム配布サーバのアドレス情報を配布要求元に通知する。
例えば、ファームウェア取得処理部106aがファームウェアの取得を失敗した後にファームウェア配布処理部106cが端末100bからファームウェアの配布要求を取得した場合には、ファームウェア取得先テーブル105aを参照して、プログラム配布サーバ50あるいは端末100c(ファームウェアをダウンロードする端末)のアドレス情報を端末100bに通知する。なお、ファームウェア配布処理部106cがプログラム配布サーバ50のアドレス情報を端末100bに通知するか端末100cのアドレス情報を端末100bに通知するかは予め管理者が設定しておく(あるいは、プログラム配布サーバ50および端末100cの負荷状況を監視して、動的に優先順位を変更してもよい。)。
また、ファームウェア配布処理部106cは、ファームウェアを配布する端末の数に上限値を設け、この上限値を超える数の端末からファームウェアの配布要求を受け付けた場合には、新たなファームウェアの配布元を端末に通知する。
例えば、ファームウェア配布処理部106cに設定された上限値が5で、ファームウェア配布処理部106cが既に5台の端末にファームウェアを配布している状態で、端末100bからファームウェアの配布要求を取得した場合には、ファームウェア配布処理部106cは、ファームウェア取得先テーブル105aを参照して、新たなプログラム配布元となる端末の情報、すなわち、プログラム配布サーバ50あるいは端末100c(ファームウェアをダウンロードする端末)のアドレス情報を端末100bに通知する。なお、ファームウェア配布処理部106cがプログラム配布サーバ50のアドレス情報を端末100bに通知するか端末100cのアドレス情報を端末100bに通知するかは予め管理者が設定しておく(あるいは、プログラム配布サーバ50および端末100cの負荷状況を監視して、動的に優先順位を変更してもよい。)。
つぎに、本実施例1にかかるプログラム配布システムの処理手順について説明する。図4は、本実施例1にかかるプログラム配布システムの処理手順を示すフローチャートである。なお、図4では説明の便宜上、プログラム配布サーバ50、端末(サーバの役割を担っているものとする)100a、端末(クライアントの役割を担っているものとする)100bを用いて説明する。
図4に示すように、端末(サーバ)100aがプログラム配布サーバ50にファームウェアの版数データを送信し(ステップS101)、プログラム配布サーバ50は、版数データとファームウェア版数データ55bとを比較して更新対象となるファームウェアを判定する(ステップS102)。
そして、プログラム配布サーバ50は、更新対象となるファームウェアの識別情報を端末(サーバ)100aに送信し(ステップS103)、端末(サーバ)100aは、識別情報に対応するファームウェアをプログラム配布サーバ50に要求し(ステップS104)、プログラム配布サーバ50は、識別情報に対応するファームウェアをファームウェアデータ55aから検索し、ファームウェアを端末(サーバ)100aに送信する(ステップS105)。
続いて、端末(サーバ)100aは、ファームウェアをプログラム配布サーバ50から取得して、取得したファームウェアを組み込み(ステップS106)、端末(クライアント)100bが端末(サーバ)100aに対してファームウェアを要求し(ステップS107)、端末(サーバ)100aはファームウェアデータ105bに記憶されたファームウェアを端末(クライアント)100bに送信し(ステップS108)、端末(クライアント)100bが取得したファームウェアを組み込む(ステップS109)。
ところで、端末(サーバ)100aは、プログラム配布サーバ50からファームウェアを取得する処理を失敗した場合には、ステップS108において、ファームウェアの新たな配布元となる装置のアドレス情報を端末(クライアント)100bに送信する。
また、端末(サーバ)100aは、同時にファームウェアを配布する端末の数が上限値に達している状態で、端末(クライアント)100bからファームウェアの配布要求を取得した場合には、ステップS108において、ファームウェアの新たな配布元となる装置のアドレス情報を端末(クライアント)100bに送信する。
このように、複数の端末全てがプログラム配布サーバ50からファームウェアを取得するのではなく、一部の端末が他の端末に代わってファームウェアを取得するのでプログラム配布サーバ50、ルータ10、20に対する負荷を軽減させることができる。
上述してきたように、本実施例1にかかるプログラム配布システムは、端末100a、100b、100c、100d、100eの全てがプログラム配布サーバ50からファームウェアを取得するのではなく、一部の端末(例えば、端末100a、100c)が他の端末(例えば、端末100b、100d、100e)の代わりにファームウェアを取得するので、プログラム配布サーバ50、ルータ10、20に対する負荷を軽減させることができると共に、インターネット回線の通信負荷を軽減させることができる。
また、本実施例1にかかるプログラム配布システムは、ファームウェアを取得する専用の装置を顧客サイト内に設置することなく、ファームウェアを組み込む複数の端末の一部がプログラム配布サーバ50からファームウェアを取得するので、プログラム配布システムにかかるコストを削減することができる。
つぎに、本実施例2にかかるプログラム配布システムの概要および特徴について説明する。図5は、本実施例2にかかるプログラム配布システムの概要および特徴を説明するための説明図である。同図に示すように、本実施例2にかかるプログラム配布システムでは、実施例1において説明したプログラム配布システムのように、端末300a、300b、300c、300d、300eの全てがプログラム配布サーバ60(プログラム配布サーバ60は、図1において説明したプログラム配布サーバ50と同様であるため説明を省略する)からファームウェアをダウンロードするのではなく、一部の端末が他の端末の代わりにファームウェアを取得する。
また、本実施例2にかかるプログラム配布システムでは、ファームウェアの配布が完了した場合に、ファームウェアの配布が完了した配布先の端末が新たにファームウェアの配布を開始する。図5に示す例では、グループBにおいて、端末300aが端末300b、300cの代わりにファームウェアをプログラム配布サーバ60から取得し、取得したファームウェアを端末300b、300cに配布する。そして、端末300bに対するファームウェアの配布が完了した場合には、端末300bが端末300aに代わってファームウェアを端末300cに配布する。
このように、本実施例2にかかるプログラム配布システムでは、端末に対するファームウェアの配布が完了した場合に、配布が完了した配布先の端末が新たなファームウェアの配布元となり、他の端末にファームウェアを配布するので、顧客サイト内の各端末に対する負荷を分散し、効率よくファームウェアを配布することができる。
つぎに、図5に示した端末300aの構成について説明する(端末300b〜300eは、端末300aと同様の構成であるため説明を省略する)。図6は、本実施例2にかかる端末300aの構成を示す機能ブロック図である。同図に示すように、この端末300aは、入力部301と、出力部302と、入出力制御IF部303と、通信制御IF部304と、記憶部305と、制御部306とを備えて構成される。
このうち、入力部301は、各種の情報を入力する入力手段であり、キーボードやマウス、マイクなどによって構成される。なお、後述するモニタ(出力部302)も、マウスと協働してポインティングディバイス機能を実現する。
出力部302は、各種の情報を出力する出力手段であり、モニタ(若しくはディスプレイ、タッチパネルなど)やスピーカなどによって構成される。そして、入出力制御IF部303はこれら入力部301および出力部302によるデータの入出力を制御する手段であり、通信制御IF部304は、主にプログラム配布サーバ60と、端末300bと、端末300cとの間における通信を制御する手段である。
記憶部305は、制御部306による各種の処理に必要なデータおよびプログラムを記憶する記憶手段(格納手段)であり、特に、本発明に密接に関連するものとしては、図6に示すように、ファームウェア取得先テーブル305aと、ファームウェアデータ305bと、ファームウェア版数管理テーブル305cとを備える。
ここで、ファームウェア取得先テーブル305aは、プログラム配布サーバ60のアドレス情報と、端末300b、300c、300d、300eのアドレス情報を記憶したデータである。
ファームウェアデータ305bは、端末300aがプログラム配布サーバ60から取得するファームウェアを記憶したデータである。ファームウェア版数管理テーブル305cは、端末300aに組み込まれた各ファームウェアの版数を記憶したデータである。
制御部306は、各種の処理手順を規定したプログラムや制御データを格納するための内部メモリを有し、これらによって種々の処理を実行する制御手段であり、特に本発明に密接に関連するものとしては、図6に示すように、ファームウェア取得処理部306aと、ファームウェア組込処理部306bと、ファームウェア配布処理部306cと、ファームウェア取得先通知部306dとを備える。
ファームウェア取得処理部306aは、プログラム配布サーバ60にアクセスしてファームウェアを取得する処理部である。具体的に、このファームウェア取得処理部306aは、ファームウェア版数管理テーブル305cに記憶されたファームウェアの版数のデータ(以下、版数データ)をプログラム配布サーバ60に送信し、ファームウェアが更新されているか否かの応答を受け付ける。そして、ファームウェア取得処理部306aは、ファームウェアが更新されている旨の情報をプログラム配布サーバ60から取得した場合に、更新されたファームウェアを取得してファームウェアデータ305bに記憶させる。
ファームウェア組込処理部306bは、ファームウェア取得処理部306aによって取得されたファームウェアデータ305bからファームウェアを取得し、取得したファームウェアを端末300aに組み込む処理部である。ファームウェア組込処理部306bは、ファームウェアを組み込んだ場合に、ファームウェア版数管理テーブル305cの版数を更新する。
ファームウェア配布処理部306cは、ファームウェア配布要求を受け付けた場合に、配布要求元の端末にファームウェアを配布する処理部である。例えば、ファームウェア配布処理部306cは、端末300bからファームウェアの配布要求を受け付けた場合に、ファームウェアデータ305bから配布対象となるファームウェアを取得し、取得したファームウェアを端末300bに配布する。
ファームウェア取得先通知部306dは、ファームウェアの新たな配布元となる端末のアドレス情報をファームウェア要求先に通知する処理部である。具体的に、図6を用いてファームウェア取得先通知部306dの処理を説明すると、グループBにおいて、ファームウェア配布処理部306cが端末300bおよび端末300cに対してファームウェアの配布を開始し、端末300bに対するファームウェアの配布が完了した場合(ファームウェアの取得が完了した旨の情報を端末300bから取得した場合)に、ファームウェア取得先通知部306dは、ファームウェアの新たな配布元となる端末300bのアドレス情報を端末300cに通知する。端末300bのアドレス情報を取得した端末300cは、端末300aからファームウェアを取得する処理を中断し、端末300bからファームウェアを取得する。
つぎに、本実施例2にかかるプログラム配布システムの処理手順について説明する。図7は、本実施例2にかかるプログラム配布システムの処理手順を説明するための説明図である。同図に示すように、端末300aは、プログラム配布サーバ60からファームウェアを取得した後に、端末300bおよび端末300cに対するファームウェアの配布を開始する(図7の(1)参照)。
続いて、端末300aが端末300bからファームウェアの受信が完了した旨の通知を取得した場合に(図7の(2)参照)、端末300bは、端末300cに新たなファームウェアの配布元となる端末300bのアドレス情報を端末300cに通知する(図7の(3)参照)。
その後、端末300bが端末300aに成り代わり(図7の(4)参照)、端末300cは、端末300bに対してファームウェアの配布要求を行い(図7の(5)参照)、端末300bは端末300cに対してファームウェアの配布を開始する(図7の(6)参照)。
上述してきたように、本実施例2にかかるプログラム配布システムは、複数の端末のうち一部の端末がプログラム配布サーバ60からファームウェアを取得し、他の端末に対するファームウェアの配布を開始する。そして、一部の端末に対するファームウェアの配布が完了した場合に、ファームウェアの配布が完了した配布先の端末が新たにファームウェアの配布を開始するので、顧客サイト内の各端末に対する負荷を分散し、効率よくファームウェアを配布することができる。
つぎに、本実施例3にかかるプログラム配布システムの概要および特徴について説明する。図8は、本実施例3にかかるプログラム配布システムの概要および特徴を説明するための説明図である。同図に示すように、本実施例3にかかるプログラム配布システムでは、管理装置400を設け、この管理装置400がファームウェアの配布元となる端末を管理し、各端末のファームウェアの取得先を制御する。
例えば、端末500aが、ファームウェアを取得する場合には、ファームウェアの配布元となる端末のアドレス情報を管理装置400に問い合わせる。問い合わせを受け付けた管理装置400は、端末500aの取得対象のファームウェアを保持する端末を判定し、判定した端末のアドレス情報を端末500aに通知し、端末500aは通知されたアドレス情報にかかる端末からファームウェアを取得する。
このように、本実施例3にかかるプログラム配布システムでは、管理装置400が各端末のファームウェアの取得先を制御するので、プログラム配布サーバ70、ルータ10,20にかかる負荷を軽減させることができると共に、ネットワーク回線の通信負荷を軽減させることができる。なお、プログラム配布サーバ70の説明は、図1において説明したプログラム配布サーバ50と同様であるため説明を省略する。
つぎに、図8に示した管理装置400の構成について説明する。図9は、本実施例3にかかる管理装置400の構成を示す機能ブロック図である。同図に示すように、この管理装置400は、入力部401と、出力部402と、入出力制御IF部403と、通信制御IF部404と、記憶部405と、制御部406とを備えて構成される。
このうち、入力部401は、各種の情報を入力する入力手段であり、キーボードやマウス、マイクなどによって構成される。なお、後述するモニタ(出力部402)も、マウスと協働してポインティングディバイス機能を実現する。
出力部402は、各種の情報を出力する出力手段であり、モニタ(若しくはディスプレイ、タッチパネルなど)やスピーカなどによって構成される。そして、入出力制御IF部403はこれら入力部401および出力部402によるデータの入出力を制御する手段であり、通信制御IF部404は、主に端末500a〜500eとの間における通信を制御する手段である。
記憶部405は、制御部406による各種の処理に必要なデータおよびプログラムを記憶する記憶手段(格納手段)であり、特に、本発明に密接に関連するものとしては、図9に示すように、配布管理テーブル405aを備える。図10は、配布管理テーブル405aのデータ構造の一例を示す図である。同図に示すように、この配布管理テーブル405aは、端末を識別する識別情報と、IP(Internet Protocol)アドレス(アドレス情報)と、各端末が保持するファームウェアの版数を示すファームウェア版数とを有する。
制御部406は、各種の処理手順を規定したプログラムや制御データを格納するための内部メモリを有し、これらによって種々の処理を実行する制御手段であり、特に本発明に密接に関連するものとしては、図9に示すように、配布先通知処理部406aと配布管理テーブル更新部406bとを備える。
配布先通知処理部406aは、端末からファームウェアの配布要求を受け付けた場合に、この配布要求に含まれる版数データと、配布管理テーブル405aとを比較して、要求対象となるファームウェアを保持する端末を判定し、判定した端末のアドレス情報をファームウェアの配布要求元に送信する処理部である。
例えば、配布先通知処理部406aが、端末500bからファームウェアの配布要求を受け付け、この配布要求に含まれる版数データと配布管理テーブル405aとを比較した結果、該当するファームウェアを端末500aが保持していると判定した場合には、配布先通知処理部406aは、端末500bに端末500aのアドレス情報を通知する。通知を受信した端末500bは、端末500aからファームウェアを取得することになる。
このように、配布先通知処理部406aが、ファームウェアの配布要求を行った端末にファームウェアの配布元のアドレス情報を通知し、アドレス情報を取得した端末は、プログラム配布サーバ70にアクセスすることなく、ファームウェアを取得することができるので、プログラム配布サーバ70にかかる負荷を軽減させることができると共に、迅速にファームウェアを取得することができる。
配布管理テーブル更新部406bは、配布管理テーブル405aに記録されたデータを更新する処理部である。具体的に、この配布管理テーブル更新部406bは、端末からファームウェアを新たに組み込んだ旨の情報と、アドレス情報と、このファームウェアの版数データを取得した場合に、配布管理テーブル405aの「ファームウェア版数」(図10参照)を新たな版数に更新する。
つぎに、図8に示した端末500aの構成について説明する(端末500b〜500eは、端末500aと同様の構成であるため説明を省略する)。図11は、本実施例3にかかる端末500aの構成を示す機能ブロック図である。同図に示すように、この端末500aは、入力部501と、出力部502と、入出力制御IF部503と、通信制御IF部504と、記憶部505と、制御部506とを備えて構成される。
このうち、入力部501は、各種の情報を入力する入力手段であり、キーボードやマウス、マイクなどによって構成される。なお、後述するモニタ(出力部502)も、マウスと協働してポインティングディバイス機能を実現する。
出力部502は、各種の情報を出力する出力手段であり、モニタ(若しくはディスプレイ、タッチパネルなど)やスピーカなどによって構成される。そして、入出力制御IF部503はこれら入力部501および出力部502によるデータの入出力を制御する手段であり、通信制御IF部504は、主にプログラム配布サーバ70と、端末500b〜端末500eとの間における通信を制御する手段である。
記憶部505は、制御部506による各種の処理に必要なデータおよびプログラムを記憶する記憶手段(格納手段)であり、特に、本発明に密接に関連するものとしては、図11に示すように、ファームウェア取得先テーブル505aと、ファームウェアデータ505bと、ファームウェア版数管理テーブル505cとを備える。
ここで、ファームウェア取得先テーブル505aは、プログラム配布サーバ70のアドレス情報と、端末500b、500c、500d、500eのアドレス情報を記憶したデータである。
ファームウェアデータ505bは、端末500aがプログラム配布サーバ70あるいは端末500b〜500eのいずれかから取得するファームウェアを記憶したデータである。ファームウェア版数管理テーブル505cは、端末500aに組み込まれた各ファームウェアの版数を記憶したデータである。
制御部506は、各種の処理手順を規定したプログラムや制御データを格納するための内部メモリを有し、これらによって種々の処理を実行する制御手段であり、特に本発明に密接に関連するものとしては、図11に示すように、ファームウェア取得処理部506aと、ファームウェア組込処理部506bと、ファームウェア配布処理部506cとを備える。
ファームウェア取得処理部506aは、管理装置400にアクセスして版数データを通知し、管理像地400からファームウェアの配布元にかかるアドレス情報を取得すると共に、取得したアドレス情報に対応する端末からファームウェアを取得し、取得したファームウェアをファームウェアデータ505bに記憶させる。
なお、ファームウェア取得処理部506aは、管理装置400にアクセスして版数データを通知した結果、該当するファームウェアを保持する端末が存在しない旨の情報を取得した場合には、プログラム配布サーバ70からファームウェアを取得する。
ファームウェア組込処理部506bは、ファームウェア取得処理部506aによって取得されたファームウェアデータ505bからファームウェアを取得し、取得したファームウェアを端末500aに組み込む処理部である。ファームウェア組込処理部506bは、ファームウェアを組み込んだ場合に、ファームウェア版数管理テーブル505cの版数を更新する。
また、ファームウェア組込処理部506bは、新たなファームウェアを端末500aに組み込んだ場合に、ファームウェアを新たに組み込んだ旨の情報と、端末500aのアドレス情報と、このファームウェアの版数データを管理装置400に通知する。
ファームウェア配布処理部506cは、ファームウェア配布要求を受け付けた場合に、配布要求元の端末にファームウェアを配布する処理部である。例えば、ファームウェア配布処理部506cは、端末500bからファームウェアの配布要求を受け付けた場合に、ファームウェアデータ505bから配布対象となるファームウェアを取得し、取得したファームウェアを端末300bに配布する。
つぎに、本実施例3にかかるプログラム配布システムの処理手順について説明する。図12は、本実施例3にかかるプログラム配布システムの処理手順を示すフローチャートである。なお、図12では説明の便宜上、ファームウェアの要求を端末500aが行い、該当するファームウェアを端末500bが保持しているものとして説明を行う。
図12に示すように、端末500aが管理装置400にファームウェアの版数データを送信し(ステップS201)、管理装置400が更新対象となるファームウェアを有する端末を判定する(ステップS202)。
そして、管理装置400は判定した端末のアドレス情報(図11に示す例では、端末500bのアドレス情報)を端末500aに送信し(ステップS203)、端末500aはアドレス情報に対応する端末にファームウェアを要求する(ステップS204)。
続いて、ファームウェアの要求を取得した端末500bは、ファームウェアを端末500aに送信し(ステップS205)、端末500aは、ファームウェアを取得してファームウェアを組み込む(ステップS206)。
端末500aは、ファームウェアを組み込んだ場合に、組み込んだファームウェアの版数データを管理装置400に送信し(ステップS207)、管理装置400は、配布管理テーブル405aを更新する(ステップS208)。
このように、端末500aは、ファームウェアの配布元となる端末を管理装置400に問い合わせ、管理装置400から通知されたアドレス情報に対応する端末からファームウェアを取得するので、プログラム配布サーバ70、ルータ10,20に対する負荷を軽減させることができる。
上述してきたように、本実施例3にかかるプログラム配布システムは、ファームウェアの取得先を制御するための管理装置400を設け、管理装置400が各端末500a〜500eからファームウェアの取得先を受け付けた場合に、該当するファームウェアを保持する端末を判定し、判定した端末のアドレス情報をファームウェア要求元に通知するので、プログラム配布サーバ70、サーバ10,20にかかる負荷を軽減させることができると共に、ネットワーク回線の通信負荷を軽減させることができる。
なお、上述した実施例1〜3にかかるプログラム配布システムでは、端末がファームウェアを取得する場合を例にあげて説明したがこれに限定されるものではなく、他のプログラムを取得する場合にでも同様に本発明を適用することができる。
ところで、上記実施例で説明した各種の処理は、あらかじめ用意されたプログラムをコンピュータで実行することによって実現することができる。そこで、以下では、図13および図14を用いて、上記各種処理を実現するプログラムを実行するコンピュータの一例について説明する。
図13は、上述した実施例1〜3にかかる端末を構成するコンピュータのハードウェア構成を示す図である。同図に示すように、このコンピュータは、ユーザからデータの入力を受け付ける入力装置30、モニタ31、ネットワークを介して他のコンピュータとの間でデータの授受をおこなう通信制御IF装置32、RAM(Random Access Memory)33、HDD(Hard Disk Drive)34、ROM(Read Only Memory)35およびCPU(Central Processing Unit)36をバス37で接続して構成される。
ROM35には、上述した端末の機能と同様の機能を発揮する各種プログラム(ファームウェア取得先プログラム35a、ファームウェア組込プログラム35b、ファームウェア配布処理プログラム35c、ファームウェア取得先通知プログラム35d)が記憶されている。そして、CPU36が各種プログラム35a〜35dを読み出して実行することにより、上述した端末の機能部の機能を実現する各種プロセス(ファームウェア取得先プロセス36a、ファームウェア組込プロセス36b、ファームウェア配布処理プロセス36c、ファームウェア取得先通知プロセス36d)が起動される。
ここで、ファームウェア取得先プロセス36a、ファームウェア組込プロセス36b、ファームウェア配布処理プロセス36c、ファームウェア取得先通知プロセス36dは、例えば、図6に示したファームウェア取得処理部306a、ファームウェア組込処理部306b、ファームウェア配布処理部306c、ファームウェア取得先通知部306dにそれぞれ対応する。
HDD34は、上述した端末の記憶部に記憶される各種データ(ファームウェア取得先テーブル34a、ファームウェアデータ34b、ファームウェア版数管理テーブル34c)が記憶されている。ファームウェア取得先テーブル34a、ファームウェアデータ34b、ファームウェア版数管理テーブル34cは、例えば、図6に示したファームウェア取得先テーブル305a、ファームウェアデータ305b、ファームウェア版数管理テーブル305cにそれぞれ対応する。
CPU36は、各種データ34a〜34cをHDD34に記憶すると共に、各種データ34a〜34cをHDD34から読み出してRAM33に格納し、RAM33に格納された各種データ33a〜33cに基づいてデータ処理を実行する。
図14は、上述した実施例3にかかる管理装置400を構成するコンピュータのハードウェア構成を示す図である。同図に示すように、このコンピュータは、ユーザからデータの入力を受け付ける入力装置40、モニタ41、ネットワークを介して他のコンピュータとの間でデータの授受をおこなう通信制御IF装置42、RAM(Random Access Memory)43、HDD(Hard Disk Drive)44、ROM(Read Only Memory)45およびCPU(Central Processing Unit)46をバス47で接続して構成される。
ROM45には、上述した管理装置400の機能と同様の機能を発揮する各種プログラム(配布先通知処理プログラム45aおよび配布管理テーブル更新プログラム45b)が記憶されている。そして、CPU46が各種プログラム45a、45bを読み出して実行することにより、上述した管理装置400の機能を実現する各種プロセス(配布先通知処理プロセス46aおよび配布管理テーブル更新プロセス46b)が起動される。
ここで、配布先通知処理プロセス46aおよび配布管理テーブル更新プロセス46bは、図9に示した配布先通知処理部406aおよび配布管理テーブル更新部406bにそれぞれ対応する。
HDD44は、配布管理テーブル44aを記憶している。この配布管理テーブル44aは、図9に示した配布管理テーブル405aに対応する。CPU46は、配布管理テーブル44aをHDD44に記憶すると共に、配布管理テーブル44aをHDD44から読み出してRAM43に格納し、RAM43に格納された配布管理テーブル43aに基づいてデータ処理を実行する。
ところで、上述した各種プログラム35a〜35d、45a、45bは、必ずしも最初からHDD34あるいは44に記憶させておく必要はない。たとえば、コンピュータに挿入されるフレキシブルディスク(FD)、CD−ROM、DVDディスク、光磁気ディスク、ICカードなどの「可搬用の物理媒体」、または、コンピュータの内外に備えられるハードディスクドライブ(HDD)などの「固定用の物理媒体」、さらには、公衆回線、インターネット、LAN、WANなどを介してコンピュータに接続される「他のコンピュータ(またはサーバ)」などに各種プログラム35a〜35d、45a、45bを記憶しておき、コンピュータがこれらから各種プログラム35a〜35d、45a、45bを読み出して実行するようにしてもよい。
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、特許請求の範囲に記載した技術的思想の範囲内において種々の異なる実施例にて実施されてもよいものである。
また、本実施例において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的におこなうこともでき、あるいは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的におこなうこともできる。
この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示のように構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、CPUおよび当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
(付記1)ネットワークを介してプログラム配布サーバおよび複数の端末と接続されたプログラム配布装置であって、
前記複数の端末および自プログラム配布装置に組み込むプログラムを前記プログラム配布サーバから前記複数の端末に代わって取得する取得手段と、
前記取得手段において取得したプログラムを前記複数の端末に配布する配布手段と、
を備えたことを特徴とするプログラム配布装置。
(付記2)前記取得手段は、前記複数の端末および自プログラム配布装置に組み込むプログラムのうち、更新されたプログラムを取得し、当該プログラムを組み込むことを特徴とする付記1に記載のプログラム配布装置。
(付記3)前記配布手段は、前記プログラムを配布できない場合に、当該プログラムの新たな配布元となる端末のアドレス情報を前記複数の端末に通知することを特徴とする付記1または2に記載のプログラム配布装置。
(付記4)前記配布手段は、前記プログラムを配布する端末の数に上限値を設け、前記プログラムを配布する端末の数が前記上限値を上回った後に他の端末からプログラムの配布要求を受け付けた場合には、前記プログラムの新たな配布元となる端末のアドレス情報を通知することを特徴とする付記1、2または3に記載のプログラム配布装置。
(付記5)前記配布手段は、端末に対する前記プログラムの配布が完了した後に、他の端末から前記プログラムの配布要求を受け付けた場合に、前記プログラムの配布が完了した端末を前記プログラムの新たな配布元として配布要求元の端末に通知することを特徴とする付記1〜4のいずれか一つに記載のプログラム配布装置。
(付記6)ネットワークを介してプログラム配布サーバおよび複数の端末が接続されたプログラム配布システムであって、
前記複数の端末の内の一端末であり、当該複数の端末に組み込むプログラムを前記複数の端末に代わって取得する端末の情報であるプログラム取得端末情報を記録する記録手段と、
前記プログラム配布サーバが前記プログラムの配布要求を受け付けた場合に、前記記録手段に記録されたプログラム取得端末情報に基づいて、前記プログラムの配布元となる端末のアドレス情報を通知する通知手段と、
を備えたことを特徴とするプログラム配布システム。
(付記7)複数の端末にプログラムを配布する配布処理実行プログラムであって、
前記複数の端末および自配布処理実行プログラムを備えた配布装置に組み込むプログラムを前記複数の端末に代わって取得する取得手順と、
前記取得手順において取得したプログラムを前記複数の端末に配布する配布手順と、
をコンピュータに実行させることを特徴とする配布処理実行プログラム。
(付記8)前記配布手順は、前記プログラムを配布できない場合に、当該プログラムの新たな配布元となる端末のアドレス情報を前記複数の端末に通知することを特徴とする付記7に記載の配布処理実行プログラム。
(付記9)前記配布手順は、前記プログラムを配布する端末の数に上限値を設け、前記プログラムを配布する端末の数が前記上限値を上回った後に他の端末からプログラムの配布要求を受け付けた場合には、前記プログラムの新たな配布元となる端末のアドレス情報を通知することを特徴とする付記7または8に記載の配布処理実行プログラム。
(付記10)前記配布手順は、端末に対する前記プログラムの配布が完了した後に、他の端末から前記プログラムの配布要求を受け付けた場合に、前記プログラムの配布が完了した端末を前記プログラムの新たな配布元として配布要求元の端末に通知することを特徴とする付記7、8または9に記載の配布処理実行プログラム。
以上のように、本発明にかかるプログラム配布装置およびプログラム配布システムはプログラムをクライアントに配布するプログラム配布システムなどに有用であり、特に、プログラム配布元となるサーバ装置の負荷を軽減させる場合に適している。
本実施例1にかかるプログラム配布システムの概要および特徴を説明するための説明図である。 本実施例1にかかるプログラム配布サーバの構成を示す機能ブロック図である。 本実施例1にかかる端末の構成を示す機能ブロック図である。 本実施例1にかかるプログラム配布システムの処理手順を示すフローチャートである。 本実施例2にかかるプログラム配布システムの概要および特徴を説明するための説明図である。 本実施例2にかかる端末の構成を示す機能ブロック図である。 本実施例2にかかるプログラム配布システムの処理手順を説明するための説明図である。 本実施例3にかかるプログラム配布システムの概要および特徴を説明するための説明図である。 本実施例3にかかる管理装置の構成を示す機能ブロック図である。 配布管理テーブルのデータ構造の一例を示す図である。 本実施例3にかかる端末の構成を示す機能ブロック図である。 本実施例3にかかるプログラム配布システムの処理手順を示すフローチャートである。 実施例1〜3にかかる端末を構成するコンピュータのハードウェア構成を示す図である。 実施例3にかかる管理装置を構成するコンピュータのハードウェア構成を示す図である。
符号の説明
10,20 ルータ
30,40 入力装置
31,41 モニタ
32,42 通信制御IF装置
33,43 RAM
33a,34a ファームウェア取得先テーブル
33b,34b ファームウェアデータ
33c,34c ファームウェア版数管理テーブル
43a,44a 配布管理テーブル
34,44 HDD
35,45 ROM
35a ファームウェア取得先プログラム
35b ファームウェア組込プログラム
35c ファームウェア配布処理プログラム
35d ファームウェア取得先通知プログラム
36,46 CPU
36a ファームウェア取得先プロセス
36b ファームウェア組込プロセス
36c ファームウェア配布処理プロセス
36d ファームウェア取得先通知プロセス
45a 配布先通知処理プログラム
45b 配布管理テーブル更新プログラム
46a 配布先通知処理プロセス
46b 配布管理テーブル更新プロセス
50,60,70 プログラム配布サーバ
51,101,301,401,501 入力部
52,102,302,402,502 出力部
53,103,303,403,503 入出力制御IF部
54,104,304,404,504 通信制御IF部
55,105,305,405,505 記憶部
55a,105b,305b,505b ファームウェアデータ
55b ファームウェア版数データ
56,106,306,406,506 制御部
56a、106c,306c,506c ファームウェア配布処理部
100a,100b,100c,100d,100e,300a,300b,300c,300d,300e,500a,500b,500c,500d,500e 端末
105c,305c,505c ファームウェア版数管理テーブル
106a,306a,506a ファームウェア取得処理部
106b,306b,506b ファームウェア組込処理部
105a,305a,505a ファームウェア取得先テーブル
306d ファームウェア取得先通知部
400 管理装置
405a 配布管理テーブル
406a 配布先通知処理部
406b 配布管理テーブル更新部

Claims (5)

  1. ネットワークを介してプログラム配布サーバおよび複数の端末と接続されたプログラム配布装置であって、
    前記複数の端末および自プログラム配布装置に組み込むプログラムを前記プログラム配布サーバから前記複数の端末に代わって取得する取得手段と、
    前記取得手段において取得したプログラムを前記複数の端末に配布する配布手段と、
    を備えたことを特徴とするプログラム配布装置。
  2. 前記配布手段は、前記プログラムを配布できない場合に、当該プログラムの新たな配布元となる端末のアドレス情報を前記複数の端末に通知することを特徴とする請求項1に記載のプログラム配布装置。
  3. 前記配布手段は、前記プログラムを配布する端末の数に上限値を設け、前記プログラムを配布する端末の数が前記上限値を上回った後に他の端末からプログラムの配布要求を受け付けた場合には、前記プログラムの新たな配布元となる端末のアドレス情報を通知することを特徴とする請求項1または2に記載のプログラム配布装置。
  4. 前記配布手段は、端末に対する前記プログラムの配布が完了した後に、他の端末から前記プログラムの配布要求を受け付けた場合に、前記プログラムの配布が完了した端末を前記プログラムの新たな配布元として配布要求元の端末に通知することを特徴とする請求項1、2または3に記載のプログラム配布装置。
  5. ネットワークを介してプログラム配布サーバおよび複数の端末が接続されたプログラム配布システムであって、
    前記複数の端末の内の一端末であり、当該複数の端末に組み込むプログラムを前記複数の端末に代わって取得する端末の情報であるプログラム取得端末情報を記録する記録手段と、
    前記プログラム配布サーバが前記プログラムの配布要求を受け付けた場合に、前記記録手段に記録されたプログラム取得端末情報に基づいて、前記プログラムの配布元となる端末のアドレス情報を通知する通知手段と、
    を備えたことを特徴とするプログラム配布システム。
JP2006203789A 2006-07-26 2006-07-26 プログラム配布装置 Expired - Fee Related JP5023596B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2006203789A JP5023596B2 (ja) 2006-07-26 2006-07-26 プログラム配布装置
US11/606,335 US7693969B2 (en) 2006-07-26 2006-11-30 Program distributing apparatus and program distributing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006203789A JP5023596B2 (ja) 2006-07-26 2006-07-26 プログラム配布装置

Publications (2)

Publication Number Publication Date
JP2008033445A true JP2008033445A (ja) 2008-02-14
JP5023596B2 JP5023596B2 (ja) 2012-09-12

Family

ID=38987685

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006203789A Expired - Fee Related JP5023596B2 (ja) 2006-07-26 2006-07-26 プログラム配布装置

Country Status (2)

Country Link
US (1) US7693969B2 (ja)
JP (1) JP5023596B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010239366A (ja) * 2009-03-31 2010-10-21 Panasonic Electric Works Co Ltd ポーリング通信システム
JP2012118914A (ja) * 2010-12-03 2012-06-21 Hitachi Ltd ファームウェア更新システム、ファームウェア更新方法、及び管理計算機
WO2022137365A1 (ja) * 2020-12-22 2022-06-30 三菱電機株式会社 通信システム、通信管理装置、通信装置、ソフトウェア配布方法およびソフトウェア配布プログラム

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9395968B1 (en) * 2006-06-30 2016-07-19 American Megatrends, Inc. Uniquely identifying and validating computer system firmware
WO2009001422A1 (ja) * 2007-06-25 2008-12-31 Fujitsu Limited ファームウェア配布装置、プログラム及び方法
CN102136942B (zh) 2010-12-31 2014-06-25 华为技术有限公司 软件的下载方法和装置
WO2012177597A1 (en) * 2011-06-24 2012-12-27 Siemens Aktiengesellschaft Networking elements as a patch distribution platform for distributed automation and control domains
US8972966B2 (en) * 2012-01-05 2015-03-03 Lenovo (Singapore) Pte. Ltd. Updating firmware in a hybrid computing environment
US9411574B2 (en) * 2013-08-19 2016-08-09 Dresser, Inc. System and method for updating firmware across devices in a process facility
JP6701863B2 (ja) * 2016-03-24 2020-05-27 日本電気株式会社 ファームウェア配信システム、配信装置、ファームウェア配信方法およびファームウェア配信プログラム
US11397815B2 (en) * 2018-09-21 2022-07-26 Hewlett Packard Enterprise Development Lp Secure data protection
JP2020190833A (ja) * 2019-05-20 2020-11-26 日本電気株式会社 無線アクセスネットワーク装置、バージョン管理システム、バージョン管理方法、及びプログラム

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07295943A (ja) * 1994-04-27 1995-11-10 Sharp Corp プログラム更新方法
JP2001101001A (ja) * 1999-09-27 2001-04-13 Matsushita Electric Ind Co Ltd データ更新方法
JP2003030078A (ja) * 2001-07-12 2003-01-31 Mega Chips Corp 情報配信システム、情報配信方法およびプログラム
JP2003069970A (ja) * 2001-08-23 2003-03-07 Nippon Telegr & Teleph Corp <Ntt> ストリーミング配信システムにおけるホームゲートウェイ,監視サーバおよびストリーミング配信システム
JP2003186778A (ja) * 2001-12-18 2003-07-04 Nec Corp コンテンツ配信システム、その配信方法及びそのプログラム
JP2003316678A (ja) * 2002-04-26 2003-11-07 Oki Customer Adtech Co Ltd データ提供方法及びシステム
JP2004073266A (ja) * 2002-08-09 2004-03-11 Aruze Corp 情報提供システム、情報提供方法、プログラム
JP2004341576A (ja) * 2003-05-13 2004-12-02 Hitachi Ltd コンテンツ配信方法およびコンテンツ配信システム
JP2005027009A (ja) * 2003-07-02 2005-01-27 Matsushita Electric Ind Co Ltd 映像サーバ及び映像配信ネットワークシステム
JP2005122618A (ja) * 2003-10-20 2005-05-12 Sony Corp コンテンツ配信方法およびコンテンツ配信サーバ
JP2006080659A (ja) * 2004-09-07 2006-03-23 Brother Ind Ltd 情報配信システム、処理装置、処理方法及び処理プログラム等
JP2006187438A (ja) * 2005-01-06 2006-07-20 Daikoku Denki Co Ltd ホール管理システム

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010029523A1 (en) * 2000-01-21 2001-10-11 Mcternan Brennan J. System and method for accounting for variations in client capabilities in the distribution of a media presentation
JP2001216150A (ja) 2000-02-03 2001-08-10 Bandai Co Ltd 通信システム及びサーバ端末並びにサーバ及び課金システム
JP2002099476A (ja) * 2000-09-26 2002-04-05 Sanyo Electric Co Ltd ソフトウェア配信方法、ソフトウェア配信装置、およびこれらを利用可能なユーザ端末
JP2002132511A (ja) 2000-10-25 2002-05-10 Fuji Xerox Co Ltd プログラム更新システム
US20020194301A1 (en) * 2000-11-01 2002-12-19 Hiroki Morii Information distribution system
US7058088B2 (en) 2001-03-28 2006-06-06 Minolta Co., Ltd. Data communication program product to rewrite simultaneously firmware of plurality of devices connected to network
JP2002288064A (ja) 2001-03-28 2002-10-04 Minolta Co Ltd データ通信プログラム、データ通信プログラムを記録したコンピュータ読み取り可能な記録媒体、データ通信装置およびデータ通信方法
US6845394B2 (en) * 2001-04-16 2005-01-18 Sun Microsystems, Inc. Software delivery method with enhanced batch redistribution for use in a distributed computer network
JP4774625B2 (ja) * 2001-05-16 2011-09-14 ソニー株式会社 コンテンツ配信システム、コンテンツ配信制御サーバ、コンテンツ送信処理制御方法、コンテンツ送信処理制御プログラム及びコンテンツ送信処理制御プログラム格納媒体
JP2003005947A (ja) * 2001-06-25 2003-01-10 Toshiba Corp サーバ装置、携帯端末、コンテンツ配信方法、コンテンツ受信方法及びプログラム
US20030154132A1 (en) * 2001-11-12 2003-08-14 Tomoki Ogawa Distribution system, terminal apparatus, distribution method, program and recording medium
US20040122917A1 (en) * 2002-12-18 2004-06-24 Menon Jaishankar Moothedath Distributed storage system for data-sharing among client computers running defferent operating system types
US7350201B2 (en) * 2003-10-23 2008-03-25 International Business Machines Corporation Software distribution application supporting operating system installations

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07295943A (ja) * 1994-04-27 1995-11-10 Sharp Corp プログラム更新方法
JP2001101001A (ja) * 1999-09-27 2001-04-13 Matsushita Electric Ind Co Ltd データ更新方法
JP2003030078A (ja) * 2001-07-12 2003-01-31 Mega Chips Corp 情報配信システム、情報配信方法およびプログラム
JP2003069970A (ja) * 2001-08-23 2003-03-07 Nippon Telegr & Teleph Corp <Ntt> ストリーミング配信システムにおけるホームゲートウェイ,監視サーバおよびストリーミング配信システム
JP2003186778A (ja) * 2001-12-18 2003-07-04 Nec Corp コンテンツ配信システム、その配信方法及びそのプログラム
JP2003316678A (ja) * 2002-04-26 2003-11-07 Oki Customer Adtech Co Ltd データ提供方法及びシステム
JP2004073266A (ja) * 2002-08-09 2004-03-11 Aruze Corp 情報提供システム、情報提供方法、プログラム
JP2004341576A (ja) * 2003-05-13 2004-12-02 Hitachi Ltd コンテンツ配信方法およびコンテンツ配信システム
JP2005027009A (ja) * 2003-07-02 2005-01-27 Matsushita Electric Ind Co Ltd 映像サーバ及び映像配信ネットワークシステム
JP2005122618A (ja) * 2003-10-20 2005-05-12 Sony Corp コンテンツ配信方法およびコンテンツ配信サーバ
JP2006080659A (ja) * 2004-09-07 2006-03-23 Brother Ind Ltd 情報配信システム、処理装置、処理方法及び処理プログラム等
JP2006187438A (ja) * 2005-01-06 2006-07-20 Daikoku Denki Co Ltd ホール管理システム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010239366A (ja) * 2009-03-31 2010-10-21 Panasonic Electric Works Co Ltd ポーリング通信システム
JP2012118914A (ja) * 2010-12-03 2012-06-21 Hitachi Ltd ファームウェア更新システム、ファームウェア更新方法、及び管理計算機
WO2022137365A1 (ja) * 2020-12-22 2022-06-30 三菱電機株式会社 通信システム、通信管理装置、通信装置、ソフトウェア配布方法およびソフトウェア配布プログラム

Also Published As

Publication number Publication date
JP5023596B2 (ja) 2012-09-12
US20080028046A1 (en) 2008-01-31
US7693969B2 (en) 2010-04-06

Similar Documents

Publication Publication Date Title
JP5023596B2 (ja) プログラム配布装置
US11363112B2 (en) High-density multi-tenant distributed cache as a service
US9971823B2 (en) Dynamic replica failure detection and healing
US8924592B2 (en) Synchronization of server-side cookies with client-side cookies
US20060242320A1 (en) Method and apparatus for polling
US7962635B2 (en) Systems and methods for single session management in load balanced application server clusters
JP2019212336A (ja) 分散キャッシュクラスタ管理
JP2003131924A (ja) リモートアクセスプログラム、リモートアクセス要求処理プログラム、およびクライアントコンピュータ
US20120102220A1 (en) Routing traffic in an online service with high availability
JP2009521746A (ja) プログラム実行サービスウィンドウ
JP2014534537A (ja) 専用のキャッシュを管理するためのシステム及び方法
RU2467381C2 (ru) Глобальное предоставление услуг миллионам пользователей с помощью узлов развертывания
EP4080377A1 (en) Method to implement multi-tenant/shared redis cluster using envoy
US20150317174A1 (en) Host providing system and host providing method
JP2011028547A (ja) 仮想マシン起動端末および仮想マシン起動プログラム
JP2013077220A (ja) コンピュータシステム及びアプリケーションのマルチバージョン管理装置
JP2005202631A (ja) プログラムコンポーネントの処理要求キューの構成方法、プログラムコンポーネントの登録方法及び実行制御方法、プログラムコンポーネントの登録プログラム及び実行制御プログラム、並びに、アプリケーションサーバ
JP2008090578A (ja) アプリケーション実行システム、コンピュータ、アプリケーション実行システムのアプリケーション実行方法およびプログラム
US7711780B1 (en) Method for distributed end-to-end dynamic horizontal scalability
JP5522735B2 (ja) セッション管理装置、セッション管理システム、セッション管理方法、及びプログラム
JP2019041241A (ja) 振り分けシステム
US10819775B2 (en) Systems and methods for server failover and load balancing
JP2000339156A (ja) ライセンス管理システム
US20220334884A1 (en) Method to implement multi-tenant/shared redis cluster using envoy
KR100969989B1 (ko) 네트워크에서 응용프로그램 배포 방법 및 장치

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20081117

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110628

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110630

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110822

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120221

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120423

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: 20120522

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: 20120604

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

Free format text: PAYMENT UNTIL: 20150629

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5023596

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees