JP2002049486A - プログラム実行方法及びこれを用いたシステム - Google Patents

プログラム実行方法及びこれを用いたシステム

Info

Publication number
JP2002049486A
JP2002049486A JP2000217473A JP2000217473A JP2002049486A JP 2002049486 A JP2002049486 A JP 2002049486A JP 2000217473 A JP2000217473 A JP 2000217473A JP 2000217473 A JP2000217473 A JP 2000217473A JP 2002049486 A JP2002049486 A JP 2002049486A
Authority
JP
Japan
Prior art keywords
program
user interface
client
machine
worker
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
JP2000217473A
Other languages
English (en)
Other versions
JP3577714B2 (ja
Inventor
Takeshi Inoue
健 井上
Yoshinori Ubukawa
昌憲 生川
Taishin Hino
泰臣 日野
Koji Hayashi
康二 林
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.)
Yokogawa Electric Corp
Original Assignee
Yokogawa Electric Corp
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 Yokogawa Electric Corp filed Critical Yokogawa Electric Corp
Priority to JP2000217473A priority Critical patent/JP3577714B2/ja
Publication of JP2002049486A publication Critical patent/JP2002049486A/ja
Application granted granted Critical
Publication of JP3577714B2 publication Critical patent/JP3577714B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

(57)【要約】 【課題】 柔軟性が高く様々なプログラムを動作させる
ことが可能なプログラム実行方法及びこれを用いたシス
テムを実現する。 【解決手段】 ネットワークを介してプログラムを配信
して動作させるプログラム実行方法において、リモート
側で、管理プログラムがプログラムとユーザインターフ
ェース・プログラムとを管理すると共にクライアント側
のプロセスの生成依頼に基づきリモート側のプロセスが
ログラムをダウンロードして実行しておき、クライアン
ト側のプロセスが管理プログラムと通信をしてーザイン
ターフェース・プログラムをダウンロードして実行させ
た上でユーザインターフェース・プログラムを介してプ
ログラムとの間で通信を行うことにより、仮想的に前記
プログラムをクライアント側で実行させる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ネットワークを介
してプログラムを配信して動作させるプログラム実行方
法及びこれを用いたシステムに関し、特に柔軟性が高く
様々なプログラムを実行させることが可能なプログラム
実行方法及びこれを用いたシステムに関する。
【0002】
【従来の技術】従来のネットワークを介してプログラム
を配信して動作させるプログラム実行方法には大きく2
つの種類に分類される。すなわち、プログラムファイル
をユーザ側のマシンに配信して実行する方法、及び、動
的にプログラムをユーザ側のマシンのメモリ上で動作さ
せる方法である。
【0003】前者の方法としては、例えば、FTP(Fi
le Transfer Protocol)等のファイル転送ソフトを用い
てプログラムファイルをユーザ側のマシンに転送して実
行したり、ユーザがブラウザを用いてWebサーバから
プログラムファイルをダウンロードして実行する。
【0004】また、後者の方法としては、例えば、ユー
ザ側からの動的なプログラム実行命令によりWebサー
バからプログラムの実行部分がユーザ側のマシンのメモ
リ上にダウンロードされ実行される。
【0005】図9は後者の方法であるJava(Sun Mi
crosystems社が開発したオブジェクト指向のインタープ
リタ言語。Sun Microsystems社の商標若しくは登録商
標。)アプレットを用いたプログラム動作方法の一例を
示す構成ブロック図である。図9において1はWebサ
ーバ、2はサーバサイトに存在するコンピュータ等のマ
シン、3はクライアントマシン、4はクライアントサイ
トに存在するマシンである。また、50はサーバサイト
を、51はクライアントサイトをそれぞれ示している。
【0006】ユーザ側からの動的なプログラム実行命令
が発せされると、Webサーバ1から図9中”AP0
1”に示すようなアプレットが図9中”DL01”に示
すようにクライアントマシン3のメモリ上にダウンロー
ドされて動作する。
【0007】また、現在では多様な状況の変化に対応し
てシステム自体が柔軟に変化、言い換えれば、リモート
で即座に任意のプログラムを実行することが可能で、必
要に応じて使いたい機能の随時追加が可能で、使用済み
の機能の即時削除が可能であるプログラム実行方法及び
これを用いたシステムが必要になっている。
【0008】
【発明が解決しようとする課題】しかし、前述した前者
の従来例では、クライアントマシンに使用済みのプログ
ラムファイルが残存してしまったりすると言った問題点
があった。また、後者の従来例ではブラウザの動作が不
安定であったり、アプレットの通信先がWebサーバに
限定されてしまい柔軟性に欠けると言った問題点があっ
た。
【0009】例えば、図9中”AP02”に示すクライ
アントマシン3のメモリ上で実行されているアプレット
は図9中”AE01”に示すWebサーバ1への通信の
みが可能であり、図9中”AD01”、”AD02”及
び”AD03”と言ったサーバサイト50側に存在する
マシン2、クライアントサイト51側に存在するマシン
4及びクライアントマシン3自身のローカルディスクに
はアクセスできない。
【0010】すなわち、アプレットを用いた場合であっ
てもリモートで即座に任意のプログラムを実行したり、
必要に応じて使いたい機能を随時追加・削除することが
困難であると言った問題点があった。従って本発明が解
決しようとする課題は、柔軟性が高く様々なプログラム
を動作させることが可能なプログラム実行方法及びこれ
を用いたシステムを実現することにある。
【0011】
【課題を解決するための手段】このような課題を達成す
るために、本発明のうち請求項1記載の発明は、ネット
ワークを介してプログラムを配信して動作させるプログ
ラム実行方法において、リモート側で、管理プログラム
が前記プログラムと、前記プログラムとの通信を行うユ
ーザインターフェース・プログラムとを管理すると共に
クライアント側のプロセスの生成依頼に基づきリモート
側のプロセスが前記プログラムをダウンロードして実行
しておき、クライアント側の前記プロセスが前記管理プ
ログラムと通信をして前記ユーザインターフェース・プ
ログラムをダウンロードして実行させた上で前記ユーザ
インターフェース・プログラムを介して前記プログラム
との間で通信を行うことにより、仮想的に前記プログラ
ムをクライアント側で実行させることにより、柔軟性が
高く様々なプログラムを動作させることが可能になる。
【0012】請求項2記載の発明は、請求項1記載の発
明であるプログラム実行方法において、前記プログラム
と前記ユーザインターフェース・プログラムとが一対一
に対応づけられて管理されることにより、柔軟性が高く
様々なプログラムを動作させることが可能になる。
【0013】請求項3記載の発明は、請求項1記載の発
明であるプログラム実行方法において、前記プログラム
と複数の前記ユーザインターフェース・プログラムとが
対応づけられて管理されることにより、クライアントマ
シンのスペックに対応したGUIを適宜選択できるの柔
軟性が向上する。
【0014】請求項4記載の発明は、ネットワークを介
してプログラムを配信して動作させるプログラム実行方
法を用いたシステムにおいて、前記プログラムと、前記
プログラムとの通信を行うユーザインターフェース・プ
ログラムとを管理すると共にクライアント側のプロセス
の生成依頼に基づき前記プログラムをプロセス中にダウ
ンロードして実行するサーバと、前記サーバと通信をす
ると共に前記ユーザインターフェース・プログラムを前
記クライアント側のプロセス中にダウンロードして実行
させた上で前記ユーザインターフェース・プログラムを
介して前記プログラムとの間で通信を行うクライアント
マシンとを備えたことにより、柔軟性が高く様々なプロ
グラムを動作させることが可能になる。
【0015】請求項5記載の発明は、ネットワークを介
してプログラムを配信して動作させるプログラム実行方
法を用いたシステムにおいて、前記プログラムと、前記
プログラムとの通信を行うユーザインターフェース・プ
ログラムとを管理するサーバと、クライアント側のプロ
セスの生成依頼に基づき前記プログラムをプロセス中に
ダウンロードして実行するリモートマシンと、前記サー
バと通信をすると共に前記ユーザインターフェース・プ
ログラムを前記クライアント側のプロセス中にダウンロ
ードして実行させた上で前記ユーザインターフェース・
プログラムを介して前記プログラムとの間で通信を行う
クライアントマシンとを備えたことにより、柔軟性が高
く様々なプログラムを動作させることが可能になる。
【0016】請求項6記載の発明は、ネットワークを介
してプログラムを配信して動作させるプログラム実行方
法を用いたシステムにおいて、前記プログラムと、前記
プログラムとの通信を行うユーザインターフェース・プ
ログラムとが格納されたWebサーバと、前記プログラ
ム及び前記ユーザインターフェース・プログラムの登録
管理を行う管理サーバと、クライアント側のプロセスの
生成依頼に基づき前記プログラムをプロセス中にダウン
ロードして実行するリモートマシンと、前記管理サーバ
と通信をすると共に前記Webサーバから前記ユーザイ
ンターフェース・プログラムを前記クライアント側のプ
ロセス中にダウンロードして実行させた上で前記ユーザ
インターフェース・プログラムを介して前記プログラム
との間で通信を行うクライアントマシンとを備えたこと
により、柔軟性が高く様々なプログラムを動作させるこ
とが可能になる。
【0017】請求項7記載の発明は、請求項4乃至請求
項6記載の発明であるシステムにおいて、前記プログラ
ムと前記ユーザインターフェース・プログラムとが一対
一に対応づけられて管理されることにより、柔軟性が高
く様々なプログラムを動作させることが可能になる。
【0018】請求項8記載の発明は、請求項4乃至請求
項6記載の発明であるシステムにおいて、前記プログラ
ムと複数の前記ユーザインターフェース・プログラムと
が対応づけられて管理されることにより、クライアント
マシンのスペックに対応したGUIを適宜選択できるの
柔軟性が向上する。
【0019】請求項9記載の発明は、請求項4乃至請求
項6記載の発明であるシステムにおいて、前記クライア
ントマシンが前記プログラムをダウンロードする前記リ
モートマシンを選択することにより、前記プログラムの
実行先を適宜選択できるの柔軟性が向上する。
【0020】請求項10記載の発明は、請求項4乃至請
求項6記載の発明であるシステムにおいて、前記プログ
ラムが、機器のリモート診断用のプログラムであること
により、機器のリモート診断が可能になる。
【0021】請求項11記載の発明は、請求項4乃至請
求項6記載の発明であるシステムにおいて、前記プログ
ラムが、データ解析表示用のプログラムであることによ
り、データビューアとすることが可能になる。
【0022】請求項12記載の発明は、請求項4乃至請
求項6記載の発明であるシステムにおいて、前記プログ
ラムが、ユーザに配信されることにより、プログラムの
自動配信が可能になる。
【0023】請求項13記載の発明は、請求項4乃至請
求項6記載の発明であるシステムにおいて、前記プログ
ラムが、システムの点検プログラムであることにより、
システム起動点検及び定期点検が可能になる。
【0024】請求項14記載の発明は、請求項4乃至請
求項6記載の発明であるシステムにおいて、前記プログ
ラムが、各機器に対する指示を行うプログラム若しくは
機器を監視するプログラムであることにより、広域監視
や異常処理が可能になる。
【0025】請求項15記載の発明は、請求項5及び請
求項6記載の発明であるシステムにおいて、前記クライ
アントマシン及び前記リモートマシンが、ダウンロード
してきた前記ユーザインターフェース・プログラム及び
前記プログラムと関連情報を記憶するキャッシュを有す
ることにより、ネットワーク上のトラフィック集中を緩
和することができる。
【0026】請求項16記載の発明は、請求項15記載
の発明であるシステムにおいて、前記クライアントマシ
ンが、前記キャッシュに実行したい前記ユーザインター
フェース・プログラムが存在する場合に設定時刻が経過
するまで前記キャッシュに記憶された前記ユーザインタ
ーフェース・プログラムを使用することにより、ネット
ワーク上のトラフィック集中を緩和することができる。
【0027】請求項17記載の発明は、請求項16記載
の発明であるシステムにおいて、前記クライアントマシ
ンが、前記キャッシュに記憶された前記ユーザインター
フェース・プログラムを使用する場合に前記プログラム
及び前記ユーザインターフェース・プログラムとを管理
するサーバを介して前記リモートマシンにその情報を伝
えることにより、クライアントマシンとリモートマシン
との間でバージョンの異なる前記ユーザインターフェー
ス・プログラム及び前記プログラムが起動されることが
防止される。
【0028】
【発明の実施の形態】以下本発明を図面を用いて詳細に
説明する。図1は本発明に係るプログラム実行方法を用
いたシステムの一実施例を示す構成ブロック図である。
図1において5は管理サーバ、6はWebサーバ、7は
クライアントマシン、8及び9はリモートマシンであ
る。
【0029】管理サーバ5、Webサーバ6、クライア
ントマシン7、リモートマシン8及び9は図示しないネ
ットワークにより相互に接続される。
【0030】ここで、図1に示す実施例の動作を説明す
る。管理サーバ5はWebサーバ6に格納されている図
1中”WA11”,”WA12”及び”WA13”に示
すプログラムである”Worker(以下、単にWor
kerと呼ぶ。)”をネットワークを介してリモートマ
シン8及び9にダウンロードさせる。
【0031】これと同時に、Webサーバ6に格納され
ている図1中”WG11”,”WG12”及び”WG1
3”に示すWorkerと通信をしてユーザからの指示
を与えたり、Workerからのデータを表示するユー
ザインターフェース・プログラムである”Worker
GUI(以下、単にWorkerGUIと呼ぶ。)”を
クライアントマシン7にダウンロードさせる。
【0032】そして、ユーザはクライアントマシン7で
動的に実行されるWorkerGUIを用いてリモート
マシン8及び9で実行されているWorkerとの間で
通信を行うことにより仮想的にWorkerをクライア
ントマシン7上で実行させることができる。
【0033】この結果、クライアントマシン7に使用済
みのプログラムファイルが残存せず、リモートマシン8
及び9上で実行されているWorkerを選択すること
により、柔軟性が高く様々なプログラムを動作させるこ
とが可能になる。
【0034】さらに、図1に示す実施例の動作を図2、
図3、図4、図5及び図6を用いて詳細に説明する。図
2はWorker及びWorkerGUIの登録等を説
明する説明図、図3はクライアントマシン7の動作を説
明するフロー図、図4は管理サーバ5の動作を説明する
フロー図、図5はリモートマシン8及び9の動作を説明
するフロー図である。
【0035】但し、以下の説明においては”WG11”
及び”WA11”はプログラム本体ではなくクラスファ
イルとして取り扱う。
【0036】図2において5及び6と”WG11”、”
WG12”、”WG13”、”WA11”、”WA1
2”及び”WA13”は図1と同一符号を付してあり、
10はWorker及びWorkerGUIの開発等を
行うマシンである。
【0037】管理者は、予め、図2中”NR21”に示
すようにマシン10で作成したクライアントが使用する
可能性のある様々なWorkerのクラスを管理サーバ
5上で稼動している管理プログラムであるWorker
Managerに登録する。また、図2中”UL21”
に示すようにWorkerクラス及び対応するWork
erGUIクラスのクラスペアをWebサーバ6に格納
しておく。
【0038】先ず第1にクライアントマシン7では、図
3中”S001”においてクライアントマシン7は管理
サーバ5で稼動されているWorkerManager
との間で通信等を行う予めインストールされているプロ
セスであるWorkerManagerGUIを起動す
る。
【0039】図3中”S002”においてクライアント
マシン7はWorkerManagerGUIを介して
WorkerManagerに登録されているWork
erクラスから使用したいWorkerクラスを選択
し、このWorkerクラスをクラスダウンロードさせ
るリモートマシンを選択し、WorkerManage
rに生成を依頼する。
【0040】例えば、図1中”RQ11”に示すように
WorkerManagerに対して、図1中”WA1
1”及び”WA12”のWorkerクラスをそれぞれ
リモートマシン9及び8にクラスダウンロードさせるよ
うに選択する。
【0041】図3中”S003”においてクライアント
マシン7は選択したWorkerクラスに対応するWo
rkerGUIクラスの格納先であるWebサーバ6の
アドレスをWorkerManagerから通知され、
このアドレスのWebサーバ6にアクセスして、Wor
kerGUIクラスをWorkerManagerGU
I内にクラスダウンロードする。
【0042】例えば、図1中”DL11”に示すように
Webサーバ6から図1中”WA11”及び”WA1
2”にそれぞれ対応する図1中”WG11”及び”WG
12”に示すWorkerGUIクラスを図1中”WM
G1”に示すWorkerManagerGUI内にク
ラスダウンロードする。
【0043】図3中”S004”においてクライアント
マシン7はインスタンスをWorkerManager
GUI内に生成してWorkerGUIを起動し、図3
中”S005”においてリモートマシン上で稼動してい
るWorkerと通信を開始してWorkerに対して
適宜処理を行わせる。
【0044】例えば、図1中”MC11”に示すように
起動されたWokerGUIである”WG11’”はリ
モートマシン9上で起動されたWorkerである”W
A11’”との間で通信を行い、図1中”MC12”に
示すように起動されたWokerGUIである”WG1
2’”はリモートマシン8上で起動されたWorker
である”WA12’”との間で通信を行う。
【0045】また、管理サーバ5では、図4中”S10
1”において管理サーバ5はWorkerのクラスを管
理するWorkerManagerを起動する。そし
て、図4中”S102”においてクライアントマシン7
で稼動しているWorkerManagerGUIから
Workerの生成依頼があったか否かを判断する。
【0046】もし、図4中”S102”においてWor
kerManagerGUIからWorkerの生成依
頼があった場合には、図4中”S103”において管理
サーバ5はWorkerManagerGUIからクラ
スダウンロード先として指定されたリモートマシンに選
択されたWorkerの生成を指示する。
【0047】例えば、図1中”IW11”及び”IW1
2”に示すようにリモートマシン9及び8に対してクラ
スダウンロードすべきWorkerクラス名と当該Wo
rkerクラスの格納先であるWebサーバ6のアドレ
スを通知する。
【0048】図4中”S104”において管理サーバ5
は選択されたWorkerクラスに対応するWoker
GUIクラスの格納先であるWebサーバ6のアドレス
を通知する。
【0049】最後に、リモートマシン8及び9では、図
5中”S201”においてWorkerの動作領域を提
供するプロセスであるWorkerSpaceを起動さ
せる。例えば、リモートマシン9は図1中”WS11”
に示すようなWorkerSpaceを起動し、リモー
トマシン8は図1中”WS12”に示すようなWork
erSpaceを起動する。
【0050】そして、図5中”S202”においてリモ
ートマシン8及び9はWorkerManagerから
Workerの生成指示があったか否かを判断し、Wo
rkerの生成指示があった場合には図5中”S20
3”において指定されたWorkerクラスをWork
erSpace内にクラスダウンロードする。
【0051】例えば、WorkerManagerから
クラスダウンロードすべきWorkerクラス名と当該
Workerクラスの格納先であるWebサーバ6のア
ドレスが通知され、図1中”WA11”及び”WA1
2”のWorkerクラスをそれぞれリモートマシン9
及び8にクラスダウンロードするように指示された場合
を考える。
【0052】リモートマシン9では図1中”DL12”
に示すようにWebサーバ6から図1中”WA11”に
示すWorkerクラスを図1中”WS11”に示すW
orkerSpaceにクラスダウンロードする。
【0053】同様に、リモートマシン8では図1中”D
L13”に示すようにWebサーバ6から図1中”WA
12”に示すWorkerクラスを図1中”WS12”
に示すWorkerSpaceにクラスダウンロードす
る。
【0054】そして、図5中”S204”においてリモ
ートマシン8及び9はインスタンスをWorkerSp
ace内にそれぞれ生成してそれぞれのWorkerを
起動し、図5中”S205”においてクライアントマシ
ン7上で稼動しているWorkerGUIと通信を開始
する。
【0055】例えば、図1中”MC11”に示すように
リモートマシン9上の起動されたWorkerである”
WA11’”はクライアントマシン7上の起動された一
方のWokerGUIである”WG11’”との間で通
信を行い、図1中”MC12”に示すようにリモートマ
シン8上の起動されたWorkerである”WA1
2’”はクライアントマシン7上の起動された他方のW
okerGUIである”WG12’”との間で通信を行
う。
【0056】すなわち、リモートマシン上でWorke
rSpaceを動作させることにより、様々な種類のW
orkerクラスを動的にクラスダウンロードしてWo
rkerを起動できるために、いちいちリモートマシン
上に様々なプログラムをインストールする必要性がなく
なる。
【0057】また、クライアントマシン7にはWork
erManagerGUIのみをインストールしておけ
ば動的に様々なWorkerGUIクラスをクラスダウ
ンロードしてリモートマシン上で稼動するWorker
と通信ができるので柔軟性が高く様々なプログラムをリ
モートで動作させることが可能になる。
【0058】さらに、WorkerManagerによ
りWorkerクラスと対応するWorkerGUIク
ラスが対になって管理されているために、リモートマシ
ンとクライアントマシンとの間のバージョンの整合性が
保証される。
【0059】また、図1に示す実施例の応用例としては
以下に示すようなものが考えられる。 (1)機器のリモート診断 (2)データビューア (3)プログラムの自動配信 (4)システム起動点検及び定期点検 (5)広域監視、異常処理
【0060】「(1)機器のリモート診断」に関して
は、機器にWorkerSpaceを動作させるコンピ
ュータ等を接続し、リモート診断用の様々なWorke
rを用意する。ユーザは機器の異常に対応したWork
erを前記コンピュータ等にダウンロードさせて機器の
診断を行うことが可能になる。
【0061】この場合には、リモート側のコンピュータ
等に様々な診断用プログラムをインストール等しておく
必要性はなく、必要時にのみWorkerをダウンロー
ドさせてリモート診断が可能になる。言い換えれば、ロ
ースペックのコンピュータで充分診断が可能になる。
【0062】また、別途新たな診断用Workerを開
発した場合であっても既存の環境のままで使用可能であ
る。さらに、機器が離散して設置されている場合であっ
てもこれらの機器を1台のコンピュータに接続すれば一
括でリモート診断が可能になる。
【0063】「(2)データビューア」に関しては、リ
モート側のデータベースに接続されWorkerSpa
ceを動作させるコンピュータ等を設け、データ解析表
示用の様々なWorkerを用意する。ユーザは機器の
表示させたい形式を満足するWorkerを前記コンピ
ュータ等にダウンロードさせて所望の形式でデータを引
き出すことが可能になる。
【0064】この場合でも、リモート側のコンピュータ
等に様々なデータ解析プログラムをインストール等して
おく必要性はなく、必要時にのみWorkerをダウン
ロードさせて所望の形式でデータを引き出すことが可能
になる。言い換えれば、ロースペックのコンピュータで
充分診断が可能になる。また、別途新たなデータ解析表
示用Workerを開発した場合であっても既存の環境
のままで使用可能である。
【0065】「(3)プログラムの自動配信」に関して
は、ユーザに配信するWorker自体に動作期限を設
定することにより、一定期間動作するWorkerをユ
ーザに配信することができる。また、WorkerMa
nagerに契約ユーザ情報を持たせることにより契約
ユーザにのみWorkerを配信することが可能にな
る。
【0066】また、図6はこのようなプログラム配信の
一例を示す構成ブロック図である。図6において5aは
管理サーバ、6aはWebサーバ、10aは開発用等の
マシン、11は宣伝用のWebサーバ、12及び13は
クライアントマシンである。52は開発会社、53はW
orker管理センター、54及び55はユーザをそれ
ぞれ示している。
【0067】管理サーバ5a、Webサーバ6a及び1
1、クライアントマシン12及び13は図示しないネッ
トワークにより相互に接続される。
【0068】ここで、図6に示す応用例の説明をする。
但し、図1での説明と重複する部分の説明に関しては説
明を省略する。開発会社52で開発されたWorker
及びWorkerGUIは図6中”UL21”及び”N
R31”に示すようにWorker管理センター53の
Webサーバ6aに格納されると共に、管理サーバ5a
上で動作するWorkerManagerに登録され
る。
【0069】一方、開発会社52の宣伝用Webサーバ
11には開発されたWorkerの仕様及びWorke
rManagerGUIが公開され、興味を持ったユー
ザは適宜WorkerManagerGUIをダウンロ
ードしてユーザのクライアントマシンにインストールし
て起動する。
【0070】そして、Worker管理センター53の
管理サーバ5aにアクセスしてWorkerGUIクラ
スをクラスダウンロードし、リモートマシン上で起動さ
れたWorkerを使用する。
【0071】例えば、ユーザ55はWebサーバ11か
ら図6中”WMG2”に示すWorkerManage
rGUIをクライアントマシン13にダウンロードし、
インストールして起動する。そして、Worker管理
センター53の管理サーバ5aにアクセスして図6中”
WG31”及び”WA31”に示すWorkerGUI
及びWorkerをダウンロードして使用する。
【0072】また、例えば、ユーザ55はWebサーバ
11から図6中”WMG2”に示すWorkerMan
agerGUIをクライアントマシン13にダウンロー
ドし、インストールして起動する。そして、Worke
r管理センター53の管理サーバ5aにアクセスして図
6中”WG31”に示すWorkerGUIのみをダウ
ンロードしてリモートマシン上で起動されたWorke
rを使用することも可能である。
【0073】この場合、ユーザが当該プログラムを使用
中であってもWorker管理センター53の管理サー
バ5aに格納されている図6中”WG31”及び”WA
31”等に示すWorkerGUI及びWorkerを
随時アップデートすることが可能になるので、ユーザが
使用中でもアップデート等の保守作業が可能になる。
【0074】一方、ユーザは図6中”WG31”等に示
すWorkerGUIのみをダウンロードする際に常に
最新のプログラムを利用することが可能になる。
【0075】さらに、後述のようなシステムにおいては
起動時にWorkerGUIをダウンロードするため
に、多くのユーザが同時にダウンロードを行うとした場
合には、ネットワーク上のトラフィックが増大してしま
うと言った問題点がある。
【0076】例えば、このシステムを銀行の自動金銭出
納器(ATM:Automated Teller Machine)に適用した
場合には業務開始時間に一斉にWorkerGUIをダ
ウンロードが発生してしまう。
【0077】この場合、クライアントマシンにダウンロ
ード許可時刻を示す”ReloadID”を設定すると
共にダウンロードしてきたWorkerGUIクラス、
クラス名及びWorkerGUIクラスの格納先情報を
格納するキャッシュを設ける。
【0078】例えば、”ReloadID”としては”
10:30”,”11:30”及び”12:30”と言
ったような時刻を設定しネットワーク上のトラフィック
を分散させるように平均的に分散させて設定する。勿
論、設定時刻の重複があっても構わない。
【0079】一方、選択されたWorkerが実行され
るリモートマシンにはダウンロードしてきたWorke
rクラス、クラス名及びWorkerクラスの格納先情
報を格納するキャッシュを設ける。
【0080】そして、クライアントマシン及びリモート
マシンはWorkerGUIクラス及びWorkerク
ラスをダウンロードした時点で上記情報等を各々のキャ
ッシュに格納する。
【0081】ここで、クライアントマシンとリモートマ
シンの動作を図7及び図8を用いて説明する。図7はク
ライアントマシンの動作を説明するフロー図、図8はリ
モートマシンの動作を説明するフロー図である。但し、
基本的な動作に関しては既に説明済みであるのでその部
分の説明は省略する。
【0082】図7中”S301”においてクライントマ
シンは使用するWorkerを選択する。この時、図7
中”S302”においてクライントマシンのキャッシュ
に当該選択したWorkerに対応するWorkerG
UIクラスが格納されているか否かを判断する。
【0083】もし、クライアントマシンのキャッシュ内
にWorkerGUIが存在する場合には、図7中”S
303”においてクライントマシンは自己に設定されて
いる”ReloadID”と現在の時刻を比較して現在
の時刻が”ReloadID”の設定時刻を経過してい
るか否かを判断する。
【0084】もし、現在の時刻が”ReloadID”
の設定時刻を経過していない場合には、図7中”S30
4”においてクライアントマシンはキャッシュに格納さ
れているWorkerGUIの格納先情報をWorke
rManagerに伝える。
【0085】WorkerManagerはリモートマ
シンにWorkerの生成依頼をする場合にクライント
マシンから得られたWorkerGUIの格納先情報に
対応するWorkerの格納先をリモートマシンに伝え
る。
【0086】そして、図7中”S305”においてクラ
イアントマシンはキャッシュ内のWorkerGUIク
ラスをWorkerManagerGUI内にコピーす
る。
【0087】一方、図7中”S302”においてクライ
アントマシンのキャッシュ内にWorkerGUIが存
在しない場合、及び、図7中”S303”において”R
eloadID”の設定時刻を経過している場合には、
図7中”S306”においてクライアントマシンはWo
rkerGUIクラスをWorkerManagerG
UI内にクラスダウンロードする。
【0088】最後に、図7中”S307”においてクラ
イアントマシンはインスタンスをWorkerMana
gerGUI内に生成してWorkerGUIを起動す
る。
【0089】一方、図8中”S401”においてリモー
トマシンはWokerManagerからのWoker
の生成指示があったか否かを判断し、Workerの生
成指示があった場合には図8中”S402”においてリ
モートマシンのキャッシュ内に生成指示されたWork
erクラスが格納されているか否かを判断する。
【0090】もし、リモートマシンのキャッシュ内に生
成指示されたWorkerが存在する場合には、図8
中”S403”においてリモートマシンはキャッシュ内
のWorkerクラスをWorkerSpace内にコ
ピーする。
【0091】もし、リモートマシンのキャッシュ内に生
成指示されたWorkerが存在しない場合には、図8
中”S404”においてリモートマシンはWorker
クラスをWorkerSpace内にクラスダウンロー
ドする。
【0092】最後に、図8中”S405”においてリモ
ートマシンはインスタンスをWorkerSpace内
に生成してWorkerを起動する。
【0093】すなわち、クライアントマシンにおいては
キャッシュに使用するWorkerに対応するWork
erGUIクラスが格納さており、且つ、”Reloa
dID”の設定時刻が経過するまでは格納されているW
orkerGUIを使用することにより、ネットワーク
上のトラフィック集中を緩和することができる。
【0094】同様に、リモートマシンにおいてはキャッ
シュに生成し辞されたWorkerクラスが格納されて
いる場合にはこのWorkerを使用することにより、
ネットワーク上のトラフィック集中を緩和することがで
きる。
【0095】また、Webサーバ上のWorkerGU
I及びWorkerがバージョンアップされた場合で
も、クライアントマシンにおいてキャッシュ内のWor
kerGUIを用いる旨がWorkerManager
によりリモートマシンに伝達されるのでクライアントマ
シンとリモートマシンとの間でバージョンの異なるWo
rkerGUI及びWorkerが起動されることが防
止される。
【0096】「(4)システム起動点検及び定期点検」
に関しては、システム上でWorkerSpaceを動
作させ、システム起動時にのみ必要な点検プログラムや
通常運転では使用されない定期点検プログラムをWor
kerとして用意する。
【0097】この場合でも、システム側に様々な点検プ
ログラムをインストール等しておく必要性はなく、必要
時にのみWorkerをダウンロードさせて指定の点検
を行うことが可能になる。また、別途新たな点検用Wo
rkerを開発した場合であっても既存の環境のままで
使用可能である。
【0098】「(5)広域監視、異常処理」に関して
は、広域監視やITS(IntelligentTransportation Sy
stems)の分野においてはJavaを動作させることが
可能なセンサ機器やアクチュエータ機器若しくはこのよ
うな機器とのインターフェースを有するJavaが動作
可能な機器等を広域配置する。一方、各機器に対する指
示を行うWorkerや機器を監視するWorkerを
用意する。
【0099】そして、監視者は必要に応じてWorke
rを各機器にダウンロードさせて監視や指示をリモート
で行うことが可能になる。
【0100】なお、図1に示す実施例では説明の簡単の
ために、WorkerManagerが動作する管理サ
ーバ5と、Workerクラス及びWorkerGUI
クラスが格納されるWebサーバ6と、WorkerS
paceが動作するリモートマシン8及び9を個々に分
けているがネットワークのトラフィックやマシンスペッ
クの諸条件が許せば全ての役割を1台のマシンに集約し
たり、役割を統合しても構わない。
【0101】例えば、管理サーバ5とWebサーバ6を
統合したり、Webサーバ6とリモートマシン8及び9
とを統合しても構わない。
【0102】また、図1に示す実施例ではWorker
クラスとWorkerGUIクラスとが一対一のペアと
して記載されているが勿論これに限定されるものではな
い。例えば、1つのWorkerクラスに対して複数の
WorkerGUIクラスを用意することにより、クラ
イアントマシンのスペックに対応したGUIを適宜選択
できるの柔軟性が向上する。
【0103】
【発明の効果】以上説明したことから明らかなように、
本発明によれば次のような効果がある。請求項1,2,
4,5,6及び請求項7の発明によれば、リモートマシ
ン上でWorkerSpaceを動作させることによ
り、様々な種類のWorkerクラスを動的にクラスダ
ウンロードしてWorkerを起動できるために、いち
いちリモートマシン上に様々なプログラムをインストー
ルする必要性がなくなる。
【0104】また、クライアントマシンにはWorke
rManagerGUIのみをインストールしておけば
動的に様々なWorkerGUIクラスをクラスダウン
ロードしてリモートマシン上で稼動するWorkerと
通信ができるので柔軟性が高く様々なプログラムをリモ
ートで動作させることが可能になる。
【0105】さらに、WorkerManagerによ
りWorkerクラスと対応するWorkerGUIク
ラスが対になって管理されているために、リモートマシ
ンとクライアントマシンとの間のバージョンの整合性が
保証される。
【0106】また、請求項3及び請求項8の発明によれ
ば、1つのWorkerクラスに対して複数のWork
erGUIクラスを用意することにより、クライアント
マシンのスペックに対応したGUIを適宜選択できるの
柔軟性が向上する。
【0107】また、請求項9の発明によれば、クライア
ントマシンがプログラムをダウンロードするリモートマ
シンを選択することにより、プログラムの実行先を適宜
選択できるの柔軟性が向上する。
【0108】また、請求項10乃至請求項14の発明に
よれば、プログラムの種類を適宜選択することにより、
機器のリモート診断、データビューア、プログラムの自
動配信、システム起動点検及び定期点検及び広域監視、
異常処理等の処理等が可能になる。
【0109】また、請求項15及び請求項16の発明に
よれば、クライアントマシン及びリモートマシンが、ダ
ウンロードしてきたユーザインターフェース・プログラ
ム及びプログラムと関連情報を記憶するキャッシュを設
け設定時刻が経過するまで前記キャッシュに記憶された
前記ユーザインターフェース・プログラムを使用するこ
とにより、ネットワーク上のトラフィック集中を緩和す
ることができる。
【0110】また、請求項17の発明によれば、クライ
アントマシンが、キャッシュに記憶されたユーザインタ
ーフェース・プログラムをプログラム等を管理するサー
バを介してリモートマシンにその情報を伝えることによ
り、クライアントマシンとリモートマシンとの間でバー
ジョンの異なる前記ユーザインターフェース・プログラ
ム及び前記プログラムが起動されることが防止される。
【図面の簡単な説明】
【図1】本発明に係るプログラム実行方法を用いたシス
テムの一実施例を示す構成ブロック図である。
【図2】Worker及びWorkerGUIの登録等
を説明する説明図である。
【図3】クライアントマシンの動作を説明するフロー図
である。
【図4】管理サーバの動作を説明するフロー図である。
【図5】リモートマシンの動作を説明するフロー図であ
る。
【図6】プログラム配信の一例を示す構成ブロック図で
ある。
【図7】クライアントマシンの動作を説明するフロー図
である。
【図8】リモートマシンの動作を説明するフロー図であ
る。
【図9】Javaアプレットを用いたプログラム動作方
法の一例を示す構成ブロック図である。
【符号の説明】
1,6,6a,11 Webサーバ 2,4,10,10a マシン 3,7,12,13 クライアントマシン 5,5a 管理サーバ 8,9 リモートマシン 50 サーバサイト 51 クライアントサイト 52 開発会社 53 Worker管理センター 54,55 ユーザ
フロントページの続き (51)Int.Cl.7 識別記号 FI テーマコート゛(参考) G06F 15/177 670 G06F 15/177 670F 9/06 640A (72)発明者 林 康二 東京都武蔵野市中町2丁目9番32号 横河 電機株式会社内 Fターム(参考) 5B045 BB28 BB47 DD12 GG01 GG09 HH02 JJ02 5B048 AA18 CC15 5B076 BB06 5B098 AA10 GA04 GC16

