JP2000122871A - アプリケーション配布方法 - Google Patents

アプリケーション配布方法

Info

Publication number
JP2000122871A
JP2000122871A JP10291719A JP29171998A JP2000122871A JP 2000122871 A JP2000122871 A JP 2000122871A JP 10291719 A JP10291719 A JP 10291719A JP 29171998 A JP29171998 A JP 29171998A JP 2000122871 A JP2000122871 A JP 2000122871A
Authority
JP
Japan
Prior art keywords
client
application
server
request
compile
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.)
Pending
Application number
JP10291719A
Other languages
English (en)
Inventor
Takahiro Hirose
隆裕 廣瀬
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP10291719A priority Critical patent/JP2000122871A/ja
Publication of JP2000122871A publication Critical patent/JP2000122871A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Devices For Executing Special Programs (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)
  • Stored Programmes (AREA)

Abstract

(57)【要約】 【課題】多様なクライアントに適した形式のアプリケー
ションを提供するには、多数のアプリケーションを用意
しなくてはならず、提供者にとってもユーザーにとって
も煩雑である。 【解決手段】クライアントは代理サーバーを経由してア
プリケーションをダウンロードする。代理サーバーはア
プリケーション要求を受け取り、クライアントに代わっ
てアプリケーションサーバーから、アプリケーションを
取得する。代理サーバーは、アプリケーションをクライ
アントに適した形式に変換した後、クライアントに送信
する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】計算機の利用において、アプ
リケーション配布方法に関する。
【0002】
【従来の技術】ネットワークの発展と端末の普及に伴
い、アプリケーションを広範囲に配布するシステムが必
要とされるようになった。現在もっとも一般的な方法は
Webサーバーを利用してアプリケーションを配布する方
法である。Webサーバーの詳細は「Nancy J.Yeager/Robe
rt E.McGrath著 Web Server Technology - The Advance
dGuide for World Wide Web Information Providers」
に記述されている。この方式の特徴は、インターネット
に接続することさえできれば、どこからでもアプリケー
ションをダウンロードできることにある。
【0003】
【発明が解決しようとする課題】Webサーバーを用いた
アプリケーション配布方式は、単純かつ効率的である
が、いくつかの複雑な状況に対応することが難しい。ク
ライアントのアーキテクチャーは多種多様である。同じ
アーキテクチャーであっても、いくつものバージョンが
存在することもある。多くのクライアントにサービスし
ようとすると、ひとつのアプリケーションに対して多数
のロードモジュールを用意しなくてはならない。
【0004】ユーザーは、多くのロードモジュールの中
から、自分の端末に適応したモジュールを探さなくては
ならない。ユーザーは、計算機アーキテクチャーに精通
しているとは限らないので、かなりの苦労を強いられ
る。
【0005】アプリケーションによっては、ソースコー
ドや仮想マシンコードで配布されているものもある。ソ
ースコードをコンパイルする作業は極めて煩雑である。
そもそもコンパイラを持っていないユーザーはコードを
コンパイルすることができない。仮想コードを実行する
には、仮想マシンを端末にインストールしなくてはなら
ない。これも煩雑な作業である。端末の種類によって
は、仮想マシンをインストールできないこともある。
【0006】
【課題を解決するための手段】クライアントは代理サー
バーを経由してアプリケーションをダウンロードする。
代理サーバーはアプリケーション要求を受け取り、クラ
イアントに代わってアプリケーションサーバーから、ア
プリケーションを取得する。代理サーバーは、アプリケ
ーションをクライアントに適した形式に変換した後、ク
ライアントに送信する。
【0007】
【発明の実施の形態】図1に全体の構成を示す。ユーザ
ーは、ネットワークに接続されたクライアント端末103
からコンパイルサーバー101を経由して、アプリケーシ
ョンサーバー102にアクセスする。アプリケーションを
ダウンロードする対象はクライアント端末103自身でも
良いし、別の携帯端末104のようなものでも良い。ユー
ザーはまずコンパイルサーバー101に接続し、そこを基
点に所望のアプリケーションを配布しているサーバー10
2にアクセスする。アプリケーションサーバー102は、コ
ンパイルサーバー101と同一のホスト上にあっても良い
し、ネットワーク上の別のホスト上にあっても良い。
【0008】クライアントからの要求はまずコンパイル
サーバー101に届く。そこからアプリケーションサーバ1
02ーへ要求が転送され、応答としてアプリケーションが
送られてくる。コンパイルサーバー101は、アプリケー
ションの形式とクライアントのアーキテクチャを比較し
て、コンパイル等の適切な変換処理を実行し、その結果
をクライアントに送信する。
【0009】図2は処理の流れをより明確にするための
図である。まず、クライアント103からコンパイルサー
バー101にアプリケーション要求202が送信される。この
とき、クライアント情報201を付加して送信する。クラ
イアント情報を付加する方法はクライアントに依存す
る。インターネットブラウザの多くは、クライアント情
報を付加して要求を送信している。デフォルトの情報だ
けで不足の場合は、代理サーバーから情報を要求するこ
ともできる。詳細は「Nancy J.Yeager/Robert E.McGrat
h著 Web Server Technology - The Advanced Guide for
World Wide WebInformation Providers」に記述されて
いる。
【0010】コンパイルサーバー101は、アプリケーシ
ョン要求202とクライアント情報201をリストにして内部
に格納したのち、アプリケーションサーバー102にアプ
リケーション要求203を送る。アプリケーションサーバ
ー102は要求に従って適切なアプリケーション204をコン
パイルサーバー101に送る。
【0011】コンパイルサーバー101は、送られてきた
アプリケーション204の属性と格納しておいたクライア
ント情報201を比較し、適切な変換処理を選択する。コ
ンパイルサーバーは、コンパイラやリンカを起動して変
換処理を実行する。処理の詳細は図3で述べる。処理が
終わると変換済みアプリケーション205が生成する。コ
ンパイルサーバー101は、変換済みアプリケーション205
をクライアント103に応答として送信する。
【0012】図3はコンパイルサーバー101の構成を示
している。まず、全体を制御するユニット301がある。
クライアント要求テーブル302とクライアント情報テー
ブル304は後で詳しく記述する。コンパイラ306とライブ
ラリ307はアプリケーションをコンパイルしてクライア
ントに適したロードモジュールを生成する。この他にリ
ンカや仮想コードネイティブコンパイラが追加されるこ
ともある。通信インターフェース308はクライアントや
アプリケーションサーバーと通信を行う。
【0013】図4はクライアント情報テーブル304の構
成を示している。クライアント情報テーブル304は、コ
ンパイルサーバー101内に予め用意されているテーブル
である。クライアント情報テーブル304は、クライアン
ト種別401とコンパイルコマンド402を項目として持つレ
コード305から構成されている。クライアント種別401
は、文字どおりクライアントのアーキテクチャーを識別
する識別子である。多くの実装では、端末の機種名や型
番が格納されることになるだろう。コンパイルコマンド
402は、アプリケーションをクライアントに適した形式
に変換するコマンドを格納してある。コンパイルサーバ
ー101は、この項目を参照して、コンパイルやリンク等
の適切な変換処理を実行する。
【0014】図5はクライアント要求テーブル302の構
成を示している。クライアント要求テーブル401のレコ
ード303は、クライアントから要求を受け取るごとに作
成され、クライアントに応答を返すと削除される。クラ
イアント要求テーブル302は、クライアント種別501と要
求アプリケーション502を項目としてもつレコード303か
ら構成されている。クライアント種別501は、クライア
ントからアプリケーション要求202と共に送信されてき
た情報を格納している。クライアントのアーキテクチャ
を識別するために使用する。多くの実装では、端末の機
種名や型番が格納されることになるだろう。要求アプリ
ケーション502は、クライアントが要求したアプリケー
ションを覚えておくためのものである。多くの実装で
は、アプリケーション要求202を格納することになるだ
ろう。
【0015】図6は、コンパイルサーバー101がクライ
アント103から要求を受け取り、アプリケーションサー
バー102に要求を出すまでの手順を示した図である。ま
ず1601で、クライアント103から要求を受信しす
る。602でクライアント情報テーブル304を検索すし、60
3で検索結果を判定する。クライアントに対応する項目
がなかったら、そのクライアントに対応するアプリケー
ション変換ができないことを意味する。604に制御を移
し、クライアントにエラーを返し終了する。コンパイル
サーバー101自身は、次の要求の待ち状態に移行する。
【0016】クライアントに対応する項目が見つかった
ら、605に移り、クライアント要求テーブル302に要求を
登録する。次に606で、アプリケーションサーバー102に
アプリケーション要求203を送信し、応答を待つ。
【0017】図7は、コンパイルサーバー101がアプリ
ケーションサーバー102からの応答を受け取り、クライ
アント103に送信するまでの手順を示した図である。701
でアプリケーションサーバーか102から応答を受信し、
送られてきたアプリケーション204の形式を調べる。702
で、クライアント要求テーブル302を検索し、どのクラ
イアントの要求に対する応答か調べる。703で検索結果
を判断する。登録されている要求に対する応答でなけれ
ば、704に制御を移し、サーバーにエラーを返す。登録
されていたら、705に制御を移し、クライアント種別を
調べる。さらに、クライアント情報テーブ304ルを牽い
て、クライアントに対応した変換コマンド(コンパイル
コマンド)402を得る。コンパイルサーバー101は、この
コマンドを実行し、クライアントに適した形式のアプリ
ケーション205を得る。多くの場合、ロードモジュール
形式である。706でクライアント103にロードモジュール
205を送信し、セッションを終了する。
【0018】図8は、アプリケーション204としてソー
ス形式のアプリケーション801を受け取った場合の処理
を示している。コンパイルサーバー101は、クライアン
ト情報テーブル304を調べ、コンパイルオプションを得
る。802で、先ほど得たオプションを引数にコンパイラ3
06を起動し、ソースコード801をロードモジュール803に
コンパイルする。生成したロードモジュール803はクラ
イアントでそのまま実行できる。
【0019】図9は、アプリケーション204としてオブ
ジェクト形式のアプリケーション901を受け取った場合
の処理である。オブジェクト形式のアプリケーション90
1は、クライアントでそのまま実行できる場合もある
が、マシンに固有のライブラリをリンクしないと実行で
きないことが多い。902で、コンパイルサーバー101は、
クライアント情報テーブル304を調べてリンクコマンド
を得る。そのコマンドでリンカ309を起動し、マシン固
有のライブラリ307をリンクし、ロードモジュール903を
生成する。
【0020】図10は、アプリケーションとして204と
して仮想コード形式のアプリケーション1001を受け取っ
た場合の処理を示している。クライアントに仮想マシン
がインストールされていれば、仮想コードをそのまま実
行できる。そうでない場合はロードモジュールに変換し
ないとクライアントで実行できない。1002で、コンパイ
ルサーバー101は、クライアント情報テーブル304を調
べ、変換コマンドを得る。コンパイルサーバーは、コン
バーター又はコンパイラ306を起動して、仮想コード100
1をクライアントに適した形式のコード1002に変換す
る。
【0021】
【発明の効果】以上のように本発明によれば、クライア
ントは、アプリケーションの形式を意識することなく、
ダウンロードすることができる。
【図面の簡単な説明】
【図1】本発明の実施例であるアプリケーショスの配布
を説明する全体の構成図。
【図2】図1のアプリケーション配布手順を示す図。
【図3】図1のコンパイルサーバーの処理手順を示す
図。
【図4】図3のクライアント情報テーブルの構成を示す
図。
【図5】図3のクライアント要求テーブルの構成を示す
図。
【図6】コンパイルサーバーが要求を受け取り、代理要
求を出すまでの手順を示すフローチャート。
【図7】コンパイルサーバーが応答を受け取り、クライ
アントに送信するまでの手順を示すフローチャート。
【図8】コンパイルサーバーがソース形式のアプリケー
ションを受け取った場合の処理を示すフローチャート。
【図9】コンパイルサーバーがオブジェクト形式のアプ
リケーションを受け取った場合の処理を示すフローチャ
ート。
【図10】コンパイルサーバーが仮想コード形式のアプ
リケーションを受け取った場合の処理を示すフローチャ
ート。
【符号の説明】
101…コンパイルサーバ、 102…アプリケーショ
ンサーバ、103…ユーザPC、 104…携帯
端末。

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】ネットワークシステムにおいて、クライア
    ントからのアプリケーション要求を受け取り、クライア
    ントに代わってサーバーからアプリケーションを取得
    し、クライアントに適した形式にアプリケーションを変
    換した後、クライアントに送信することを特徴とするア
    プリケーション配布方法。
