JP2004206260A - Program delivery system - Google Patents

Program delivery system Download PDF

Info

Publication number
JP2004206260A
JP2004206260A JP2002372427A JP2002372427A JP2004206260A JP 2004206260 A JP2004206260 A JP 2004206260A JP 2002372427 A JP2002372427 A JP 2002372427A JP 2002372427 A JP2002372427 A JP 2002372427A JP 2004206260 A JP2004206260 A JP 2004206260A
Authority
JP
Japan
Prior art keywords
program
client
update
distribution system
computer
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
JP2002372427A
Other languages
Japanese (ja)
Other versions
JP4430296B2 (en
Inventor
Ryuichi Murakami
龍一 村上
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.)
Aioi Insurance Co Ltd
Original Assignee
Aioi Insurance Co 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 Aioi Insurance Co Ltd filed Critical Aioi Insurance Co Ltd
Priority to JP2002372427A priority Critical patent/JP4430296B2/en
Publication of JP2004206260A publication Critical patent/JP2004206260A/en
Application granted granted Critical
Publication of JP4430296B2 publication Critical patent/JP4430296B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide a system for performing receipt of a program from a server and updating thereof without stopping a business processing on a client while reducing the load of a network by dispersing the delivery of the program to the client. <P>SOLUTION: An updating program 21 for updating a client program started in a client computer 3 is stored in a server computer 2, and the load of the network 4 is monitored in the client computer 3. The updating program 21 is received from the server computer 3 on the basis of the load of the network 4. Further, the starting state of the client program such as whether the client program is starting or not, or whether its starting is scheduled or not is monitored from the state of a job or process to determine whether the updating of the client program is possible or not, and the updating is performed by use of the updating program 21. <P>COPYRIGHT: (C)2004,JPO&NCIPI

Description