Claims (17)

    【特許請求の範囲】
  1. 【請求項1】ネットワークを介してプログラムを配信し
    て動作させるプログラム実行方法において、 リモート側で、管理プログラムが前記プログラムと、前
    記プログラムとの通信を行うユーザインターフェース・
    プログラムとを管理すると共にクライアント側のプロセ
    スの生成依頼に基づきリモート側のプロセスが前記プロ
    グラムをダウンロードして実行しておき、 クライアント側の前記プロセスが前記管理プログラムと
    通信をして前記ユーザインターフェース・プログラムを
    ダウンロードして実行させた上で前記ユーザインターフ
    ェース・プログラムを介して前記プログラムとの間で通
    信を行うことにより、仮想的に前記プログラムをクライ
    アント側で実行させることを特徴とするプログラム実行
    方法。
  2. 【請求項2】前記プログラムと前記ユーザインターフェ
    ース・プログラムとが一対一に対応づけられて管理され
    ることを特徴とする請求項1記載のプログラム実行方
    法。
  3. 【請求項3】前記プログラムと複数の前記ユーザインタ
    ーフェース・プログラムとが対応づけられて管理される
    ことを特徴とする請求項1記載のプログラム実行方法。
  4. 【請求項4】ネットワークを介してプログラムを配信し
    て動作させるプログラム実行方法を用いたシステムにお
    いて、 前記プログラムと、前記プログラムとの通信を行うユー
    ザインターフェース・プログラムとを管理すると共にク
    ライアント側のプロセスの生成依頼に基づき前記プログ
    ラムをプロセス中にダウンロードして実行するサーバ
    と、 前記サーバと通信をすると共に前記ユーザインターフェ
    ース・プログラムを前記クライアント側のプロセス中に
    ダウンロードして実行させた上で前記ユーザインターフ
    ェース・プログラムを介して前記プログラムとの間で通
    信を行うクライアントマシンとを備えたことを特徴とす
    るシステム。
  5. 【請求項5】ネットワークを介してプログラムを配信し
    て動作させるプログラム実行方法を用いたシステムにお
    いて、 前記プログラムと、前記プログラムとの通信を行うユー
    ザインターフェース・プログラムとを管理するサーバ
    と、 クライアント側のプロセスの生成依頼に基づき前記プロ
    グラムをプロセス中にダウンロードして実行するリモー
    トマシンと、 前記サーバと通信をすると共に前記ユーザインターフェ
    ース・プログラムを前記クライアント側のプロセス中に
    ダウンロードして実行させた上で前記ユーザインターフ
    ェース・プログラムを介して前記プログラムとの間で通
    信を行うクライアントマシンとを備えたことを特徴とす
    るシステム。
  6. 【請求項6】ネットワークを介してプログラムを配信し
    て動作させるプログラム実行方法を用いたシステムにお
    いて、 前記プログラムと、前記プログラムとの通信を行うユー
    ザインターフェース・プログラムとが格納されたWeb
    サーバと、 前記プログラム及び前記ユーザインターフェース・プロ
    グラムの登録管理を行う管理サーバと、 クライアント側のプロセスの生成依頼に基づき前記プロ
    グラムをプロセス中にダウンロードして実行するリモー
    トマシンと、 前記管理サーバと通信をすると共に前記Webサーバか
    ら前記ユーザインターフェース・プログラムを前記クラ
    イアント側のプロセス中にダウンロードして実行させた
    上で前記ユーザインターフェース・プログラムを介して
    前記プログラムとの間で通信を行うクライアントマシン
    とを備えたことを特徴とするシステム。
  7. 【請求項7】前記プログラムと前記ユーザインターフェ
    ース・プログラムとが一対一に対応づけられて管理され
    ることを特徴とする請求項4乃至請求項6記載のシステ
    ム。
  8. 【請求項8】前記プログラムと複数の前記ユーザインタ
    ーフェース・プログラムとが対応づけられて管理される
    ことを特徴とする請求項4乃至請求項6記載のシステ
    ム。
  9. 【請求項9】前記クライアントマシンが前記プログラム
    をダウンロードする前記リモートマシンを選択すること
    を特徴とする請求項4乃至請求項6記載のシステム。
  10. 【請求項10】前記プログラムが、 機器のリモート診断用のプログラムであることを特徴と
    する請求項4乃至請求項6記載のシステム。
  11. 【請求項11】前記プログラムが、 データ解析表示用のプログラムであることを特徴とする
    請求項4乃至請求項6記載のシステム。
  12. 【請求項12】前記プログラムが、 ユーザに配信されることを特徴とする請求項4乃至請求
    項6記載のシステム。
  13. 【請求項13】前記プログラムが、 システムの点検プログラムであることを特徴とする請求
    項4乃至請求項6記載のシステム。
  14. 【請求項14】前記プログラムが、 各機器に対する指示を行うプログラム若しくは機器を監
    視するプログラムであることを特徴とする請求項4乃至
    請求項6記載のシステム。
  15. 【請求項15】前記クライアントマシン及び前記リモー
    トマシンが、 ダウンロードしてきた前記ユーザインターフェース・プ
    ログラム及び前記プログラムと関連情報を記憶するキャ
    ッシュを有することを特徴とする請求項5及び請求項6
    記載のシステム。
  16. 【請求項16】前記クライアントマシンが、 前記キャッシュに実行したい前記ユーザインターフェー
    ス・プログラムが存在する場合に設定時刻が経過するま
    で前記キャッシュに記憶された前記ユーザインターフェ
    ース・プログラムを使用することを特徴とする請求項1
    5記載のシステム。
  17. 【請求項17】前記クライアントマシンが、 前記キャッシュに記憶された前記ユーザインターフェー
    ス・プログラムを使用する場合に前記プログラム及び前
    記ユーザインターフェース・プログラムとを管理するサ
    ーバを介して前記リモートマシンにその情報を伝えるこ
    とを特徴とする請求項16記載のシステム。