JP10291719A 1998-10-14 1998-10-14 アプリケーション配布方法 Pending JP2000122871A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10291719A JP2000122871A (ja) 1998-10-14 1998-10-14 アプリケーション配布方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10291719A JP2000122871A (ja) 1998-10-14 1998-10-14 アプリケーション配布方法

Publications (1)

Publication Number Publication Date
JP2000122871A true JP2000122871A (ja) 2000-04-28

Family

ID=17772518

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10291719A Pending JP2000122871A (ja) 1998-10-14 1998-10-14 アプリケーション配布方法

Country Status (1)

Country Link
JP (1) JP2000122871A (ja)

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001209618A (ja) * 2000-01-27 2001-08-03 Victor Co Of Japan Ltd オブジェクト配信方式
JP2006517046A (ja) * 2003-01-30 2006-07-13 エポックレイツ インコーポレイテッド ハンドヘルドコンピューターにおける自動データインストールのためのシステムおよび方法
JPWO2006009287A1 (ja) * 2004-07-20 2008-05-01 スター・ゲームズ株式会社 自動変換用プログラムおよびプログラム変換サーバ
JP2009093632A (ja) * 2007-09-21 2009-04-30 Seiko Epson Corp 情報処理装置、情報処理方法および情報管理システム
JP2009098963A (ja) * 2007-10-17 2009-05-07 Mitsubishi Electric Corp モジュール自動生成システム
JP2011501325A (ja) * 2007-10-26 2011-01-06 クゥアルコム・インコーポレイテッド サーバ−ベースのコードコンパイル
JP2011034404A (ja) * 2009-08-03 2011-02-17 Funai Electric Co Ltd 情報処理システムおよび情報処理方法
US8161183B2 (en) 2000-12-23 2012-04-17 International Business Machines Corporation Distributing information in a markup language within a computer system
US8422480B2 (en) 2007-10-01 2013-04-16 Qualcomm Incorporated Acknowledge mode polling with immediate status report timing
JP2013514570A (ja) * 2009-12-18 2013-04-25 テレフオンアクチーボラゲット エル エム エリクソン(パブル) オフデバイス・サービスを用いた実行コードのランタイム・プロビジョニングのための技術
JP2014006934A (ja) * 2013-10-11 2014-01-16 Ricoh Co Ltd 情報処理装置、インストール方法、及びインストールプログラム
US9075913B2 (en) 2012-02-27 2015-07-07 Qualcomm Incorporated Validation of applications for graphics processing unit
JP2016505952A (ja) * 2012-12-14 2016-02-25 テレフオンアクチーボラゲット エル エム エリクソン(パブル) コンパイル及び配備サービスを用いたソフトウェアのビルド及びロード処理のためのシステム、方法及びコンピュータプログラムプロダクト
US9275644B2 (en) 2012-01-20 2016-03-01 Qualcomm Incorporated Devices for redundant frame coding and decoding
DE102016000213A1 (de) 2015-01-16 2016-07-21 Fanuc Corporation Steuersystem mit Funktion zur Optimierung der Steuersoftware einer numerischen Steuerung gemäß einem Bearbeitungsprogramm
US10382575B2 (en) 2015-12-09 2019-08-13 Nec Corporation Program execution system, method of executing program, and computer-readable storage medium
WO2020045269A1 (ja) * 2018-08-28 2020-03-05 tonoi株式会社 システム、情報処理方法、及びプログラム
JP2020144580A (ja) * 2019-03-06 2020-09-10 富士電機株式会社 プログラム配信装置及びプログラム配信方法