【0001】
【発明の属する技術分野】
本発明は、ネットワークを介して接続されるサーバから、クライアントにプログラムやデータ等の情報を配信するシステムに関するものである。
【0002】
【従来の技術】
従来、プログラム配信システムは、サーバコンピュータ側でプログラムを管理し、そのプログラムを必要とするクライアントコンピュータ側に配信する。このようなシステムで、複数のクライアントコンピュータで同時にプログラムを配信すると、ネットワークリソースを集中的に使用することになり、プログラムの受け取りに時間がかかっていた。
【0003】
そこで、ネットワークの負荷を軽減するために、サーバコンピュータから更新情報(レビジョン)をクライアントコンピュータに送信し、その更新情報をチェックして、クライアントコンピュータ側で使用頻度の高い対象ファイルのみをサーバコンピュータに要求するようにして、サーバコンピュータ側の負担を軽減し、さらに、ネットワークや回線の負荷も減少させようとするものがあった(例えば、特許文献1参照。)。
【0004】
【特許文献1】
特許第2859200号公報
【0005】
【発明が解決しようとする課題】しかしながら、このようなプログラム配信システムでは、クライアントコンピュータ側でプログラムを受信する時や、プログラム更新をおこなうときにはクライアントコンピュータで動作している業務プログラムを停止させて、受信や更新を行わなければならない。そのためクライアントコンピュータでは、受信や更新の間は業務プログラムを停止する必要がある。また、操作者はその間使用不可の状態となる。
【0006】
一方、クライアントコンピュータのプログラムは必要な時期に適宜更新しなければ、他のクライアントコンピュータとの整合やプロセス間での整合が取れなくなり、様々な問題を引き起こす原因になり得る。
【0007】
本発明は、このような事情に対処してなされたもので、クライアントへのプログラムの配信を分散してネットワークの負荷を軽減し、さらに、クライアントでの業務処理を停止させることなくサーバからのプログラムの受信及び更新を行うシステムを提供することを目的とする。
さらに、クライアントで適切な時期に更新され、クライアント間やクライアントのプロセス間での整合が計れるシステムを提供することを目的とする。
【0008】
【課題を解決するための手段】
上述の課題を考慮して、本発明は以下のような構成を採用する。
請求項1のプログラム配信システムでは、サーバコンピュータとクライアントコンピュータとがネットワークを介して接続され、前記クライアントコンピュータで起動するクライアントプログラムを更新するための更新プログラムを前記サーバコンピュータに記憶して、上記更新プログラムを前記クライアントコンピュータに配信するプログラム配信システムにおいて、前記クライアントコンピュータには、前記更新プログラムを前記サーバコンピュータから予め受信して記憶する更新プログラム記憶手段と、ジョブやプロセスなどの状態から、前記クライアントプログラムが起動中であるかや、起動予定があるかなどのクライアントプログラムの起動状態を監視した監視情報を作成するプログラム監視手段と、前記監視情報に基づき、前記クライアントプログラムの更新が可能か否かを判断して、前記更新プログラム記憶手段に記憶している更新プログラムで更新を行うプログラム更新手段と、を備える。
【0009】
上記の構成では、起動中のジョブやプロセスからどのクライアントプログラムが起動中であるかや起動される予定を判断して、プログラムの更新を行うので、クライアントコンピュータで行っている業務処理などを中断することなくクライアントプログラムの更新を行うことができる。
【0010】
請求項2のプログラム配信システムでは、サーバコンピュータとクライアントコンピュータとがネットワークを介して接続され、前記クライアントコンピュータで起動するクライアントプログラムを更新するための更新プログラムを前記サーバコンピュータに記憶して、上記更新プログラムを前記クライアントコンピュータに配信するプログラム配信システムにおいて、前記クライアントコンピュータには、前記ネットワークの負荷を監視して、上記ネットワークの負荷に基づいて、前記更新プログラムを前記サーバコンピュータから受信するか否かを判断するプログラム受信手段と、前記受信した更新プログラムを記憶する更新プログラム記憶手段と、ジョブやプロセスなどの状態から、前記クライアントプログラムが起動中であるかや、起動予定があるかなどのクライアントプログラムの起動状態を監視した監視情報を作成するプログラム監視手段と、前記監視情報に基づき、前記クライアントプログラムの更新が可能か否かを判断して、前記更新プログラム記憶手段に記憶している更新プログラムで更新を行うプログラム更新手段と、を備える。
【0011】
上記の構成では、ネットワークの負荷状況に応じて、更新プログラムをサーバコンピュータから受信するのでネットワークの負荷を分散することができる。さらに、クライアントコンピュータにおける起動中のジョブやプロセスから、どのクライアントプログラムが起動中であるかや起動される予定のクライアントプログラムから判断して、予め受信していた更新プログラムでクライアントプログラムの更新を行うので、業務処理などを中断することなくクライアントプログラムの更新を行うことができる。
【0012】
また、請求項3では、請求項1または2記載のプログラム配信システムにおいて、前記プログラム監視手段では、前記クライアントプログラムを起動する手順を記憶した定義情報に基づいて、前記ジョブやプロセスなどの状態を取得することを特徴とする。
【0013】
上記の構成では、業務処理などに従ってクライアントプログラムを起動する手順を定義した定義情報から、起動中のクライアントプログラムや起動予定(タイムスケジュール等)などがわかる。また、定義情報が無い場合等は起動中のプログラムの外部との入出力を監視することにより次に動作が予定されるであろうプログラムを類推する(例えば、画面入出力が続けば続くプログラムも画面入出力と判断する)。
【0014】
また、請求項4では、請求項2または3記載のプログラム配信システムにおいて、前記クライアントコンピュータでは、前記更新プログラムの適用期限に関する情報を前記サーバコンピュータから受信し、前記プログラム受信手段では、上記適用期限に基づき更新プログラムを受信することを特徴とする。
【0015】
上記の構成では、更新プログラムの適用期限に基づいてプログラムを受信するので、適切な時期にプログラムの更新が行われ、更新プログラムの受信洩れが防止される。
【0016】
また、請求項5では、請求項1〜3いずれか記載のプログラム配信システムにおいて、前記クライアントコンピュータでは、前記更新プログラムの適用期限に関する情報を前記サーバコンピュータから受信し、前記プログラム更新手段では、上記適用期限に基づきクライアントプログラムの更新を行うことを特徴とする。
【0017】
上記の構成では、更新プログラムの適用期限に基づいてプログラムの更新をするので、適切な時期までにプログラムの更新が行われる。また、早急なプログラムの更新、データの配布などにも対応可能となる。
【0018】
また、請求項6では、請求項2〜5いずれか記載のプログラム配信システムにおいて、前記クライアントコンピュータでは、クライアントコンピュータ毎にクライアントプログラムを前記更新プログラムで更新する優先順位を決め、前記プログラム受信手段では、上記優先順位に基づいて更新プログラムを前記サーバコンピュータから受信することを特徴とする。
【0019】
上記構成では、各クライアントコンピュータにおいてクライアントプログラムを更新する優先順位を設定し、優先順位に従って更新プログラムを受信するので、適切な時期にクライアントコンピュータのプログラムの更新が行われる。
【0020】
また、請求項7では、請求項1〜5いずれか記載のプログラム配信システムにおいて、前記クライアントコンピュータでは、クライアントコンピュータ毎にクライアントプログラムを前記更新プログラムで更新する優先順位を決め、前記プログラム更新手段では、上記優先順位に基づいてクライアントプログラムを更新することを特徴とする。
【0021】
上記構成では、クライアントコンピュータ毎にクライアントプログラムを更新する優先順位を設定し、優先順位に従ってクライアントプログラムの更新をするので、適切な時期にクライアントコンピュータのプログラムの更新が行われる。
【0022】
また、請求項8では、請求項6または7記載のプログラム配信システムにおいて、前記優先順位は、更新するクライアントプログラムの使用頻度に基づいて優先順位を設定することを特徴とする。
【0023】
上記構成では、クライアントプログラムの使用頻度が高いものほど優先的に更新される。
【0024】
また、請求項9では、請求項6〜8いずれか記載のプログラム配信システムにおいて、前記クライアントコンピュータで長時間更新されないクライアントプログラムの優先順位を上げることを特徴とする。
【0025】
上記の構成では、特定のプログラムが長時間更新されないのを防ぐことができる。
【0026】
また、請求項10では、請求項1〜9いずれか記載のプログラム配信システムにおいて、前記プログラム更新手段では、同時に更新しなければならないクライアントプログラムに該当する前記更新プログラムを管理し、上記同時に更新しなければならないクライアントプログラムを該当する前記更新プログラムで一斉に更新することを特徴とする。
【0027】
上記の構成では、同時に更新されなければならないプログラムを管理して、更新するクライアントプログラム間で不整合が起こらないようにするとともに、緊急時(ウイルス障害、システム障害等)のプログラム、データ等の一斉更新及び一斉対処が可能となる。
【0028】
【発明の実施の形態】
図に基づき、本発明に係るプログラム配信システムの実施の形態を説明する。
【0029】
プログラム配信システム1は、図1に示すように、サーバコンピュータ2とクライアントコンピュータ3とネットワーク4とで概略構成される。サーバコンピュータ2には、クライアントコンピュータ用の更新プログラム21が記憶され、クライアントコンピュータ3では、ネットワーク4の負荷をみてサーバコンピュータ2から更新プログラム21を受信して、ジョブやプロセスの状態からクライアントプログラムの更新が可能かを判断してクライアントプログラムの更新を行うものである。
【0030】
ここで、クライアントプログラムとは、アプリケーションプログラム、ライブラリプログラム、システムプログラムやデータファイルやアイコンファイル などのデータやリソースファイルも含み、クライアントコンピュータのメモリ上にロードされて起動されるプログラム及びそれが使用するリソースである。
また、プロセスとは、プログラムを起動する単位であり、プログラムを主記憶上にロードし、オブジェクトモジュールや、ライブラリプログラムの入出力が準備されて起動された状態のものである。プロセスには、プロセスの一部(スレッド)や複数のプロセスの集合(タスク)なども含む。ジョブは、業務処理などを行うためにどのアプリケーションプログラムをどのような順番で起動するかなどまとまった処理の単位を指すものである。
【0031】
サーバコンピュータ2は通信機能やハードディスク装置などの補助記憶装置を備え、プログラムなどのファイルを管理する機能を備えたものである。また、クライアントコンピュータ3は通信機能や制御部などを備え、様々なアプリケーションや業務処理の起動が可能なもので、パソコンや携帯型の端末でもよい。さらに、ネットワーク4は、LAN、WAN等のネットワークをはじめ、インターネットやイントラネット等も利用することが可能である。
【0032】
図2に示すように、サーバコンピュータ2は、クライアントコンピュータ3の更新プログラム21を記憶する配信プログラム記憶手段22とクライアントコンピュータ3に更新プログラム21を送信するためのプログラム配信手段23とを備えている。
【0033】
また、配信プログラム記憶手段22には、クライアントコンピュータ3へ配信する更新プログラム21を管理する更新情報一覧24を記憶している。更新情報一覧24は、図3に示すように、更新プログラムのファイル名241、同一タイミングで更新する必要のあるファイルの一群を管理するグループ名242、適用期限243、リビジョン244等が記録されている。
【0034】
さらに、プログラム配信手段23では、更新情報一覧24をクライアントコンピュータ3に送信し、さらに、更新情報一覧24に基づいてクライアントコンピュータ3から更新プログラム21の送信要求があると、更新プログラム21を該当するクライアントコンピュータ3に送信する。
【0035】
また、クライアントコンピュータ3には、様々な業務処理を行うためにクライアントプログラム30が記憶され、クライアントプログラム30を起動する業務処理手段31と、クライアントコンピュータ3のジョブやプロセスの状態に基づいて、クライアントプログラムの状態を監視するプログラム監視手段32と、ネットワーク4のネットワーク負荷を監視するネットワーク監視手段33と、ネットワーク負荷をみてサーバコンピュータ2から更新プログラム21を受信するプログラム受信手段34と、受信した更新プログラム21を記憶する更新プログラム記憶手段35と、クライアントプログラム30が起動中であるかやクライアントプログラム30の起動予定をみてプログラムが更新可能であるかを判断して、更新プログラム21でクライアントプログラム30を更新するプログラム更新手段36などで構成される。
【0036】
業務処理手段31は業務処理など行うために、アプリケーションプログラムなどのクライアントプログラム30を起動する手順を記憶した定義情報310に従って、ジョブを実行する機能を備える。
【0037】
ここでは、プログラム監視手段32、ネットワーク監視手段33、プログラム受信手段34、プログラム更新手段36は、独立したプロセスとして実行され、相互にメッセージのやり取りを行うことにより、他のプロセスと情報の授受を行う場合について以下説明をする。
【0038】
プログラム監視手段32は、図4に示すように、プログラム更新手段36などの他のプロセスから送信される情報提供依頼のメッセージを受信すると、OSのプロセス一覧やジョブ制御を行っているプロセスが持つジョブ情報(ファイル)、または直接ジョブ制御プロセスに問い合わせを出し回答をもらうなどして起動されている現在のジョブ情報を取得したり、定義情報310から得られるクライアントプログラム30が起動される順番(タイムスケジュール等)などから、起動中のジョブやプロセスや近時中に起動されるジョブやプロセスなどの情報を監視情報320として依頼元に通知する。
【0039】
ネットワーク監視手段33は、図5に示すように、随時、ネットワーク4の負荷を監視し、ネットワークの負荷情報331を負荷情報記憶部330に記憶していく機能を備える。例えば、イーサネット(登録商標)を利用したLAN接続の場合には、常に自分に宛てたパケット以外のパケットの全てネットワーク上を流れてくるので常時その通過するパケットをチェックしその負荷情報331を負荷情報記憶部330に記憶してネットワーク4の負荷を把握する。あるいは、PINGコマンドによるサーバコンピュータ2とクライアントコンピュータ3のパケット通信応答時間を見てネットワーク4の負荷を把握することもでき、その他には、他のセグメントにプローブ(センサ)を設置し、そこから別セグメントの負荷情報を提供してもらうように構成しても良い。また、他のプロセスから情報提供依頼メッセージがあると、ネットワーク負荷情報331を依頼元に通知する機能を備える。
【0040】
プログラム受信手段34は、サーバコンピュータ2から更新情報一覧24を受信し、ネットワーク監視手段33にネットワークの負荷情報330の情報提供を要求して、ネットワークの負荷情報331や更新情報一覧24などに基づき、更新プログラム21をサーバコンピュータ2より受信(以降、ダウンロードとする)するか否かの判断をする機能を備える。
【0041】
また、クライアントプログラム30を更新する優先順位を各クライアントコンピュータ3の条件に応じて、図6に示すように、優先順位情報340を設定し、この優先順位情報340を加味して更新プログラム21をサーバコンピュータ2よりダウンロードするか否かの判断をするようにしても良い。この優先順位は、例えば、クライアントプログラム30が起動された回数を記憶するようにして、更新対象のクライアントプログラム30の使用頻度が高いものほど高くするというように、使用頻度で優先順位を設定する。あるいは、クライアントプログラム30の重要度などで優先順位を設定しても良い。その他、更新期限の一番近い順に優先順位をつけたり、ファイルサイズが大きくてダウンロードに時間のかかるものを先に行う、または逆にファイルサイズの小さいものからダウンロードするといった優先順位をつけても良い。さらに、いつまでもダウンロードされないのを防ぐために、ダウンロードされなかったクライアントプログラム30の優先順位を適宜上げるようにしてもよい。
【0042】
あるいは、クライアントコンピュータのCPU使用量や補助記憶装置入出力量を監視してCPUの使用量又は補助記憶装置入出力量が規定値以下である場合に更新プログラム21のダウンロードを行うようにすることもできる。
【0043】
プログラム更新手段36は、監視情報320を取得するためにプログラム監視手段32に情報提供要求依頼をし、この監視情報320に含まれる起動中のジョブやプロセス、あるいは、近時中に起動されるジョブやプロセスなどの情報から、クライアントプログラム30が実行中であるかや近時中に実行する予定があるかなどから、クライアントプログラム30が更新可能な状態であるかを把握する。さらに、サーバコンピュータ2から受信した更新情報一覧24とから、どのクライアントプログラム30から更新するかを判断して、更新プログラム記憶手段35に記憶している更新プログラム21でクライアントプログラム30を更新する機能を備える。このとき、更新するクライアントプログラム30を起動するジョブを排他ロックして更新を行う。
【0044】
また、新たな更新プログラム21があるかをサーバコンピュータ2に問い合わせたり、クライアントコンピュータ3内の他のプロセスからの更新の依頼を受けて更新する機能をも備える。例えば、サーバコンピュータ2に適宜接続して、新たな更新プログラム21があるかを、ポーリングで問い合わせて更新をする。あるいは、タイマーで定期的に新たな更新プログラム21があるかを問い合わせて更新をする。
【0045】
さらに、クライアントコンピュータ3内の他のプロセスからクライアントプログラム30の更新の依頼をプロセス間通信などで受け取ると、監視情報320や更新情報一覧24に基づき更新が可能であるかを判断して更新する。例えば、更新可能(推奨)状態としてジョブ制御プロセスからジョブがアイドリング状態(昼休み等でユーザが操作してない状態)に通知を受け、更新を行う場合がある。
【0046】
また、更新プログラム21が予めダウンロードされていない場合には、サーバコンピュータ2から更新プログラム21をダウンロードして更新を行うようにしても良い。さらに、更新時には、更新情報一覧24の適用期限243や、優先順位情報340に基づいて更新していくようにすることが望ましい。
【0047】
ここで、プログラム配信システム1の各機能の動作について図7〜図10のフローチャートを用いて説明する。
【0048】
まず、図7のフローチャートを用いて、プログラム監視手段32の動作について説明する。
【0049】
プログラム監視手段32のプロセスが起動されると、まず、他のプロセスから情報提供依頼を受け取るまで待ち状態を保持する(S300)。他のプロセスから情報提供依頼のメッセージを受け取ると(S301)、現在動作中のプロセスを調べる(S302)。さらに、定義情報310から現在のジョブの状態を取得する(S303)。動作中のプロセスとジョブの状態から、近時中に動作すると思われるジョブとプロセスの監視情報320を作成し(S304)、情報提供依頼元に監視情報320を通知して(S305)、再度、情報提供依頼待ちの状態に戻る(S300)。
【0050】
図8のフローチャートを用いて、ネットワーク監視手段33の動作について説明する。
【0051】
ネットワーク監視手段33のプロセスは、起動直後から常時ネットワークの負荷割合を計測し、負荷情報記憶部330に負荷情報331を記憶する(S310)。他のプロセスから情報提供依頼のメッセージがあるかをみて(S311)、情報提供依頼があれば(S312)、負荷情報記憶部330に記憶している負荷情報331を情報提供依頼元へ通知し(S313)、再度、ネットワークの負荷割合を計測に戻る(S310)。
【0052】
図9のフローチャートを用いて、プログラム受信手段34の動作について説明する。
【0053】
プログラム受信手段34のプロセスは、起動直後にサーバコンピュータ2から更新情報一覧24を取得し更新一覧記憶情報341に記録する(S320)。そこで、クライアントコンピュータ3のクライアントプログラム30を更新する更新プログラム21が存在しない場合には(S321)、一時的に休止した後、更新情報一覧24の取得を行う(S320)。 更新プログラム21が存在する場合には(S321)、クライアントプログラム30の使用頻度などを参照にして更新プログラム21をダウンロードする優先度を付加する(S322)。
【0054】
そこで、ネットワーク監視手段33に情報提供依頼のメッセージを通知して(S323)、負荷情報331を取得する(S324)。負荷情報331と更新情報一覧24の適用期限243などを考慮して、更新プログラム21のダウンロードを行うか否かの判定を行う(S325)。
【0055】
ダウンロードを行うのに適切なタイミングであれば(S326)、更新プログラム21をサーバコンピュータ2からダウンロードして、更新プログラム記憶手段35に記憶する。ダウンロードが終わると、再度、始めの状態に戻り更新プログラム21が有るかを確認する(S327)。ダウンロードを行わなかったときには、始めの状態に戻り更新プログラム21が有るかを確認する(S320)。また、更新一覧記憶情報341には、更新プログラムがダウンロード済みであるかが記録される。
【0056】
以上説明したように、ネットワークの負荷を監視して更新プログラムのダウンロードを行うのでネットワークの負荷を分散することができ、さらに、クライアントコンピュータのダウンロード時の負荷も軽減することができる。
【0057】
図10と図11のフローチャートを用いて、プログラム更新手段36の動作について説明する。
【0058】
プログラム更新手段36のプロセスは、起動直後(システム起動直後)に更新一覧記憶情報341をもとに更新プログラム21の有り無しを確認し、適用期限243が来ているクライアントプログラム30は、業務処理を開始する前に全て強制的に更新する(S330)。また、更新プログラム21がダウンロードされていない場合には、プログラム受信手段34に更新プログラム21のダウンロードを依頼してクライアントプログラム30を更新する。
【0059】
次に、サーバコンピュータ2に新たな更新プログラム21の更新依頼があるかプログラム受信手段34がサーバコンピュータ2に確認する(S331)。あるいは、他のプロセスからの更新依頼、例えば、プロセスが混雑していたときやLANが混雑していたとき(フリーズや電源ダウン等)に、そのままプログラム更新が放置されるのを防ぐために、プロセスにメッセージを投げて、プロセスの正常の有無の確認やプログラム更新のダミーの依頼を出して、更新依頼があるかを確認して(S332)、更新する依頼があれば(S333)、更新一覧記憶情報341に追加する(S334)。
【0060】
そこで、更新一覧記憶情報341を参照して、更新プログラム21がない場合には(S335)、更新依頼確認の状態に戻る(S331)。更新プログラム21がある場合には(S335)、プログラム監視手段32に情報提供を依頼して(S336)、監視情報320を取得する(S337)。そこで、監視情報320からクライアントプログラム30単位に更新の出来る状態であるか否かを判断し(S338)、更新可能なときには(S339)、更新するクライアントプログラム30に関連するジョブを排他ロックして(S340)、更新する(S341)。更新する際には、同一タイミングで更新する必要のあるファイルの一群のグループ242を全て更新する。
【0061】
更新がおわると、排他ロックを解除して(S342)、例えば、図12に示すように、更新一覧記憶情報341から更新した更新プログラム(図12の例ではabc)のデータを削除して、更新依頼確認の状態に戻る(S331)。また、プログラム更新手段36は、プログラム受信手段34と同様に、適用期限243、優先順位情報340等に従いプログラム更新を行う。
【0062】
以上、説明したようにクライアントプログラムの更新を業務処理など実行しているクライアントプログラムの妨げとなることがないように、更新することができる。
【0063】
以上、更新プログラムの更新情報一覧の受信や、各クライアントコンピュータのプログラムを更新する優先順位の設定をプログラム受信手段で行うように説明したが、クライアントコンピュータの起動直後など、更新プログラムのダウンロードの前に行われれば良い。あるいは、予め、取り決めて設定するようにしても良い。
【0064】
【発明の効果】
以上詳細に説明したように、プロセスやジョブを管理してプログラムの更新を行うため、業務処理を妨げることがない。
【0065】
また、クライアントコンピュータの空き時間にプログラムのダウンロードをするので、同じ時間帯にダウンロードが集中することがなくネットワークの負荷を分散することができる。さらに、ネットワークの負荷をみてダウンロードするためクライアントコンピュータのダウンロード負荷も軽減することができる。
【0066】
また、適用期限や優先順位をみて、必要な時期までに必ず更新することが出来るので、システム全体の整合性が保てる。
【0067】
さらに、関連するプログラムを同時に更新するように管理することで、整合性を保つようにプログラムの更新ができる。
【0068】
さらに、プログラムを配布する側が時間やクライアント側の動作業務を気にすることなく配布指示を事前に出すことが出来る。
【図面の簡単な説明】
【図1】プログラム配信システムの概略図である。
【図2】プログラム配信システムのブロック図である。
【図3】更新情報一覧の一例である。
【図4】プログラム監視手段を説明するための図である。
【図5】ネットワークの負荷の監視を説明するための図である。
【図6】優先順位情報の一例である。
【図7】プログラム監視手段の動作を説明するためのフローチャートである。
【図8】ネットワーク監視手段の動作を説明するためのフローチャートである。
【図9】プログラム受信手段の動作を説明するためのフローチャートである。
【図10】プログラム更新手段の動作を説明するためのフローチャートである(その1)。
【図11】プログラム更新手段の動作を説明するためのフローチャートである(その2)。
【図12】プログラムの更新と更新情報一覧の変更を説明するための図である。
【符号の説明】
1 プログラム配信システム
2 サーバコンピュータ
3 クライアントコンピュータ
4 ネットワーク
21 更新プログラム
22 配信プログラム記憶手段
23 プログラム配信手段
24 更新情報一覧
30 クライアントプログラム
31 業務処理手段
32 プログラム監視手段
33 ネットワーク監視手段
34 プログラム受信手段
35 更新プログラム記憶手段
36 プログラム更新手段
241 ファイル名
242 グループ名
243 適用期限
244 リビジョン
310 定義情報
320 監視情報
330 負荷情報記憶部
331 負荷情報
340 優先順位情報
341 更新一覧記憶情報
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a system for distributing information such as programs and data from a server connected via a network to a client.
[0002]
[Prior art]
Conventionally, a program distribution system manages a program on a server computer and distributes the program to a client computer that needs the program. In such a system, when a program is distributed simultaneously by a plurality of client computers, network resources are intensively used, and it takes time to receive the program.
[0003]
Therefore, in order to reduce the load on the network, the server computer sends update information (revision) to the client computer, checks the update information, and requests only the target file that is frequently used on the client computer side from the server computer. In some cases, the load on the server computer is reduced, and the load on the network or the line is also reduced (see, for example, Patent Document 1).
[0004]
[Patent Document 1]
Japanese Patent No. 2859200
[0005]
However, in such a program distribution system, when a client computer receives a program or updates a program, the business program running on the client computer is stopped and received. And updates must be made. Therefore, it is necessary for the client computer to stop the business program during reception and update. The operator is in a state of being unusable during that time.
[0006]
On the other hand, if the program of the client computer is not properly updated at the required time, it may become inconsistent with other client computers or between processes, which may cause various problems.
[0007]
The present invention has been made in view of the above circumstances, and reduces the load on a network by distributing a program to a client, and furthermore, a program from a server without stopping business processing on the client. It is an object of the present invention to provide a system for receiving and updating data.
It is another object of the present invention to provide a system that can be updated at an appropriate time in a client, and that consistency between clients and between client processes can be measured.
[0008]
[Means for Solving the Problems]
In view of the above-described problem, the present invention employs the following configuration.
2. The program distribution system according to claim 1, wherein the server computer and the client computer are connected via a network, and an update program for updating a client program started by the client computer is stored in the server computer. In the program distribution system that distributes the update program to the client computer, the client computer receives the update program from the server computer in advance and stores the update program. A program monitoring unit that creates monitoring information that monitors the activation state of the client program, such as whether it is being activated or whether it is scheduled to be activated, based on the monitoring information, And it determines whether it is possible to update compliant program, and a program update unit for updating the update program stored in the update program storage means.
[0009]
In the configuration described above, the client program is updated by determining which client program is being started or scheduled to be started from the running job or process, so that the business process performed by the client computer is interrupted. It is possible to update the client program without using the client program.
[0010]
3. The program distribution system according to claim 2, wherein the server computer and the client computer are connected via a network, and the server computer stores an update program for updating a client program to be started on the client computer. Is distributed to the client computer, the client computer monitors the load on the network, and determines whether to receive the update program from the server computer based on the load on the network. Program receiving means, an update program storing means for storing the received update program, and whether or not the client program is running from a state of a job or a process, Program monitoring means for creating monitoring information for monitoring the activation state of the client program, such as whether there is a scheduled operation, and determining whether or not the client program can be updated based on the monitoring information, and storing the updated program Program updating means for updating with the update program stored in the means.
[0011]
In the above configuration, the update program is received from the server computer according to the network load status, so that the network load can be distributed. Further, from the running job or process in the client computer, it is determined from the client program that is running or the client program to be started, and the client program is updated with the update program received in advance. In addition, the client program can be updated without interrupting business processing.
[0012]
According to a third aspect of the present invention, in the program distribution system according to the first or second aspect, the program monitoring means obtains a status of the job or the process based on definition information storing a procedure for starting the client program. It is characterized by doing.
[0013]
In the above configuration, the definition of the procedure for activating the client program in accordance with the business process or the like allows the client program being activated and the activation schedule (such as a time schedule) to be known. Also, when there is no definition information, by monitoring the input and output of the running program from the outside, it is possible to infer a program that will be operated next (for example, a program that continues if screen input and output continues). Judge as screen input / output).
[0014]
According to a fourth aspect of the present invention, in the program distribution system according to the second or third aspect, the client computer receives information on an application expiration date of the update program from the server computer, and the program receiving means transmits the update information to the application expiration date. And receiving an update program based on the update program.
[0015]
In the above configuration, since the program is received based on the application deadline of the update program, the update of the program is performed at an appropriate time, and omission of the update program is prevented.
[0016]
According to a fifth aspect of the present invention, in the program distribution system according to any one of the first to third aspects, the client computer receives information on an application expiration date of the update program from the server computer, and the program update unit executes the application update. The client program is updated based on a time limit.
[0017]
In the above configuration, since the program is updated based on the application deadline of the update program, the program is updated by an appropriate time. In addition, it becomes possible to quickly update programs and distribute data.
[0018]
According to a sixth aspect of the present invention, in the program distribution system according to any one of the second to fifth aspects, the client computer determines a priority order for updating the client program with the update program for each client computer, and the program receiving means includes: An update program is received from the server computer based on the priority order.
[0019]
In the above configuration, the priority order for updating the client program is set in each client computer, and the update program is received according to the priority order, so that the program of the client computer is updated at an appropriate time.
[0020]
According to a seventh aspect of the present invention, in the program distribution system according to any one of the first to fifth aspects, the client computer determines a priority order for updating the client program with the update program for each client computer, The client program is updated based on the priority.
[0021]
In the above configuration, the priority order for updating the client program is set for each client computer, and the client program is updated according to the priority order. Therefore, the program of the client computer is updated at an appropriate time.
[0022]
According to an eighth aspect of the present invention, in the program distribution system according to the sixth or seventh aspect, the priority is set based on the frequency of use of a client program to be updated.
[0023]
In the above configuration, the higher the use frequency of the client program, the higher the priority of the update.
[0024]
According to a ninth aspect of the present invention, in the program distribution system according to any one of the sixth to eighth aspects, a priority is given to a client program which is not updated for a long time by the client computer.
[0025]
With the above configuration, it is possible to prevent a specific program from being updated for a long time.
[0026]
According to a tenth aspect of the present invention, in the program distribution system according to any one of the first to ninth aspects, the program updating means manages the update programs corresponding to the client programs that must be updated at the same time, and updates the programs at the same time. It is characterized in that the client programs to be updated are updated simultaneously with the corresponding update program.
[0027]
In the above configuration, programs that must be updated at the same time are managed so that inconsistency does not occur between the client programs to be updated, and at the same time, simultaneous processing of programs, data, and the like in an emergency (virus failure, system failure, etc.) is performed. Updates and simultaneous actions are possible.
[0028]
BEST MODE FOR CARRYING OUT THE INVENTION
An embodiment of a program distribution system according to the present invention will be described based on the drawings.
[0029]
As shown in FIG. 1, the program distribution system 1 includes a server computer 2, a client computer 3, and a network 4. The server computer 2 stores an update program 21 for the client computer. The client computer 3 receives the update program 21 from the server computer 2 based on the load on the network 4 and updates the client program from the status of the job or process. The client program is updated by determining whether or not the client program is possible.
[0030]
Here, the client program includes an application program, a library program, a system program, a data file, and an icon file. And a resource file, including a program loaded on the memory of the client computer and started, and a resource used by the program.
The process is a unit for starting the program, and is a state in which the program is loaded on the main storage, and input and output of an object module and a library program are prepared and started. The process includes a part of the process (thread) and a set of a plurality of processes (task). A job indicates a unit of processing such as which application program is started and in what order in order to perform business processing.
[0031]
The server computer 2 has a communication function and an auxiliary storage device such as a hard disk device, and has a function of managing files such as programs. The client computer 3 includes a communication function and a control unit, and can start various applications and business processes. The client computer 3 may be a personal computer or a portable terminal. Further, the network 4 can use a network such as a LAN and a WAN, as well as the Internet and an intranet.
[0032]
As shown in FIG. 2, the server computer 2 includes a distribution program storage unit 22 that stores the update program 21 of the client computer 3 and a program distribution unit 23 that transmits the update program 21 to the client computer 3.
[0033]
The distribution program storage means 22 stores an update information list 24 for managing the update programs 21 distributed to the client computer 3. As shown in FIG. 3, the update information list 24 records a file name 241 of the update program, a group name 242 for managing a group of files that need to be updated at the same timing, an application period 243, a revision 244, and the like. .
[0034]
Further, the program distribution unit 23 transmits the update information list 24 to the client computer 3, and further, when there is a transmission request of the update program 21 from the client computer 3 based on the update information list 24, the update program 21 Send it to computer 3.
[0035]
Further, the client computer 3 stores a client program 30 for performing various business processes. The client computer 3 executes a client program 30 based on job and process states of the client computer 3 based on job and process states. , A network monitoring means 33 for monitoring the network load of the network 4, a program receiving means 34 for receiving the update program 21 from the server computer 2 based on the network load, And an update program storage means 35 for storing the client program 30 and whether or not the client program 30 can be updated by checking the start schedule of the client program 30 to determine whether the program can be updated. Consisting of such as program update means 36 for updating the compliant program 30.
[0036]
The job processing unit 31 has a function of executing a job in accordance with definition information 310 that stores a procedure for starting the client program 30 such as an application program in order to perform a job process or the like.
[0037]
Here, the program monitoring unit 32, the network monitoring unit 33, the program receiving unit 34, and the program updating unit 36 are executed as independent processes, and exchange information with other processes by exchanging messages with each other. The case will be described below.
[0038]
As shown in FIG. 4, upon receiving an information provision request message transmitted from another process such as the program updating unit 36, the program monitoring unit 32, as shown in FIG. Information (file) or the current job information that has been started by directly inquiring the job control process and receiving an answer, or the order in which the client program 30 obtained from the definition information 310 is started (time schedule). , Etc., the information of the running job or process, or the job or process started recently, etc. is notified to the requester as the monitoring information 320.
[0039]
As shown in FIG. 5, the network monitoring unit 33 has a function of monitoring the load of the network 4 as needed and storing the network load information 331 in the load information storage unit 330. For example, in the case of a LAN connection using Ethernet (registered trademark), all packets other than packets destined for itself always flow on the network. Therefore, packets that pass through the network are always checked, and the load information 331 is read as load information. The load on the network 4 is grasped by storing it in the storage unit 330. Alternatively, the load of the network 4 can be grasped by observing the packet communication response time of the server computer 2 and the client computer 3 by the PING command. In addition, a probe (sensor) is installed in another segment, and another You may comprise so that the load information of a segment may be provided. In addition, when there is an information provision request message from another process, a function of notifying the requestor of the network load information 331 is provided.
[0040]
The program receiving unit 34 receives the update information list 24 from the server computer 2, requests the network monitoring unit 33 to provide information of the network load information 330, and, based on the network load information 331 and the update information list 24, A function is provided for determining whether to receive (hereinafter, download) the update program 21 from the server computer 2.
[0041]
Also, as shown in FIG. 6, the priority order for updating the client program 30 is set according to the conditions of each client computer 3, and the update program 21 is stored in the server in consideration of the priority order information 340. It may be determined whether or not to download from the computer 2. The priority is set based on the use frequency, for example, by storing the number of times the client program 30 has been activated, and increasing the higher the use frequency of the client program 30 to be updated. Alternatively, the priority may be set based on the importance of the client program 30 or the like. In addition, priorities may be assigned in the order of closest renewal expiration date, or a file having a large file size and which takes a long time to download may be assigned first, or a file having a small file size may be downloaded first. Further, in order to prevent the client program 30 from not being downloaded forever, the priority of the client program 30 that has not been downloaded may be appropriately increased.
[0042]
Alternatively, the update program 21 can be downloaded when the CPU usage or the auxiliary storage device input / output amount of the client computer is monitored and the CPU usage amount or the auxiliary storage device input / output amount is equal to or less than a specified value.
[0043]
The program updating unit 36 requests the program monitoring unit 32 to provide an information request in order to obtain the monitoring information 320, and the running job or process included in the monitoring information 320 or the job started recently From the information on the client program 30 and the process, it is determined whether the client program 30 is in an updatable state, based on whether the client program 30 is being executed or is scheduled to be executed recently. Further, a function of determining which client program 30 to update from the update information list 24 received from the server computer 2 and updating the client program 30 with the update program 21 stored in the update program storage means 35 is provided. Prepare. At this time, the job that activates the client program 30 to be updated is exclusively locked to perform the update.
[0044]
Further, it has a function of inquiring of the server computer 2 whether there is a new update program 21 or of receiving an update request from another process in the client computer 3 and updating the program. For example, it is connected to the server computer 2 as appropriate, and polls for a new update program 21 to update the program. Alternatively, a timer is used to periodically inquire whether there is a new update program 21 and update the program.
[0045]
Further, when an update request for the client program 30 is received from another process in the client computer 3 through inter-process communication or the like, the update is determined based on the monitoring information 320 and the update information list 24 to determine whether the update is possible. For example, there is a case where a job control process receives a notification from the job control process that the job is in an idling state (a state in which the user is not operating during a lunch break or the like) as an updatable (recommended) state and updates the job.
[0046]
If the update program 21 has not been downloaded in advance, the update program 21 may be downloaded from the server computer 2 and updated. Further, at the time of updating, it is desirable to update based on the application period 243 of the update information list 24 and the priority information 340.
[0047]
Here, the operation of each function of the program distribution system 1 will be described with reference to the flowcharts of FIGS.
[0048]
First, the operation of the program monitoring means 32 will be described with reference to the flowchart of FIG.
[0049]
When the process of the program monitoring means 32 is started, first, the process waits until an information provision request is received from another process (S300). When an information provision request message is received from another process (S301), the currently operating process is checked (S302). Further, the current job status is acquired from the definition information 310 (S303). Based on the status of the running process and the job, the monitoring information 320 of the job and the process that is expected to run in the near future is created (S304), and the monitoring information 320 is notified to the information providing request source (S305). The process returns to a state of waiting for an information provision request (S300).
[0050]
The operation of the network monitoring means 33 will be described with reference to the flowchart of FIG.
[0051]
The process of the network monitoring unit 33 always measures the load ratio of the network immediately after the startup, and stores the load information 331 in the load information storage unit 330 (S310). It is checked whether there is an information provision request message from another process (S311). If there is an information provision request (S312), the load information 331 stored in the load information storage unit 330 is notified to the information provision request source ( In step S313, the process returns to the measurement of the network load ratio (S310).
[0052]
The operation of the program receiving means 34 will be described with reference to the flowchart of FIG.
[0053]
The process of the program receiving means 34 acquires the update information list 24 from the server computer 2 immediately after the start, and records it in the update list storage information 341 (S320). Therefore, when there is no update program 21 for updating the client program 30 of the client computer 3 (S321), after temporarily suspending, the update information list 24 is obtained (S320). If the update program 21 exists (S321), the priority of downloading the update program 21 is added with reference to the usage frequency of the client program 30 (S322).
[0054]
Therefore, the information providing request message is notified to the network monitoring unit 33 (S323), and the load information 331 is acquired (S324). It is determined whether to download the update program 21 in consideration of the load information 331 and the application period 243 of the update information list 24 (S325).
[0055]
If the timing is appropriate for downloading (S326), the update program 21 is downloaded from the server computer 2 and stored in the update program storage means 35. When the download is completed, the program returns to the initial state and checks whether the update program 21 exists (S327). If the download has not been performed, the process returns to the initial state and checks whether the update program 21 exists (S320). The update list storage information 341 records whether the update program has been downloaded.
[0056]
As described above, since the update program is downloaded by monitoring the network load, the network load can be distributed, and the load of the client computer at the time of downloading can be reduced.
[0057]
The operation of the program updating means 36 will be described with reference to the flowcharts of FIGS.
[0058]
The process of the program update unit 36 checks whether or not the update program 21 exists based on the update list storage information 341 immediately after the startup (immediately after the system startup). Before starting, all are forcibly updated (S330). When the update program 21 has not been downloaded, the client program 30 is requested to download the update program 21 to update the client program 30.
[0059]
Next, the program receiving means 34 checks with the server computer 2 whether there is an update request for the new update program 21 in the server computer 2 (S331). Alternatively, when an update request is received from another process, for example, when the process is congested or when the LAN is congested (freeze or power down, etc.), a A message is issued to confirm whether the process is normal or not, and a dummy request for program update is issued. It is checked whether there is an update request (S332). If there is a request to update (S333), the update list storage information 341 (S334).
[0060]
Therefore, referring to the update list storage information 341, if there is no update program 21 (S335), the process returns to the update request confirmation state (S331). If there is the update program 21 (S335), the program monitoring unit 32 is requested to provide information (S336), and the monitoring information 320 is acquired (S337). Therefore, it is determined from the monitoring information 320 whether the client program 30 can be updated in units of the client program 30 (S338). If the update is possible (S339), the job related to the client program 30 to be updated is exclusively locked (S338). (S340), and update (S341). When updating, all the groups 242 of the group of files that need to be updated at the same timing are updated.
[0061]
When the update is completed, the exclusive lock is released (S342), and, for example, as shown in FIG. 12, the data of the updated program (abc in the example of FIG. 12) is deleted from the update list storage information 341 and updated. The state returns to the request confirmation state (S331). The program updating unit 36 updates the program according to the application term 243, the priority information 340, and the like, similarly to the program receiving unit 34.
[0062]
As described above, the update of the client program can be performed so as not to disturb the executing client program such as business processing.
[0063]
As described above, the reception of the update information list of the update program and the setting of the priority of updating the program of each client computer are performed by the program receiving means. It should be done. Alternatively, it may be determined in advance and set.
[0064]
【The invention's effect】
As described in detail above, since the process and the job are managed and the program is updated, the business process is not hindered.
[0065]
Further, since the program is downloaded during the idle time of the client computer, the network load can be distributed without the download being concentrated in the same time zone. Further, since the download is performed in view of the network load, the download load on the client computer can be reduced.
[0066]
In addition, the application deadline and the priority can be checked and updated by a necessary time, so that consistency of the entire system can be maintained.
[0067]
Further, by managing the related programs to be updated at the same time, the programs can be updated so as to maintain consistency.
[0068]
Furthermore, the program distribution side can issue a distribution instruction in advance without worrying about time or operation work on the client side.
[Brief description of the drawings]
FIG. 1 is a schematic diagram of a program distribution system.
FIG. 2 is a block diagram of a program distribution system.
FIG. 3 is an example of an update information list.
FIG. 4 is a diagram for explaining a program monitoring unit.
FIG. 5 is a diagram for explaining monitoring of a network load;
FIG. 6 is an example of priority information.
FIG. 7 is a flowchart for explaining the operation of the program monitoring means.
FIG. 8 is a flowchart for explaining the operation of the network monitoring means.
FIG. 9 is a flowchart for explaining the operation of the program receiving means.
FIG. 10 is a flowchart for explaining the operation of a program updating unit (part 1).
FIG. 11 is a flowchart for explaining the operation of the program updating means (part 2).
FIG. 12 is a diagram for explaining a program update and a change of an update information list.
[Explanation of symbols]
1 Program distribution system
2 server computer
3 Client computer
4 Network
21 Update Program
22 Distribution program storage means
23 Program distribution means
24 Update information list
30 client programs
31 Business processing means
32 Program monitoring means
33 Network monitoring means
34 Program receiving means
35 Update program storage means
36 Program update means
241 file name
242 Group name
243 Application period
244 revision
310 Definition information
320 Monitoring information
330 Load information storage unit
331 Load information
340 Priority information
341 Update list storage information

Claims (10)

サーバコンピュータとクライアントコンピュータとがネットワークを介して接続され、前記クライアントコンピュータで起動するクライアントプログラムを更新するための更新プログラムを前記サーバコンピュータに記憶して、上記更新プログラムを前記クライアントコンピュータに配信するプログラム配信システムにおいて、
前記クライアントコンピュータには、
前記更新プログラムを前記サーバコンピュータから予め受信して記憶する更新プログラム記憶手段と、
ジョブやプロセスなどの状態から、前記クライアントプログラムが起動中であるかや、起動予定があるかなどのクライアントプログラムの起動状態を監視した監視情報を作成するプログラム監視手段と、
前記監視情報に基づき、前記クライアントプログラムの更新が可能か否かを判断して、前記更新プログラム記憶手段に記憶している更新プログラムで更新を行うプログラム更新手段と、を備えたプログラム配信システム。
A server computer and a client computer which are connected via a network, store an update program for updating a client program started on the client computer in the server computer, and distribute the update program to the client computer In the system,
In the client computer,
Update program storage means for receiving and storing the update program in advance from the server computer,
From a state of a job or a process, a program monitoring unit that creates monitoring information that monitors the activation state of the client program, such as whether the client program is being activated or scheduled to be activated,
A program distribution system comprising: a program update unit that determines whether or not the client program can be updated based on the monitoring information and updates the client program with an update program stored in the update program storage unit.
サーバコンピュータとクライアントコンピュータとがネットワークを介して接続され、前記クライアントコンピュータで起動するクライアントプログラムを更新するための更新プログラムを前記サーバコンピュータに記憶して、上記更新プログラムを前記クライアントコンピュータに配信するプログラム配信システムにおいて、
前記クライアントコンピュータには、
前記ネットワークの負荷を監視して、上記ネットワークの負荷に基づいて、前記更新プログラムを前記サーバコンピュータから受信するか否かを判断するプログラム受信手段と、
前記受信した更新プログラムを記憶する更新プログラム記憶手段と、
ジョブやプロセスなどの状態から、前記クライアントプログラムが起動中であるかや、起動予定があるかなどのクライアントプログラムの起動状態を監視した監視情報を作成するプログラム監視手段と、
前記監視情報に基づき、前記クライアントプログラムの更新が可能か否かを判断して、前記更新プログラム記憶手段に記憶している更新プログラムで更新を行うプログラム更新手段と、を備えたプログラム配信システム。
A server computer and a client computer which are connected via a network, store an update program for updating a client program started on the client computer in the server computer, and distribute the update program to the client computer In the system,
In the client computer,
A program receiving unit that monitors a load on the network and determines whether to receive the update program from the server computer based on the load on the network;
Update program storage means for storing the received update program,
From a state of a job or a process, a program monitoring unit that creates monitoring information that monitors the activation state of the client program, such as whether the client program is being activated or scheduled to be activated,
A program distribution system comprising: a program update unit that determines whether or not the client program can be updated based on the monitoring information and updates the client program with an update program stored in the update program storage unit.
請求項1または2記載のプログラム配信システムにおいて、
前記プログラム監視手段では、前記クライアントプログラムを起動する手順を記憶した定義情報に基づいて、前記ジョブやプロセスなどの状態を取得することを特徴とするプログラム配信システム。
The program distribution system according to claim 1 or 2,
The program distribution system according to claim 1, wherein the program monitoring unit acquires a status of the job or the process based on definition information storing a procedure for starting the client program.
請求項2または3記載のプログラム配信システムにおいて、
前記クライアントコンピュータでは、前記更新プログラムの適用期限に関する情報を前記サーバコンピュータから受信し、前記プログラム受信手段では、上記適用期限に基づき更新プログラムを受信することを特徴とするプログラム配信システム。
The program distribution system according to claim 2 or 3,
A program distribution system, wherein the client computer receives information on the application period of the update program from the server computer, and the program receiving means receives the update program based on the application period.
請求項1〜3いずれか記載のプログラム配信システムにおいて、
前記クライアントコンピュータでは、前記更新プログラムの適用期限に関する情報を前記サーバコンピュータから受信し、前記プログラム更新手段では、上記適用期限に基づきクライアントプログラムの更新を行うことを特徴とするプログラム配信システム。
The program distribution system according to any one of claims 1 to 3,
The program distribution system, wherein the client computer receives information on an application expiration date of the update program from the server computer, and the program update unit updates the client program based on the application expiration date.
請求項2〜5いずれか記載のプログラム配信システムにおいて、
前記クライアントコンピュータでは、クライアントコンピュータ毎にクライアントプログラムを前記更新プログラムで更新する優先順位を決め、前記プログラム受信手段では、上記優先順位に基づいて更新プログラムを前記サーバコンピュータから受信することを特徴とするプログラム配信システム。
The program distribution system according to any one of claims 2 to 5,
In the client computer, a priority order for updating the client program with the update program is determined for each client computer, and the program receiving means receives the update program from the server computer based on the priority order. Delivery system.
請求項1〜5いずれか記載のプログラム配信システムにおいて、
前記クライアントコンピュータでは、クライアントコンピュータ毎にクライアントプログラムを前記更新プログラムで更新する優先順位を決め、前記プログラム更新手段では、上記優先順位に基づいてクライアントプログラムを更新することを特徴とするプログラム配信システム。
The program distribution system according to any one of claims 1 to 5,
The program distribution system, wherein the client computer determines a priority for updating the client program with the update program for each client computer, and the program updating means updates the client program based on the priority.
請求項6または7記載のプログラム配信システムにおいて、
前記優先順位は、更新するクライアントプログラムの使用頻度に基づいて優先順位を設定することを特徴とするプログラム配信システム。
The program distribution system according to claim 6 or 7,
The program distribution system is characterized in that the priority is set based on the frequency of use of a client program to be updated.
請求項6〜8いずれか記載のプログラム配信システムにおいて、
前記クライアントコンピュータで長時間更新されないクライアントプログラムの優先順位を上げることを特徴とするプログラム配信システム。
The program distribution system according to any one of claims 6 to 8,
A program distribution system for increasing the priority of a client program that is not updated for a long time by the client computer.
請求項1〜9いずれか記載のプログラム配信システムにおいて、
前記プログラム更新手段では、同時に更新しなければならないクライアントプログラムに該当する前記更新プログラムを管理し、上記同時に更新しなければならないクライアントプログラムを該当する前記更新プログラムで一斉に更新することを特徴とするプログラム配信システム。
The program distribution system according to any one of claims 1 to 9,
The program updating means manages the update programs corresponding to the client programs that need to be updated at the same time, and updates the client programs that need to be updated at the same time with the corresponding update programs. Delivery system.
JP2002372427A 2002-12-24 2002-12-24 Program distribution system Expired - Lifetime JP4430296B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002372427A JP4430296B2 (en) 2002-12-24 2002-12-24 Program distribution system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002372427A JP4430296B2 (en) 2002-12-24 2002-12-24 Program distribution system

Publications (2)

Publication Number Publication Date
JP2004206260A true JP2004206260A (en) 2004-07-22
JP4430296B2 JP4430296B2 (en) 2010-03-10

Family

ID=32811035

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002372427A Expired - Lifetime JP4430296B2 (en) 2002-12-24 2002-12-24 Program distribution system

Country Status (1)

Country Link
JP (1) JP4430296B2 (en)

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007079936A (en) * 2005-09-14 2007-03-29 Hitachi Ltd Control method of job processing system, job processing system, control method of management device, management device and program
JP2007164371A (en) * 2005-12-12 2007-06-28 Toshiba Corp Software management system
WO2007097392A1 (en) * 2006-02-27 2007-08-30 Kyocera Corporation Communication system, communication device and management server device
JP2007310690A (en) * 2006-05-19 2007-11-29 Sharp Corp Update method of firmware, program, storage medium
JP2008033836A (en) * 2006-07-31 2008-02-14 Fujitsu Ltd Transmission device and software automatic update method
JP2008046708A (en) * 2006-08-11 2008-02-28 Sharp Corp Data processor, program management device, control program update method, program management method, program management system, update program, and recording medium
JP2008541219A (en) * 2005-05-06 2008-11-20 アイオセル カンパニー リミテッド Data structure of flash memory having system area having variable size capable of data update, USB memory device having flash memory, and method for controlling system area
JP2009104433A (en) * 2007-10-24 2009-05-14 Hitachi Software Eng Co Ltd Update program distribution system
WO2010029602A1 (en) * 2008-09-12 2010-03-18 富士通株式会社 Software patch application method, program, and device
JP2010198630A (en) * 2010-04-16 2010-09-09 Sharp Corp Program management system
JP2010278800A (en) * 2009-05-29 2010-12-09 Hitachi Ltd Content processor and content processing method
JP2011085975A (en) * 2009-10-13 2011-04-28 Fuji Xerox Co Ltd Software resource using system, management device, and program for the same
JP2011100464A (en) * 2010-11-24 2011-05-19 Konica Minolta Business Technologies Inc Program update management apparatus
JP2011204239A (en) * 2010-03-25 2011-10-13 Samsung Electronics Co Ltd Print control terminal device, and method for upgrading firmware of image forming apparatus that uses the same
JP2012194987A (en) * 2012-05-21 2012-10-11 Kyocera Corp Communication system, software updating method, communication apparatus, and program
JP2014167692A (en) * 2013-02-28 2014-09-11 Brother Ind Ltd Update management program, update management device, and image processing system
JP2015005061A (en) * 2013-06-19 2015-01-08 株式会社リコー Communication device, communication system, communication method, and communication program
JPWO2016063363A1 (en) * 2014-10-22 2017-08-03 富士機械製造株式会社 Feeder management apparatus and management method
JP2017162513A (en) * 2017-06-08 2017-09-14 株式会社リコー Communication device, communication system, communication method, and communication program
WO2017170905A1 (en) * 2016-03-30 2017-10-05 株式会社リクルートホールディングス Information processing system, information processing method, and information processing program
US10237345B2 (en) 2015-09-03 2019-03-19 Lsis Co., Ltd. Apparatus and method for data synchronizing of energy management system

Cited By (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008541219A (en) * 2005-05-06 2008-11-20 アイオセル カンパニー リミテッド Data structure of flash memory having system area having variable size capable of data update, USB memory device having flash memory, and method for controlling system area
JP2007079936A (en) * 2005-09-14 2007-03-29 Hitachi Ltd Control method of job processing system, job processing system, control method of management device, management device and program
JP2007164371A (en) * 2005-12-12 2007-06-28 Toshiba Corp Software management system
US8645943B2 (en) 2006-02-27 2014-02-04 Kyocera Corporation Communication system, communication device, and management server device
WO2007097392A1 (en) * 2006-02-27 2007-08-30 Kyocera Corporation Communication system, communication device and management server device
JP2007226740A (en) * 2006-02-27 2007-09-06 Kyocera Corp Communication system, software updating method, communication device, management server device, and program
JP2007310690A (en) * 2006-05-19 2007-11-29 Sharp Corp Update method of firmware, program, storage medium
JP2008033836A (en) * 2006-07-31 2008-02-14 Fujitsu Ltd Transmission device and software automatic update method
JP2008046708A (en) * 2006-08-11 2008-02-28 Sharp Corp Data processor, program management device, control program update method, program management method, program management system, update program, and recording medium
US8010958B2 (en) 2006-08-11 2011-08-30 Sharp Kabushiki Kaisha Data processing apparatus, program managing apparatus, control program updating method, program managing method, program managing system, updating program, and recording medium
JP2009104433A (en) * 2007-10-24 2009-05-14 Hitachi Software Eng Co Ltd Update program distribution system
JP5206792B2 (en) * 2008-09-12 2013-06-12 富士通株式会社 Software patch application method, program, and apparatus
WO2010029602A1 (en) * 2008-09-12 2010-03-18 富士通株式会社 Software patch application method, program, and device
JP2010278800A (en) * 2009-05-29 2010-12-09 Hitachi Ltd Content processor and content processing method
JP2011085975A (en) * 2009-10-13 2011-04-28 Fuji Xerox Co Ltd Software resource using system, management device, and program for the same
JP2011204239A (en) * 2010-03-25 2011-10-13 Samsung Electronics Co Ltd Print control terminal device, and method for upgrading firmware of image forming apparatus that uses the same
JP2010198630A (en) * 2010-04-16 2010-09-09 Sharp Corp Program management system
JP2011100464A (en) * 2010-11-24 2011-05-19 Konica Minolta Business Technologies Inc Program update management apparatus
JP2012194987A (en) * 2012-05-21 2012-10-11 Kyocera Corp Communication system, software updating method, communication apparatus, and program
JP2014167692A (en) * 2013-02-28 2014-09-11 Brother Ind Ltd Update management program, update management device, and image processing system
JP2015005061A (en) * 2013-06-19 2015-01-08 株式会社リコー Communication device, communication system, communication method, and communication program
JPWO2016063363A1 (en) * 2014-10-22 2017-08-03 富士機械製造株式会社 Feeder management apparatus and management method
US10237345B2 (en) 2015-09-03 2019-03-19 Lsis Co., Ltd. Apparatus and method for data synchronizing of energy management system
WO2017170905A1 (en) * 2016-03-30 2017-10-05 株式会社リクルートホールディングス Information processing system, information processing method, and information processing program
JP2017162513A (en) * 2017-06-08 2017-09-14 株式会社リコー Communication device, communication system, communication method, and communication program

Also Published As

Publication number Publication date
JP4430296B2 (en) 2010-03-10

Similar Documents

Publication Publication Date Title
JP2004206260A (en) Program delivery system
JP3963692B2 (en) Power control method for a plurality of information processing apparatuses, information processing apparatus, and program
JP4663497B2 (en) Information processing system and information processing apparatus assignment management method
JP2004206390A (en) Software management device and software management server
JP2007080171A (en) Apparatus and method for managing device, program, and recording medium
JP2006024187A (en) Communication device, apparatus message processing program and recording medium
CN108984290A (en) Method for scheduling task and system
JP2004227132A (en) System and method for backing up data
JP2001257688A (en) Network device
JP2008176773A (en) Information processor, information processing method and program for executing the method
JP2005309519A (en) Telegram relay program and device
JP7077840B2 (en) Message processing system, message processing device and message processing method
TW201737108A (en) Method for copying clustered data, and method and device for determining priority
JP2001256207A (en) Computer system and recording medium
JP2005346257A (en) Information processing apparatus and device
JP5530878B2 (en) Data replication management method in distributed system
JP2011123681A (en) Failover control method
JP2005025481A (en) Message communication method and its object computer system
JP4723686B2 (en) Information processing system and information processing apparatus assignment management method
JP2004246692A (en) Server monitoring system
JPH11194915A (en) Plural printer management device for network system
JPH0512039A (en) Trouble detecting mechanism
WO2013145131A1 (en) Management control device, information processing system and management control method
JPH113230A (en) Job information inquiry/display system
CN114780170A (en) Container resource configuration method, device, equipment and storage medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20051110

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080409

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080916

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081031

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

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

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

Free format text: PAYMENT UNTIL: 20121225

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4430296

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

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term