JP2000217473A 2000-05-26 2000-07-18 プログラム実行方法を用いたシステム Expired - Fee Related JP3577714B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000217473A JP3577714B2 (ja) 2000-05-26 2000-07-18 プログラム実行方法を用いたシステム

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2000156230 2000-05-26
JP2000-156230 2000-05-26
JP2000217473A JP3577714B2 (ja) 2000-05-26 2000-07-18 プログラム実行方法を用いたシステム

Publications (2)

Publication Number Publication Date
JP2002049486A true JP2002049486A (ja) 2002-02-15
JP3577714B2 JP3577714B2 (ja) 2004-10-13

Family

ID=26592688

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000217473A Expired - Fee Related JP3577714B2 (ja) 2000-05-26 2000-07-18 プログラム実行方法を用いたシステム

Country Status (1)

Country Link
JP (1) JP3577714B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002366377A (ja) * 2001-06-07 2002-12-20 Yokogawa Electric Corp プログラム実行方法及びこれを用いたシステム
WO2010061735A1 (ja) * 2008-11-27 2010-06-03 インターナショナル・ビジネス・マシーンズ・コーポレーション 検出イベントに応じたアクション実行を支援するシステム、検出イベントに応じたアクション実行を支援する方法、支援装置及びコンピュータプログラム

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002366377A (ja) * 2001-06-07 2002-12-20 Yokogawa Electric Corp プログラム実行方法及びこれを用いたシステム
JP4710171B2 (ja) * 2001-06-07 2011-06-29 横河電機株式会社 プログラム実行方法及びこれを用いたシステム
WO2010061735A1 (ja) * 2008-11-27 2010-06-03 インターナショナル・ビジネス・マシーンズ・コーポレーション 検出イベントに応じたアクション実行を支援するシステム、検出イベントに応じたアクション実行を支援する方法、支援装置及びコンピュータプログラム
US8516499B2 (en) 2008-11-27 2013-08-20 International Business Machines Corporation Assistance in performing action responsive to detected event
JP5285084B2 (ja) * 2008-11-27 2013-09-11 インターナショナル・ビジネス・マシーンズ・コーポレーション 検出イベントに応じたアクション実行を支援するシステム、検出イベントに応じたアクション実行を支援する方法、支援装置及びコンピュータプログラム