Cited By (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001209618A (ja) * 2000-01-27 2001-08-03 Victor Co Of Japan Ltd オブジェクト配信方式
US8161183B2 (en) 2000-12-23 2012-04-17 International Business Machines Corporation Distributing information in a markup language within a computer system
JP2006517046A (ja) * 2003-01-30 2006-07-13 エポックレイツ インコーポレイテッド ハンドヘルドコンピューターにおける自動データインストールのためのシステムおよび方法
JP4754473B2 (ja) * 2003-01-30 2011-08-24 エポックレイツ インコーポレイテッド ハンドヘルドコンピューターにおける自動データインストールのためのシステムおよび方法
JPWO2006009287A1 (ja) * 2004-07-20 2008-05-01 スター・ゲームズ株式会社 自動変換用プログラムおよびプログラム変換サーバ
JP2009093632A (ja) * 2007-09-21 2009-04-30 Seiko Epson Corp 情報処理装置、情報処理方法および情報管理システム
US8422480B2 (en) 2007-10-01 2013-04-16 Qualcomm Incorporated Acknowledge mode polling with immediate status report timing
JP2009098963A (ja) * 2007-10-17 2009-05-07 Mitsubishi Electric Corp モジュール自動生成システム
US8365153B2 (en) 2007-10-26 2013-01-29 Qualcomm Incorporated Server-based code compilation
JP2011501325A (ja) * 2007-10-26 2011-01-06 クゥアルコム・インコーポレイテッド サーバ−ベースのコードコンパイル
JP2011034404A (ja) * 2009-08-03 2011-02-17 Funai Electric Co Ltd 情報処理システムおよび情報処理方法
JP2013514570A (ja) * 2009-12-18 2013-04-25 テレフオンアクチーボラゲット エル エム エリクソン(パブル) オフデバイス・サービスを用いた実行コードのランタイム・プロビジョニングのための技術
US9275644B2 (en) 2012-01-20 2016-03-01 Qualcomm Incorporated Devices for redundant frame coding and decoding
US9075913B2 (en) 2012-02-27 2015-07-07 Qualcomm Incorporated Validation of applications for graphics processing unit
JP2016505952A (ja) * 2012-12-14 2016-02-25 テレフオンアクチーボラゲット エル エム エリクソン(パブル) コンパイル及び配備サービスを用いたソフトウェアのビルド及びロード処理のためのシステム、方法及びコンピュータプログラムプロダクト
JP2014006934A (ja) * 2013-10-11 2014-01-16 Ricoh Co Ltd 情報処理装置、インストール方法、及びインストールプログラム
DE102016000213A1 (de) 2015-01-16 2016-07-21 Fanuc Corporation Steuersystem mit Funktion zur Optimierung der Steuersoftware einer numerischen Steuerung gemäß einem Bearbeitungsprogramm
US10088834B2 (en) 2015-01-16 2018-10-02 Fanuc Corporation Control system having function for optimizing control software of numerical controller in accordance with machining program
US10382575B2 (en) 2015-12-09 2019-08-13 Nec Corporation Program execution system, method of executing program, and computer-readable storage medium
WO2020045269A1 (ja) * 2018-08-28 2020-03-05 tonoi株式会社 システム、情報処理方法、及びプログラム
JPWO2020045269A1 (ja) * 2018-08-28 2021-08-10 tonoi株式会社 システム、情報処理方法、及びプログラム
US11379202B2 (en) 2018-08-28 2022-07-05 Tonoi Co., Ltd. System, information processing method, and program for directly executing arithmetic logic on various storages
TWI796515B (zh) * 2018-08-28 2023-03-21 日商Tonoi股份有限公司 資訊處理系統、資訊處理方法、及程式
JP2020144580A (ja) * 2019-03-06 2020-09-10 富士電機株式会社 プログラム配信装置及びプログラム配信方法
JP7367312B2 (ja) 2019-03-06 2023-10-24 富士電機株式会社 プログラム配信装置及びプログラム配信方法

Similar Documents

Publication Publication Date Title
JP2000122871A (ja) アプリケーション配布方法
US6542908B1 (en) Technique for automatically and transparently transforming software components into software components capable of execution in a client/server computing environment
US8775649B2 (en) Optimizing client code through automated server specialization
US6839897B2 (en) Stub search loading system and method, server apparatus, client apparatus, and computer-readable recording medium
US8359570B2 (en) Adaptive scripting tool
US20020002605A1 (en) Server/client system and program for implementing application distribution in this server/client system
US20040054800A1 (en) Content synchronization frameworks using dynamic attributes and file bundles for connected devices
JP2001522113A (ja) 分散ウェブアプリケーションサーバ
JP2001522114A (ja) 分散を意識させない態様で分散ソフトウェア開発を容易にするための方法およびシステム
JP2003533766A (ja) 分散コンピューティング環境でサービスにアクセスし、アドレッシングする機構および装置
JP2002215486A (ja) Wsdlに基づいたコントローラ装置用通信システム
US6205415B1 (en) Server and terminal emulator for persistent connection to a legacy host system with file transfer
JP2003534588A (ja) 分散コンピューティング環境でのプロセスのデータ表現言語表現を使用するプロセスの移植
KR20030094320A (ko) 마크업 언어로 인코딩된 문서의 효율적인 프로세싱 방법및 그 시스템
JP2004530194A (ja) 異なるオブジェクト・タイプのサーバとクライアントを結合するための方法およびブリッジ
CN110764752B (zh) 实现Restful服务图形化服务编排的系统及其方法
US20030158894A1 (en) Multiterminal publishing system and corresponding method for using same
US7562353B2 (en) Methods and systems for transforming Java applications of behalf of another device
JP2002132646A (ja) コンテンツインタポレーティングウェブプロキシサーバ
CN106453250B (zh) 一种大数据rpc的处理方法
US20050034099A1 (en) Method of developing software programs for resource constrained mobile computing devices
JP2007004608A (ja) 連携処理システム及び装置及び方法
JP2000250838A (ja) アプリケーションプログラムの実装方法ならびにシステム及び同方法がプログラムされ記録された記録媒体
CN111984679B (zh) 硬件加速数据库的访问方法、装置、主机、系统及介质
JP2005055983A (ja) サービス管理方法、サービス管理装置および制御プログラム