Also Published As

Publication number Publication date
JP3577714B2 (ja) 2004-10-13

Similar Documents

Publication Publication Date Title
US10609112B2 (en) Method, server and system for converging desktop application and web application
US10140205B1 (en) Systems and methods for infrastructure validation
US10419289B2 (en) System and method for configuration management service
CN102202078B (zh) 一种用于配置服务器场的多个异类角色的方法和系统
US7937455B2 (en) Methods and systems for modifying nodes in a cluster environment
US7962565B2 (en) Method, apparatus and system for a mobile web client
US8290998B2 (en) Systems and methods for generating cloud computing landscapes
US7000235B2 (en) Method and apparatus for managing data services in a distributed computer system
JP3167522B2 (ja) ソフトウェア遠隔自動更新システムおよび方法
US20030195951A1 (en) Method and system to dynamically detect, download and install drivers from an online service
US20100333092A1 (en) Dynamic definition for concurrent computing environments
JP6201917B2 (ja) フィールドデバイスを設定するためのシステムおよび方法
US8412901B2 (en) Making automated use of data volume copy service targets
US7043738B2 (en) Method and apparatus for managing a data imaging system using CIM providers in a distributed computer system
JPH09305408A (ja) アプリケーション実行方法
KR20120125247A (ko) 타겟 어플리케이션을 제공하기 위한 방법
JPH10171635A (ja) 分散環境におけるソフトウエア資源を管理するシステムと方法
US8032540B1 (en) Description-based user interface engine for network management applications
JP2002049486A (ja) プログラム実行方法及びこれを用いたシステム
KR100431049B1 (ko) 서버에서 클라이언트 컴퓨터에 소프트웨어를 원격설치하기 위한 방법 및 시스템
JP2002063035A (ja) 情報処理装置の遠隔保守方法
KR20040041138A (ko) 분산배포서버에 의한 클라이언트 모듈 배포 및 버전 자동매핑방법
US20210216342A1 (en) System, server, verification method and program
JP2002023877A (ja) 保守センター、保守システム、保守方法、記録媒体
JPH11134238A (ja) ソフトウェア分散開発環境におけるソフトウェア更新管理方式

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20040119

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040210

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20040326

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040412

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040531

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040704

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20080723

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20090723

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees