JP2665089B2 - 分散環境下におけるコンパイル方式 - Google Patents
分散環境下におけるコンパイル方式Info
- Publication number
- JP2665089B2 JP2665089B2 JP3274602A JP27460291A JP2665089B2 JP 2665089 B2 JP2665089 B2 JP 2665089B2 JP 3274602 A JP3274602 A JP 3274602A JP 27460291 A JP27460291 A JP 27460291A JP 2665089 B2 JP2665089 B2 JP 2665089B2
- Authority
- JP
- Japan
- Prior art keywords
- machine
- compiler
- client
- library
- holding
- 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.)
- Expired - Lifetime
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/5044—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering hardware capabilities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/5055—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering software capabilities, i.e. software resources associated or available to the machine
Description
【0001】
【産業上の利用分野】この発明は、複数の異なる機種の
コンピュータをネットワークを介して接続した分散環境
下におけるコンパイル方式に関するものである。
コンピュータをネットワークを介して接続した分散環境
下におけるコンパイル方式に関するものである。
【0002】
【従来の技術】図10は、原始プログラムの翻訳から実
行までの流を示すフローチャートである。原始プログラ
ム101は、必要なら前処理系102によって処理され
てからコンパイラ103にかけられる。コンパイラ10
3の出力は、アセンブラ言語プログラムや、ほとんどそ
のまま実行できる機械語コードか、メモリのどこにでも
配置できるような情報を含んだ機械語のコードである。
コンパイラ103の出力がアセンブラ言語プログラムの
ときにはアセンブラ104がこれを受け取り、再配置可
能コードに直す。リンケージエデイタ105は、再配置
可能コードをライブラリ106からいくつか集めて連結
し、別々にコンパイルされたプログラムの間の記号名に
よる参照をメモリ上にロードされた時の番地で置き換え
る。これらの処理は通常1つのマシンの上で行われ、オ
ブジェクトコード107を得る。このようなことは、例
えば「岩波講座ソフトウエア科学−5,プログラミング
言語処理系」の“1.3コンパイラとプログミング環
境”(pp.10-11) に記載されている。図9はコンピュー
タネットワークの概要構成図である。コンピュータネッ
トワークは、おたがいがそれぞれのシステム資源(ハー
ドウエア、ソフトウエア、データベースなど)を共有し
合うことができるように相互に結合された、しかも、そ
れぞれが独立した機能を持った複数台のコンピュータが
ネットワークで接続され、相互に情報交換や共同利用が
できるようになっているので、コンピュータ相互間でシ
ステム資源を融通しあったり、他のコンピュータのハー
ドウエアやソフトウエア機能を利用したり、あるいは他
のコンピュータが管理しているデータベースをアクセス
することが可能になっている。図9においては、1〜3
のコンピュータと4〜11の端末機によってネットワー
クが構成されている。このようなことは、例えば、オー
ム社「図解 コンピュータ百科辞典」の“12−1−1
コンピュータネットワークによる分散処理方式”(pp.1
019-1120)に記載されている。
行までの流を示すフローチャートである。原始プログラ
ム101は、必要なら前処理系102によって処理され
てからコンパイラ103にかけられる。コンパイラ10
3の出力は、アセンブラ言語プログラムや、ほとんどそ
のまま実行できる機械語コードか、メモリのどこにでも
配置できるような情報を含んだ機械語のコードである。
コンパイラ103の出力がアセンブラ言語プログラムの
ときにはアセンブラ104がこれを受け取り、再配置可
能コードに直す。リンケージエデイタ105は、再配置
可能コードをライブラリ106からいくつか集めて連結
し、別々にコンパイルされたプログラムの間の記号名に
よる参照をメモリ上にロードされた時の番地で置き換え
る。これらの処理は通常1つのマシンの上で行われ、オ
ブジェクトコード107を得る。このようなことは、例
えば「岩波講座ソフトウエア科学−5,プログラミング
言語処理系」の“1.3コンパイラとプログミング環
境”(pp.10-11) に記載されている。図9はコンピュー
タネットワークの概要構成図である。コンピュータネッ
トワークは、おたがいがそれぞれのシステム資源(ハー
ドウエア、ソフトウエア、データベースなど)を共有し
合うことができるように相互に結合された、しかも、そ
れぞれが独立した機能を持った複数台のコンピュータが
ネットワークで接続され、相互に情報交換や共同利用が
できるようになっているので、コンピュータ相互間でシ
ステム資源を融通しあったり、他のコンピュータのハー
ドウエアやソフトウエア機能を利用したり、あるいは他
のコンピュータが管理しているデータベースをアクセス
することが可能になっている。図9においては、1〜3
のコンピュータと4〜11の端末機によってネットワー
クが構成されている。このようなことは、例えば、オー
ム社「図解 コンピュータ百科辞典」の“12−1−1
コンピュータネットワークによる分散処理方式”(pp.1
019-1120)に記載されている。
【0003】次に、動作について説明する。従来、コン
パイルする方法として、ユーザーがソースファイルを作
成するマシンごとに、自機種用のライブラリとコンパイ
ラを保持し、そのマシンで作成したソースファイルをコ
ンパイルする方法があった。これはネットワーク上に全
く同じコンパイラが複数存在することになり、相互の情
報交換と共同利用という、コンピュータネットワークの
本来の利点を生かしていない。また、例えば、コンピュ
ータ1と2が同一機種、コンピュータ3が異機種で、コ
ンピュータ1はコンパイラを保持していず、コンピュー
タ2と3が各々、自機種用のコンパイラとライブラリを
保持しているものとする。この場合、ユーザーがコンピ
ュータ1上でソースファイルを作成した場合にネットワ
ーク上でコンパイルする方法として、コンピュータ2
に、作成したソースファイルを転送し、コンピュータ2
上でコンパイル及びリンクし、できたオブジェクトファ
イルをコンピュータ1に転送する方法があった。これ
は、すべての転送をユーザーが意識して操作しなければ
ならないため、ユーザーにとって負担となるものであ
る。また、例えば、コンピュータ1と2が同一機種、コ
ンピュータ3が異機種で、コンピュータ2はコンピュー
タ3のクロスコンパイラを保持しているものとする。こ
の場合、ユーザーが、コンピュータ3で実行するファイ
ルをコンピュータ2上で作成した場合には、コンピュー
タ2でクロスコンパイルして、できたオブジェクトファ
イルをコンピュータ3に転送するという方法があった。
これもまた、転送に関してユーザーの手を介することに
なり、ユーザーの負担となるものである。
パイルする方法として、ユーザーがソースファイルを作
成するマシンごとに、自機種用のライブラリとコンパイ
ラを保持し、そのマシンで作成したソースファイルをコ
ンパイルする方法があった。これはネットワーク上に全
く同じコンパイラが複数存在することになり、相互の情
報交換と共同利用という、コンピュータネットワークの
本来の利点を生かしていない。また、例えば、コンピュ
ータ1と2が同一機種、コンピュータ3が異機種で、コ
ンピュータ1はコンパイラを保持していず、コンピュー
タ2と3が各々、自機種用のコンパイラとライブラリを
保持しているものとする。この場合、ユーザーがコンピ
ュータ1上でソースファイルを作成した場合にネットワ
ーク上でコンパイルする方法として、コンピュータ2
に、作成したソースファイルを転送し、コンピュータ2
上でコンパイル及びリンクし、できたオブジェクトファ
イルをコンピュータ1に転送する方法があった。これ
は、すべての転送をユーザーが意識して操作しなければ
ならないため、ユーザーにとって負担となるものであ
る。また、例えば、コンピュータ1と2が同一機種、コ
ンピュータ3が異機種で、コンピュータ2はコンピュー
タ3のクロスコンパイラを保持しているものとする。こ
の場合、ユーザーが、コンピュータ3で実行するファイ
ルをコンピュータ2上で作成した場合には、コンピュー
タ2でクロスコンパイルして、できたオブジェクトファ
イルをコンピュータ3に転送するという方法があった。
これもまた、転送に関してユーザーの手を介することに
なり、ユーザーの負担となるものである。
【0004】
【発明が解決しようとする課題】このような従来の方法
では、分散環境下で、同一機種がそれぞれ同一のコンパ
イラ及び関係するライブラリを保持しており、コンパイ
ラ及びライブラリによってマシンのディスクメモリは占
有され、また、インストールするためのソフトウエア購
入資金もかかり、また、他のマシンでコンパイルする場
合は、データの入出力を行う際にユーザーに多くの操作
が必要とされ、余計な手間がかかるという問題点があっ
た。
では、分散環境下で、同一機種がそれぞれ同一のコンパ
イラ及び関係するライブラリを保持しており、コンパイ
ラ及びライブラリによってマシンのディスクメモリは占
有され、また、インストールするためのソフトウエア購
入資金もかかり、また、他のマシンでコンパイルする場
合は、データの入出力を行う際にユーザーに多くの操作
が必要とされ、余計な手間がかかるという問題点があっ
た。
【0005】また、従来において、1つの大きなコンピ
ュータに色々なマイクロプロセッサ用のソフトウエアを
用意して、TSS(タイムシェアリングシステム)を用
いてコンパイルする方法もあったが、TSSを用いてコ
ンパイルする場合は、ホストコンピュータに膨大な負荷
がかかるばかりか、システムが提供しているマイクロプ
ロセッサ用のソフトウエアしか使用できないので、拡張
性がないという問題点があった。
ュータに色々なマイクロプロセッサ用のソフトウエアを
用意して、TSS(タイムシェアリングシステム)を用
いてコンパイルする方法もあったが、TSSを用いてコ
ンパイルする場合は、ホストコンピュータに膨大な負荷
がかかるばかりか、システムが提供しているマイクロプ
ロセッサ用のソフトウエアしか使用できないので、拡張
性がないという問題点があった。
【0006】この発明は上記のような問題点を解決する
ためになされたもので、分散環境下での同一機種のコン
パイラの重複を削除することを可能にし、また、ユーザ
ーが使用しているマシンにコンパイラがない時でもユー
ザーは、そのことを何ら意識することなくオブジェクト
ファイルを得ることを可能にし、また、ソフトウエアの
使用の拡張性もある分散環境下におけるコンパイル方式
を提供することを目的とする。
ためになされたもので、分散環境下での同一機種のコン
パイラの重複を削除することを可能にし、また、ユーザ
ーが使用しているマシンにコンパイラがない時でもユー
ザーは、そのことを何ら意識することなくオブジェクト
ファイルを得ることを可能にし、また、ソフトウエアの
使用の拡張性もある分散環境下におけるコンパイル方式
を提供することを目的とする。
【0007】
【課題を解決するための手段】この発明に係る分散環境
下におけるコンパイル方式においては、サーバマシン3
01には、各機種、各言語ごとのコンパイラと該コンパ
イラを保持しているマシンとの対応関係を示すコンパイ
ラ保持マシン対応表304と、各機種のライブラリと該
ライブラリを保持しているマシンとの対応関係を示すラ
イブラリ保持マシン対応表305とを備えるとともに、
クライアントマシン302からコンパイルの要求を受け
たならば、上記コンパイラ保持マシン対応表とライブラ
リ保持マシン対応表を参照して、上記クライアントマシ
ン302が要求するコンパイルに必要なコンパイラ及び
ライブラリを保持している上記分散環境下にあるマシン
をそれぞれ探し出し、探し出したマシンに関する情報を
上記クライアントマシン302に送る処理を実行するた
めのサーバ側処理実行手段(サーバプログラム306)
を備え、上記クライアントマシン302には、上記サー
バマシンから送られてきたマシンに関する情報を受け
て、コンパイラを保持しているマシンへソースプログラ
ムと上記サーバマシンから得たライブラリ保持マシン情
報を転送する処理を実行するためのクライアント側処理
実行手段(クライアントプログラム307)を備え、さ
らに、コンパイラを保持しているコンパイラ保持マシン
303には、上記クライアントマシン302からのコン
パイル開始要求によりコンパイルを開始するとともに、
上記クライアントマシン302からのライブラリ保持マ
シン情報に基づいて必要なライブラリを保持しているマ
シンからライブラリを集めてきてライブラリをリンク
し、作成されたオブジェクトファイルを、コンパイル要
求元の上記クライアントマシン302へ転送するコンパ
イル処理実行手段(コンパイルプログラム308)を備
えていることを特徴とするものである。
下におけるコンパイル方式においては、サーバマシン3
01には、各機種、各言語ごとのコンパイラと該コンパ
イラを保持しているマシンとの対応関係を示すコンパイ
ラ保持マシン対応表304と、各機種のライブラリと該
ライブラリを保持しているマシンとの対応関係を示すラ
イブラリ保持マシン対応表305とを備えるとともに、
クライアントマシン302からコンパイルの要求を受け
たならば、上記コンパイラ保持マシン対応表とライブラ
リ保持マシン対応表を参照して、上記クライアントマシ
ン302が要求するコンパイルに必要なコンパイラ及び
ライブラリを保持している上記分散環境下にあるマシン
をそれぞれ探し出し、探し出したマシンに関する情報を
上記クライアントマシン302に送る処理を実行するた
めのサーバ側処理実行手段(サーバプログラム306)
を備え、上記クライアントマシン302には、上記サー
バマシンから送られてきたマシンに関する情報を受け
て、コンパイラを保持しているマシンへソースプログラ
ムと上記サーバマシンから得たライブラリ保持マシン情
報を転送する処理を実行するためのクライアント側処理
実行手段(クライアントプログラム307)を備え、さ
らに、コンパイラを保持しているコンパイラ保持マシン
303には、上記クライアントマシン302からのコン
パイル開始要求によりコンパイルを開始するとともに、
上記クライアントマシン302からのライブラリ保持マ
シン情報に基づいて必要なライブラリを保持しているマ
シンからライブラリを集めてきてライブラリをリンク
し、作成されたオブジェクトファイルを、コンパイル要
求元の上記クライアントマシン302へ転送するコンパ
イル処理実行手段(コンパイルプログラム308)を備
えていることを特徴とするものである。
【0008】
【作用】この発明におけるコンパイル方式は、サーバマ
シン301に、クライアントマシン302から機種名と
言語の種類が与えられると、サーバ側処理実行手段によ
り、対応表304,305から必要なコンパイラ及びラ
イブラリを保持しているマシンを探し、そのマシン名と
その言語のライブラリ保持マシン情報をクライアントマ
シン302に送る。それを受け取ったクライアントマシ
ン302においてはクライアント側処理実行手段によ
り、コンパイラを保持しているマシン(コンパイラ保持
マシン303)へソースプログラムとライブラリ保持マ
シン情報を転送し、コンパイルを要求する。コンパイル
を要求されたマシンにおいてはコンパイル処理実行手段
により、コンパイルを実行するととともに、送られてき
たライブラリ保持マシン情報を走査して、そのライブラ
リを保持しているマシンから必要なライブラリを集めて
きてライブラリをリンクし、できたオブジェクトファイ
ルをクライアントマシン302に転送する。この方式に
より、分散環境下での同一機種のコンパイラの重複が削
減され、また、ユーザーがコンパイラを保持したマシン
を意識することなく、オブジェクトファイルを得ること
ができる。
シン301に、クライアントマシン302から機種名と
言語の種類が与えられると、サーバ側処理実行手段によ
り、対応表304,305から必要なコンパイラ及びラ
イブラリを保持しているマシンを探し、そのマシン名と
その言語のライブラリ保持マシン情報をクライアントマ
シン302に送る。それを受け取ったクライアントマシ
ン302においてはクライアント側処理実行手段によ
り、コンパイラを保持しているマシン(コンパイラ保持
マシン303)へソースプログラムとライブラリ保持マ
シン情報を転送し、コンパイルを要求する。コンパイル
を要求されたマシンにおいてはコンパイル処理実行手段
により、コンパイルを実行するととともに、送られてき
たライブラリ保持マシン情報を走査して、そのライブラ
リを保持しているマシンから必要なライブラリを集めて
きてライブラリをリンクし、できたオブジェクトファイ
ルをクライアントマシン302に転送する。この方式に
より、分散環境下での同一機種のコンパイラの重複が削
減され、また、ユーザーがコンパイラを保持したマシン
を意識することなく、オブジェクトファイルを得ること
ができる。
【0009】
【実施例】図1はこの発明の一実施例に係るコンパイル
方式において用いられるコンパイラ保持マシン対応表を
示す図である。このコンパイラ保持マシン対応表304
は、各機種、各言語ごとのコンパイラと該コンパイラを
保持しているマシンとの対応関係を示すものである。図
1中で左の欄は言語、中央の欄は機種名で、その言語の
その機種用のコンパイラを右の欄のマシンが保持してい
るということを示している。図1中で101〜105は
コンパイラ保持マシン名を示す。
方式において用いられるコンパイラ保持マシン対応表を
示す図である。このコンパイラ保持マシン対応表304
は、各機種、各言語ごとのコンパイラと該コンパイラを
保持しているマシンとの対応関係を示すものである。図
1中で左の欄は言語、中央の欄は機種名で、その言語の
その機種用のコンパイラを右の欄のマシンが保持してい
るということを示している。図1中で101〜105は
コンパイラ保持マシン名を示す。
【0010】図2はこのコンパイル方式において用いら
れるライブラリ保持マシン対応表を示す図である。この
ライブラリ保持マシン対応表305は、各機種のライブ
ラリと該ライブラリを保持しているマシンとの対応関係
を示すものである。図2中で左の欄は機種名で、中央の
欄のライブラリを右の欄のマシンが保持しているという
ことを示している。図2中で208〜210はライブラ
リ保持マシン情報を示す。
れるライブラリ保持マシン対応表を示す図である。この
ライブラリ保持マシン対応表305は、各機種のライブ
ラリと該ライブラリを保持しているマシンとの対応関係
を示すものである。図2中で左の欄は機種名で、中央の
欄のライブラリを右の欄のマシンが保持しているという
ことを示している。図2中で208〜210はライブラ
リ保持マシン情報を示す。
【0011】図3はこの実施例に係る分散環境の構成図
である。図3において、301は後述する検索処理を行
うサーバマシン、302はコンパイルを要求するクライ
アントマシン、303はコンパイラを保持しているマシ
ンであるコンパイラ保持マシンを示す。サーバマシン3
01は、コンパイラ保持マシン対応表304、ライブラ
リ保持マシン対応表305、及びサーバ側処理実行手段
としてのサーバプログラム306を備えている。分散環
境下のすべてのマシンはクライアント側処理実行手段と
してのクライアントプログラム307を保持し、コンパ
イラ保持マシン303は他にコンパイル処理実行手段と
してのコンパイルプログラム308を保持している。コ
ンパイラ保持マシン対応表304及びライブラリ保持マ
シン対応表305はサーバマシン301の例えばテキス
トエディタを用いて作成される。
である。図3において、301は後述する検索処理を行
うサーバマシン、302はコンパイルを要求するクライ
アントマシン、303はコンパイラを保持しているマシ
ンであるコンパイラ保持マシンを示す。サーバマシン3
01は、コンパイラ保持マシン対応表304、ライブラ
リ保持マシン対応表305、及びサーバ側処理実行手段
としてのサーバプログラム306を備えている。分散環
境下のすべてのマシンはクライアント側処理実行手段と
してのクライアントプログラム307を保持し、コンパ
イラ保持マシン303は他にコンパイル処理実行手段と
してのコンパイルプログラム308を保持している。コ
ンパイラ保持マシン対応表304及びライブラリ保持マ
シン対応表305はサーバマシン301の例えばテキス
トエディタを用いて作成される。
【0012】図4はこの実施例においてクライアントマ
シンへ入力するコマンド例を示す図である。図4におい
て、401は通常のコンパイルコマンド、402はソー
スファイル名(ソースプログラム名)、403はそのソ
ースファイルをコンパイする機種名を示す。
シンへ入力するコマンド例を示す図である。図4におい
て、401は通常のコンパイルコマンド、402はソー
スファイル名(ソースプログラム名)、403はそのソ
ースファイルをコンパイする機種名を示す。
【0013】図5は上記クライアントマシンの処理を示
すフローチャートである。コンパイルコマンドとソース
ファイル名と機種名が入力され(ステップ51)、その
コンパイルコマンドから言語名を調べる(ステップ5
2)。機種名が入力されると(ステップ53)、検索開
始メッセージをサーバマシン301へ送る(ステップ5
5)。機種名が入力されない場合(ステップ53)、機
種名をクライアントマシン302の機種名とする(ステ
ップ54)。ステップ55の後、サーバマシン301へ
言語名、機種名、及びクライアントマシン302のホス
ト名を送る(ステップ56)。そして検索終了メッセー
ジを待ち(ステップ57)、検索終了メッセージを受け
取り(ステップ58)、コンパイラ保持マシン名とライ
ブラリ保持マシン情報を受け取る(ステップ59)。次
にコンパイラ保持マシン303へコンパイル要求メッセ
ージを送る(ステップ60)。またコンパイラ保持マシ
ン303へコンパイルコマンドとソースファイルとライ
ブラリ保持マシン情報とクライアントマシン302のホ
スト名を送る(ステップ61)。そしてコンパイル終了
メッセージを待ち(ステップ62)、コンパイル終了メ
ッセージを受け取り(ステップ63)、次いでオブジェ
クトファイルを受け取る(ステップS64)。
すフローチャートである。コンパイルコマンドとソース
ファイル名と機種名が入力され(ステップ51)、その
コンパイルコマンドから言語名を調べる(ステップ5
2)。機種名が入力されると(ステップ53)、検索開
始メッセージをサーバマシン301へ送る(ステップ5
5)。機種名が入力されない場合(ステップ53)、機
種名をクライアントマシン302の機種名とする(ステ
ップ54)。ステップ55の後、サーバマシン301へ
言語名、機種名、及びクライアントマシン302のホス
ト名を送る(ステップ56)。そして検索終了メッセー
ジを待ち(ステップ57)、検索終了メッセージを受け
取り(ステップ58)、コンパイラ保持マシン名とライ
ブラリ保持マシン情報を受け取る(ステップ59)。次
にコンパイラ保持マシン303へコンパイル要求メッセ
ージを送る(ステップ60)。またコンパイラ保持マシ
ン303へコンパイルコマンドとソースファイルとライ
ブラリ保持マシン情報とクライアントマシン302のホ
スト名を送る(ステップ61)。そしてコンパイル終了
メッセージを待ち(ステップ62)、コンパイル終了メ
ッセージを受け取り(ステップ63)、次いでオブジェ
クトファイルを受け取る(ステップS64)。
【0014】図6は上記サーバマシンの処理を示すフロ
ーチャートである。まず、検索開始メッセージを受け取
る(ステップ611)。言語名、機種名、及びクライア
ントマシン302のホスト名(検索情報返送アドレス)
を受け取る(ステップ612)。次にコンパイラ保持マ
シン対応表304を走査し(ステップ613)、該当す
るコンパイラ保持マシンが見つからなかった場合(ステ
ップS614)はコンパイラ不保持メッセージを発行す
る(ステップ615)。該当するコンパイラ保持マシン
が見つかった場合(ステップ614)はライブラリ保持
マシン対応表305を走査する(ステップ616)、そ
して該当するライブラリ保持マシン情報が見つからなか
った場合(ステップ617)はライブラリ不保持メッセ
ージを発行する(ステップ618)。該当するライブラ
リ保持マシン情報が見つかった場合(ステップ617)
は検索終了メッセージを発行して(ステップ619)、
コンパイラ保持マシン名とライブラリ保持マシン情報を
クライアントマシン302へ送る(ステップ620)。
ーチャートである。まず、検索開始メッセージを受け取
る(ステップ611)。言語名、機種名、及びクライア
ントマシン302のホスト名(検索情報返送アドレス)
を受け取る(ステップ612)。次にコンパイラ保持マ
シン対応表304を走査し(ステップ613)、該当す
るコンパイラ保持マシンが見つからなかった場合(ステ
ップS614)はコンパイラ不保持メッセージを発行す
る(ステップ615)。該当するコンパイラ保持マシン
が見つかった場合(ステップ614)はライブラリ保持
マシン対応表305を走査する(ステップ616)、そ
して該当するライブラリ保持マシン情報が見つからなか
った場合(ステップ617)はライブラリ不保持メッセ
ージを発行する(ステップ618)。該当するライブラ
リ保持マシン情報が見つかった場合(ステップ617)
は検索終了メッセージを発行して(ステップ619)、
コンパイラ保持マシン名とライブラリ保持マシン情報を
クライアントマシン302へ送る(ステップ620)。
【0015】図7は上記コンパイラ保持マシンの処理を
示すフローチャートである。まず、コンパイル要求メッ
セージを受け取り(ステップ71)、次にコンパイルコ
マンド、ソースファイル、ライブラリ保持マシン情報、
及びホスト名(オブジェクトファイル転送アドレス)を
受け取る(ステップ72)。そして、まずソースファイ
ルをコンパイルし(ステップ73)、次にライブラリ保
持マシン情報を走査して必要なライブラリを該当するマ
シンから持ってくる(ステップ74)。そのライブラリ
をリンクし(ステップ75)、コンパイル要求マシンへ
コンパイル要求メッセージを送る(ステップ76)。こ
れによってできたオブジェクトファイルをコンパイル要
求マシンへ送る(ステップ77)。
示すフローチャートである。まず、コンパイル要求メッ
セージを受け取り(ステップ71)、次にコンパイルコ
マンド、ソースファイル、ライブラリ保持マシン情報、
及びホスト名(オブジェクトファイル転送アドレス)を
受け取る(ステップ72)。そして、まずソースファイ
ルをコンパイルし(ステップ73)、次にライブラリ保
持マシン情報を走査して必要なライブラリを該当するマ
シンから持ってくる(ステップ74)。そのライブラリ
をリンクし(ステップ75)、コンパイル要求マシンへ
コンパイル要求メッセージを送る(ステップ76)。こ
れによってできたオブジェクトファイルをコンパイル要
求マシンへ送る(ステップ77)。
【0016】図8は分散環境下におけるコンパイルの一
例を示すフローチャートである。まず、サーバマシン3
01におけるサーバプログラム306はクライアントマ
シン302から検索開始メッセージが届くのを待つ(ス
テップS1)。クライアントマシン302は例えば図4
に示したような通常のコンパイルコマンド401、ソー
スファイル名402、及びそのソースファイルをコンパ
イルする機種名403をキーボードから入力する(ステ
ップS2)。コンパイル機種名を指定しない場合は、ク
ライアントプログラム307により機種名をクライアン
トマシン302の機種名とする。また、クライアントプ
ログラム307はコンパイルコマンド401を処理し、
言語名C(ソースファイル名402の場合)を知る(ス
テップS3)。次にクライアントプログラム307はサ
ーバプログラム306に検索開始メッセージとともに言
語名(コンパイルコマンド401の場合、C)と機種名
403とホスト名を送り(ステップS4)、検索終了メ
ッセージがサーバプログラム306から届くのを待つ
(ステップS5)。
例を示すフローチャートである。まず、サーバマシン3
01におけるサーバプログラム306はクライアントマ
シン302から検索開始メッセージが届くのを待つ(ス
テップS1)。クライアントマシン302は例えば図4
に示したような通常のコンパイルコマンド401、ソー
スファイル名402、及びそのソースファイルをコンパ
イルする機種名403をキーボードから入力する(ステ
ップS2)。コンパイル機種名を指定しない場合は、ク
ライアントプログラム307により機種名をクライアン
トマシン302の機種名とする。また、クライアントプ
ログラム307はコンパイルコマンド401を処理し、
言語名C(ソースファイル名402の場合)を知る(ス
テップS3)。次にクライアントプログラム307はサ
ーバプログラム306に検索開始メッセージとともに言
語名(コンパイルコマンド401の場合、C)と機種名
403とホスト名を送り(ステップS4)、検索終了メ
ッセージがサーバプログラム306から届くのを待つ
(ステップS5)。
【0017】サーバマシン301におけるサーバプログ
ラム306は、クライアントマシン302のクライアン
トプログラム307から検索開始メッセージを受け取
り、次に言語Cと機種名403(ME)を受け取り、コ
ンパイラ保持マシン対応表304を走査してコンパイラ
保持マシン名101を、ライブラリ保持マシン対応表3
05を走査してライブラリ保持マシン情報209を得て
(ステップS6)、検索終了メッセージとともにクライ
アントプログラム307へ送る。もし該当するマシンが
ない場合は、コンパイラ不保持メッセージ、あるいはラ
イブラリ不保持メッセージをクライアントプログラム3
07に送り、再び検索開始メッセージ待ちの状態にな
る。
ラム306は、クライアントマシン302のクライアン
トプログラム307から検索開始メッセージを受け取
り、次に言語Cと機種名403(ME)を受け取り、コ
ンパイラ保持マシン対応表304を走査してコンパイラ
保持マシン名101を、ライブラリ保持マシン対応表3
05を走査してライブラリ保持マシン情報209を得て
(ステップS6)、検索終了メッセージとともにクライ
アントプログラム307へ送る。もし該当するマシンが
ない場合は、コンパイラ不保持メッセージ、あるいはラ
イブラリ不保持メッセージをクライアントプログラム3
07に送り、再び検索開始メッセージ待ちの状態にな
る。
【0018】クライアントマシン302のクライアント
プログラム307は、検索終了メッセージとともにコン
パイラ保持マシン名101とライブラリ保持マシン情報
209をサーバプログラム306から受け取り、この受
け取った情報からコンパイラ保持マシン名101を知
り、そのマシンへコンパイルコマンド401、ソースフ
ァイル402、そしてサーバプログラム306から受け
取ったライブラリ保持マシン情報209、ホスト名をコ
ンパイル開始メッセージとともに送る(ステップS
7)。そしてコンパイラ保持マシン303のコンパイル
プログラム308からコンパイル終了メッセージが送ら
れてくるのを待つ(ステップS8)。
プログラム307は、検索終了メッセージとともにコン
パイラ保持マシン名101とライブラリ保持マシン情報
209をサーバプログラム306から受け取り、この受
け取った情報からコンパイラ保持マシン名101を知
り、そのマシンへコンパイルコマンド401、ソースフ
ァイル402、そしてサーバプログラム306から受け
取ったライブラリ保持マシン情報209、ホスト名をコ
ンパイル開始メッセージとともに送る(ステップS
7)。そしてコンパイラ保持マシン303のコンパイル
プログラム308からコンパイル終了メッセージが送ら
れてくるのを待つ(ステップS8)。
【0019】コンパイラ保持マシン303のコンパイル
プログラム308は、クライアントプログラム307か
らコンパイル開始メッセージを受け取り、次にコンパイ
ルコマンド401、ソースファイル402、ライブラリ
保持マシン情報209、ホスト名を受け取り、送られて
きたコンパイルコマンド401に従って送られてきたソ
ースファイル402をコンパイルする(ステップS
9)。必要なライブラリは、送られてきたライブラリ保
持マシン情報209を走査し該当するマシンから持って
きてリンクする(ステップS10)。そして、できたオ
ブジェクトファイルをコンパイル終了メッセージととも
にクライアントプログラム307に送る(ステップS1
1)。クライアントマシン302のクライアントプログ
ラム307は、コンパイル終了メッセージとともにオブ
ジェクトファイルを受け取る(ステップS12)。
プログラム308は、クライアントプログラム307か
らコンパイル開始メッセージを受け取り、次にコンパイ
ルコマンド401、ソースファイル402、ライブラリ
保持マシン情報209、ホスト名を受け取り、送られて
きたコンパイルコマンド401に従って送られてきたソ
ースファイル402をコンパイルする(ステップS
9)。必要なライブラリは、送られてきたライブラリ保
持マシン情報209を走査し該当するマシンから持って
きてリンクする(ステップS10)。そして、できたオ
ブジェクトファイルをコンパイル終了メッセージととも
にクライアントプログラム307に送る(ステップS1
1)。クライアントマシン302のクライアントプログ
ラム307は、コンパイル終了メッセージとともにオブ
ジェクトファイルを受け取る(ステップS12)。
【0020】上記実施例の処理は以下のようにまとめる
ことができる。 (1)分散環境下において、サーバマシンにコンパイル
保持マシン対応表とライブラリ保持マシン対応表を設
け、ファイルに格納しておく。 (2)サーバマシンでサーバプログラムが走りだし、ク
ライアントプログラムからの検索開始メッセージを待ち
続ける。 (3)ユーザーが端末機からコンパイルを開始するため
のコマンド(通常のコンパイルコマンド、ソースファイ
ル名、指定機種名)を入力した時、サーバプログラムへ
検索開始メッセージとともに、指定機種名、言語名、ク
ライアントマシンのホスト名を検索情報として送り、サ
ーバプログラムからの検索終了メッセージを待つ。 (4)検索開始メッセージを受け取ったサーバプログラ
ムは検索受け付け状態になり、検索情報として指定機種
名、言語名、クライアントマシンのホストマシン名を受
け取る。それらの情報を受け取ると、サーバプログラム
は指定された機種、指定された言語のコンパイラを保持
しているマシン名と、指定された機種のライブラリ保持
マシン情報を探し出し、それらの情報を、検索を依頼し
たクライアントプログラムへ検索終了メッセージととも
に送る。 (5)検索終了メッセージを受け取ったクライアントプ
ログラムは、送られてきた情報よりコンパイラを保持し
ているマシンを知り、そのマシンへコンパイル要求メッ
セージ、ソースファイル、サーバプログラムから送られ
てきたライブラリ保持マシン情報、クライアントマシン
のホスト名を送り、コンパイル終了メッセージを待つ。 (6)コンパイル要求メッセージを受け取ったコンパイ
ルを保持しているマシンは、必要なライブラリを、送ら
れてきたライブラリ保持マシン情報を走査しそのライブ
ラリを保持しているマシンから選定して集めてくる。そ
してコンパイル及びリンクし、できたオブジェクトファ
イルをコンパイル終了メッセージとともにクライアント
プログラムに送る。 (7)クライアントプログラムはコンパイル終了メッセ
ージとともにオブジェクトファイルを受け取る。
ことができる。 (1)分散環境下において、サーバマシンにコンパイル
保持マシン対応表とライブラリ保持マシン対応表を設
け、ファイルに格納しておく。 (2)サーバマシンでサーバプログラムが走りだし、ク
ライアントプログラムからの検索開始メッセージを待ち
続ける。 (3)ユーザーが端末機からコンパイルを開始するため
のコマンド(通常のコンパイルコマンド、ソースファイ
ル名、指定機種名)を入力した時、サーバプログラムへ
検索開始メッセージとともに、指定機種名、言語名、ク
ライアントマシンのホスト名を検索情報として送り、サ
ーバプログラムからの検索終了メッセージを待つ。 (4)検索開始メッセージを受け取ったサーバプログラ
ムは検索受け付け状態になり、検索情報として指定機種
名、言語名、クライアントマシンのホストマシン名を受
け取る。それらの情報を受け取ると、サーバプログラム
は指定された機種、指定された言語のコンパイラを保持
しているマシン名と、指定された機種のライブラリ保持
マシン情報を探し出し、それらの情報を、検索を依頼し
たクライアントプログラムへ検索終了メッセージととも
に送る。 (5)検索終了メッセージを受け取ったクライアントプ
ログラムは、送られてきた情報よりコンパイラを保持し
ているマシンを知り、そのマシンへコンパイル要求メッ
セージ、ソースファイル、サーバプログラムから送られ
てきたライブラリ保持マシン情報、クライアントマシン
のホスト名を送り、コンパイル終了メッセージを待つ。 (6)コンパイル要求メッセージを受け取ったコンパイ
ルを保持しているマシンは、必要なライブラリを、送ら
れてきたライブラリ保持マシン情報を走査しそのライブ
ラリを保持しているマシンから選定して集めてくる。そ
してコンパイル及びリンクし、できたオブジェクトファ
イルをコンパイル終了メッセージとともにクライアント
プログラムに送る。 (7)クライアントプログラムはコンパイル終了メッセ
ージとともにオブジェクトファイルを受け取る。
【0021】
【発明の効果】以上のように本発明によれば、分散環境
下にあるマシンのうちでサーバマシンには、各機種、各
言語ごとのコンパイラと該コンパイラを保持しているマ
シンとの対応関係を示すコンパイラ保持マシン対応表
と、各機種のライブラリと該ライブラリを保持している
マシンとの対応関係を示すライブラリ保持マシン対応表
とを備えるとともに、上記分散環境下にあるクライアン
トマシンからコンパイルの要求を受けたならば、上記コ
ンパイラ保持マシン対応表とライブラリ保持マシン対応
表を参照して、上記クライアントマシンが要求するコン
パイルに必要なコンパイラ及びライブラリを保持してい
る上記分散環境下にあるマシンをそれぞれ探し出し、探
し出したマシンに関する情報を上記クライアントマシン
に送る処理を実行するためのサーバ側処理実行手段を備
え、上記クライアントマシンには、上記サーバマシンか
ら送られてきたマシンに関する情報を受けて、コンパイ
ラを保持しているマシンへソースプログラムと上記サー
バマシンから得たライブラリ保持マシン情報を転送する
処理を実行するためのクライアント側処理実行手段を備
え、さらに、コンパイラを保持しているコンパイラ保持
マシンには、上記クライアントマシンからのコンパイル
開始要求によりコンパイルを開始するとともに、上記ク
ライアントマシンからのライブラリ保持マシン情報に基
づいて必要なライブラリを保持しているマシンからライ
ブラリを集めてきてライブラリをリンクし、作成された
オブジェクトファイルを、コンパイル要求元の上記クラ
イアントマシンへ転送するコンパイル処理実行手段を備
えているので、分散環境下での同一機種のコンパイラの
重複が削除され、これによりメモリ資源が有効活用でき
て経済性の向上が図れ、また、ユーザーが使用している
マシンにコンパイラがない時でもユーザーは、そのこと
を何ら意識することなくオブジェクトファイルを得るこ
とができ、これにより操作の自動化が実現できて作業能
率の向上が図れ、また、ソフトウエアの使用の拡張性も
あるという効果が得られる。
下にあるマシンのうちでサーバマシンには、各機種、各
言語ごとのコンパイラと該コンパイラを保持しているマ
シンとの対応関係を示すコンパイラ保持マシン対応表
と、各機種のライブラリと該ライブラリを保持している
マシンとの対応関係を示すライブラリ保持マシン対応表
とを備えるとともに、上記分散環境下にあるクライアン
トマシンからコンパイルの要求を受けたならば、上記コ
ンパイラ保持マシン対応表とライブラリ保持マシン対応
表を参照して、上記クライアントマシンが要求するコン
パイルに必要なコンパイラ及びライブラリを保持してい
る上記分散環境下にあるマシンをそれぞれ探し出し、探
し出したマシンに関する情報を上記クライアントマシン
に送る処理を実行するためのサーバ側処理実行手段を備
え、上記クライアントマシンには、上記サーバマシンか
ら送られてきたマシンに関する情報を受けて、コンパイ
ラを保持しているマシンへソースプログラムと上記サー
バマシンから得たライブラリ保持マシン情報を転送する
処理を実行するためのクライアント側処理実行手段を備
え、さらに、コンパイラを保持しているコンパイラ保持
マシンには、上記クライアントマシンからのコンパイル
開始要求によりコンパイルを開始するとともに、上記ク
ライアントマシンからのライブラリ保持マシン情報に基
づいて必要なライブラリを保持しているマシンからライ
ブラリを集めてきてライブラリをリンクし、作成された
オブジェクトファイルを、コンパイル要求元の上記クラ
イアントマシンへ転送するコンパイル処理実行手段を備
えているので、分散環境下での同一機種のコンパイラの
重複が削除され、これによりメモリ資源が有効活用でき
て経済性の向上が図れ、また、ユーザーが使用している
マシンにコンパイラがない時でもユーザーは、そのこと
を何ら意識することなくオブジェクトファイルを得るこ
とができ、これにより操作の自動化が実現できて作業能
率の向上が図れ、また、ソフトウエアの使用の拡張性も
あるという効果が得られる。
【図1】この発明の一実施例によるサーバマシンが保持
しているコンパイラ保持マシン対応表を示す図である。
しているコンパイラ保持マシン対応表を示す図である。
【図2】この発明の一実施例によるサーバマシンが保持
しているライブラリ保持マシン対応表を示す図である。
しているライブラリ保持マシン対応表を示す図である。
【図3】この発明の一実施例に係る分散環境のネットワ
ークの構成図である。
ークの構成図である。
【図4】この実施例においてクライアントへのコマンド
入力例を示す図である。
入力例を示す図である。
【図5】この実施例においてクライアントマシンの処理
を示すフローチャートである。
を示すフローチャートである。
【図6】この実施例においてサーバマシンの処理を示す
フローチャートである。
フローチャートである。
【図7】この実施例においてコンパイラ保持マシンの処
理を示すフローチャートである。
理を示すフローチャートである。
【図8】この実施例において分散環境でのコンパイル処
理を示すフローチャートである。
理を示すフローチャートである。
【図9】従来のコンピュータネットワークの概要構成図
である。
である。
【図10】原始プログラムの翻訳から実行までの流れを
示すフローチャートである。
示すフローチャートである。
301 サーバマシン 302 クライアントマシン 303 コンパイラ保持マシン 304 コンパイラ保持マシン対応表 305 ライブラリ保持マシン対応表 306 サーバプログラム(サーバ側処理実行手段) 307 クライアントプログラム(クライアント側処理
実行手段) 308 コンパイルプログラム(コンパイル処理実行手
段)
実行手段) 308 コンパイルプログラム(コンパイル処理実行手
段)
Claims (1)
- 【請求項1】 複数の異なる機種のコンピュータをネッ
トワークを介して接続した分散環境下において、上記分散環境下のコンピュータであるマシンのうちでサ
ーバマシンには、 各機種、各言語ごとのコンパイラと該
コンパイラを保持しているマシンとの対応関係を示すコ
ンパイラ保持マシン対応表と、各機種のライブラリと該
ライブラリを保持しているマシンとの対応関係を示すラ
イブラリ保持マシン対応表とを備えるとともに、上記分
散環境下にあるクライアントマシンからコンパイルの要
求を受けたならば、上記コンパイラ保持マシン対応表と
ライブラリ保持マシン対応表を参照して、上記クライア
ントマシンが要求するコンパイルに必要なコンパイラ及
びライブラリを保持している上記分散環境下にあるマシ
ンをそれぞれ探し出し、探し出したマシンに関する情報
を上記クライアントマシンに送る処理を実行するための
サーバ側処理実行手段を備え、上記クライアントマシン
には、上記サーバマシンから送られてきたマシンに関す
る情報を受けて、コンパイラを保持しているマシンへソ
ースプログラムと上記サーバマシンから得たライブラリ
保持マシン情報を転送する処理を実行するためのクライ
アント側処理実行手段を備え、さらに、コンパイラを保
持しているコンパイラ保持マシンには、上記クライアン
トマシンからのコンパイル開始要求によりコンパイルを
開始するとともに、上記クライアントマシンからのライ
ブラリ保持マシン情報に基づいて必要なライブラリを保
持しているマシンからライブラリを集めてきてライブラ
リをリンクし、作成されたオブジェクトファイルを、コ
ンパイル要求元の上記クライアントマシンへ転送するコ
ンパイル処理実行手段を備えていることを特徴とする分
散環境下におけるコンパイル方式。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3274602A JP2665089B2 (ja) | 1991-09-26 | 1991-09-26 | 分散環境下におけるコンパイル方式 |
US07/951,461 US5313635A (en) | 1991-09-26 | 1992-09-25 | Compiling system for distributed computer system with multiple types of computers |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3274602A JP2665089B2 (ja) | 1991-09-26 | 1991-09-26 | 分散環境下におけるコンパイル方式 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0588907A JPH0588907A (ja) | 1993-04-09 |
JP2665089B2 true JP2665089B2 (ja) | 1997-10-22 |
Family
ID=17544023
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP3274602A Expired - Lifetime JP2665089B2 (ja) | 1991-09-26 | 1991-09-26 | 分散環境下におけるコンパイル方式 |
Country Status (2)
Country | Link |
---|---|
US (1) | US5313635A (ja) |
JP (1) | JP2665089B2 (ja) |
Families Citing this family (57)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3595564B2 (ja) * | 1993-10-27 | 2004-12-02 | キヤノン株式会社 | 文書処理装置及びその方法 |
US5754852A (en) * | 1993-12-29 | 1998-05-19 | International Business Machines Corporation | Apparatus for combining cellular telephone ring signals and PSTN ring signals |
EP0674414B1 (en) * | 1994-03-21 | 2002-02-27 | Avid Technology, Inc. | Apparatus and computer-implemented process for providing real-time multimedia data transport in a distributed computing system |
US5666501A (en) * | 1995-03-30 | 1997-09-09 | International Business Machines Corporation | Method and apparatus for installing software |
US5740469A (en) * | 1995-04-24 | 1998-04-14 | Motorola Inc. | Apparatus for dynamically reading/writing multiple object file formats through use of object code readers/writers interfacing with generalized object file format interface and applications programmers' interface |
US5860006A (en) * | 1995-09-15 | 1999-01-12 | Apple Computer, Inc. | Processor independent network operating system loadable modules |
US6067575A (en) * | 1995-12-08 | 2000-05-23 | Sun Microsystems, Inc. | System and method for generating trusted, architecture specific, compiled versions of architecture neutral programs |
US6345311B1 (en) * | 1995-12-27 | 2002-02-05 | International Business Machines Corporation | Method and system of dynamically moving objects between heterogeneous execution environments |
US5761512A (en) * | 1995-12-27 | 1998-06-02 | International Business Machines Corporation | Automatic client-server complier |
US5774728A (en) * | 1995-12-27 | 1998-06-30 | International Business Machines Corporation | Method and system for compiling sections of a computer program for multiple execution environments |
AU747018B2 (en) * | 1996-01-16 | 2002-05-09 | British Telecommunications Public Limited Company | Distributed processing |
GB9600823D0 (en) * | 1996-01-16 | 1996-03-20 | British Telecomm | Distributed processing |
US6052711A (en) * | 1996-07-01 | 2000-04-18 | Sun Microsystems, Inc. | Object-oriented system, method and article of manufacture for a client-server session web access in an interprise computing framework system. |
US6266709B1 (en) | 1996-07-01 | 2001-07-24 | Sun Microsystems, Inc. | Object-oriented system, method and article of manufacture for a client-server failure reporting process |
US6424991B1 (en) | 1996-07-01 | 2002-07-23 | Sun Microsystems, Inc. | Object-oriented system, method and article of manufacture for a client-server communication framework |
US6272555B1 (en) | 1996-07-01 | 2001-08-07 | Sun Microsystems, Inc. | Object-oriented system, method and article of manufacture for a client-server-centric interprise computing framework system |
US6038590A (en) * | 1996-07-01 | 2000-03-14 | Sun Microsystems, Inc. | Object-oriented system, method and article of manufacture for a client-server state machine in an interprise computing framework system |
US6434598B1 (en) | 1996-07-01 | 2002-08-13 | Sun Microsystems, Inc. | Object-oriented system, method and article of manufacture for a client-server graphical user interface (#9) framework in an interprise computing framework system |
US6304893B1 (en) | 1996-07-01 | 2001-10-16 | Sun Microsystems, Inc. | Object-oriented system, method and article of manufacture for a client-server event driven message framework in an interprise computing framework system |
US5848246A (en) * | 1996-07-01 | 1998-12-08 | Sun Microsystems, Inc. | Object-oriented system, method and article of manufacture for a client-server session manager in an interprise computing framework system |
US5987245A (en) * | 1996-07-01 | 1999-11-16 | Sun Microsystems, Inc. | Object-oriented system, method and article of manufacture (#12) for a client-server state machine framework |
US5999972A (en) * | 1996-07-01 | 1999-12-07 | Sun Microsystems, Inc. | System, method and article of manufacture for a distributed computer system framework |
US5881289A (en) * | 1996-11-26 | 1999-03-09 | Hewlett-Packard Company | Remote compiling of source code for cross development |
US6247173B1 (en) | 1997-09-24 | 2001-06-12 | Hewlett-Packard Company | Computer compiler optimizer for reducing computer resource consumption during dependence analysis after loop unrolling |
US6237035B1 (en) * | 1997-12-18 | 2001-05-22 | International Business Machines Corporation | System and method for preventing duplicate transactions in an internet browser/internet server environment |
US6185733B1 (en) * | 1998-01-20 | 2001-02-06 | International Business Machines Corporation | Method and apparatus for remote object code inclusion |
US6442685B1 (en) | 1999-03-31 | 2002-08-27 | International Business Machines Corporation | Method and system for multiple network names of a single server |
US6609246B1 (en) * | 1999-12-07 | 2003-08-19 | Bull Hn Information Systems Inc. | Integrated development environment for high speed transaction processing WWW applications on heterogeneous computer systems |
WO2001079999A2 (en) * | 2000-04-12 | 2001-10-25 | Microsoft Corporation | Method and system for accepting precompiled information |
US7155606B1 (en) | 2000-04-12 | 2006-12-26 | Microsoft Corporation | Method and system for accepting preverified information |
US20080201406A1 (en) * | 2000-10-16 | 2008-08-21 | Edward Balassanian | Feature manager system for facilitating communication and shared functionality among components |
DE10108487A1 (de) * | 2001-02-22 | 2002-09-12 | Giesecke & Devrient Gmbh | Verfahren und System zur verteilten Erstellung eines Programms für einen programmierbaren, tragbaren Datenträger |
US7389492B2 (en) * | 2001-03-12 | 2008-06-17 | International Business Machines Corporation | Framework for code generators |
GB0121064D0 (en) * | 2001-08-31 | 2001-10-24 | Transitive Technologies Ltd | Obtaining translation of generic code representation |
US20030149958A1 (en) * | 2002-02-06 | 2003-08-07 | Shumeet Baluja | Automatic code generation for applications which run on common platforms |
KR20030089044A (ko) * | 2002-05-15 | 2003-11-21 | 송경섭 | 소스코드모듈 조합 및 웹환경 제공이 가능한 컴파일시스템 및 방법 |
KR20040051023A (ko) * | 2002-12-11 | 2004-06-18 | 엘지전자 주식회사 | 웹 기반 운영 체제 컴파일 시스템 및 방법 |
US7168064B2 (en) * | 2003-03-25 | 2007-01-23 | Electric Cloud, Inc. | System and method for supplementing program builds with file usage information |
US20060031821A1 (en) * | 2004-08-04 | 2006-02-09 | Rutter Budd J Ii | Divided compiling program application functionality for software development |
US7503040B2 (en) * | 2004-09-30 | 2009-03-10 | International Business Machines Corporation | Configuring a shared library to accommodate relocatable data in a pervasive device |
US7966608B2 (en) * | 2005-10-26 | 2011-06-21 | Hewlett-Packard Development Company, L.P. | Method and apparatus for providing a compiler interface |
JP2008217193A (ja) * | 2007-03-01 | 2008-09-18 | Nec Corp | プレリンクシステム、プレリンク方法、及びプログラム |
US8422480B2 (en) | 2007-10-01 | 2013-04-16 | Qualcomm Incorporated | Acknowledge mode polling with immediate status report timing |
US8365153B2 (en) * | 2007-10-26 | 2013-01-29 | Qualcomm Incorporated | Server-based code compilation |
US20090217246A1 (en) * | 2008-02-27 | 2009-08-27 | Nce Technologies, Inc. | Evaluating Software Programming Skills |
US8402448B2 (en) * | 2008-09-18 | 2013-03-19 | Infineon Technologies Ag | Compiler system and a method of compiling a source code into an encrypted machine language code |
US9069644B2 (en) | 2009-04-10 | 2015-06-30 | Electric Cloud, Inc. | Architecture and method for versioning registry entries in a distributed program build |
US8607189B2 (en) * | 2009-05-18 | 2013-12-10 | National Instruments Corporation | Dynamic analysis of a graphical program in a browser |
US9117071B2 (en) | 2009-06-03 | 2015-08-25 | Apple Inc. | Methods and apparatuses for secure compilation |
US8677329B2 (en) * | 2009-06-03 | 2014-03-18 | Apple Inc. | Methods and apparatuses for a compiler server |
KR20130073374A (ko) * | 2011-12-23 | 2013-07-03 | 삼성전자주식회사 | 응용 프로그램의 분산형 컴파일 시스템, 장치 및 방법 |
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 |
CN103019772A (zh) * | 2012-11-23 | 2013-04-03 | 东方网力科技股份有限公司 | 一种软件开发中的自动化编译方法及系统 |
CN104679893A (zh) * | 2015-03-18 | 2015-06-03 | 成都金本华科技股份有限公司 | 一种基于大数据的信息检索方法 |
CN104679897A (zh) * | 2015-03-18 | 2015-06-03 | 成都金本华科技股份有限公司 | 一种大数据环境下的数据检索方法 |
CN104679896A (zh) * | 2015-03-18 | 2015-06-03 | 成都金本华科技股份有限公司 | 一种大数据环境下的智能检索方法 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6184740A (ja) * | 1984-10-03 | 1986-04-30 | Hitachi Ltd | 汎用オブジエクトコ−ド生成方式 |
US4901231A (en) * | 1986-12-22 | 1990-02-13 | American Telephone And Telegraph Company | Extended process for a multiprocessor system |
US4809170A (en) * | 1987-04-22 | 1989-02-28 | Apollo Computer, Inc. | Computer device for aiding in the development of software system |
JPS63271564A (ja) * | 1987-04-28 | 1988-11-09 | Nec Corp | 分散型テキスト編集システム |
US4951192A (en) * | 1987-06-04 | 1990-08-21 | Apollo Computer, Inc. | Device for managing software configurations in parallel in a network |
US4885684A (en) * | 1987-12-07 | 1989-12-05 | International Business Machines Corporation | Method for compiling a master task definition data set for defining the logical data flow of a distributed processing network |
JPH01196639A (ja) * | 1988-02-01 | 1989-08-08 | Mitsubishi Electric Corp | 情報処理装置 |
US4949254A (en) * | 1988-09-29 | 1990-08-14 | Ibm Corp. | Method to manage concurrent execution of a distributed application program by a host computer and a large plurality of intelligent work stations on an SNA network |
-
1991
- 1991-09-26 JP JP3274602A patent/JP2665089B2/ja not_active Expired - Lifetime
-
1992
- 1992-09-25 US US07/951,461 patent/US5313635A/en not_active Expired - Fee Related
Non-Patent Citations (1)
Title |
---|
「UNIX MAGAZINE」 VOL.5,NO.11 (1990−11)、株式会社アスキー、P.46−58 |
Also Published As
Publication number | Publication date |
---|---|
US5313635A (en) | 1994-05-17 |
JPH0588907A (ja) | 1993-04-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2665089B2 (ja) | 分散環境下におけるコンパイル方式 | |
US6845505B1 (en) | Web request broker controlling multiple processes | |
US5339435A (en) | Heterogenous software configuration management apparatus | |
US6370687B1 (en) | Network computer system and substitute compile server | |
US6996833B1 (en) | Protocol agnostic request response pattern | |
JP4118456B2 (ja) | プログラム言語処理システム、コード最適化方法、及び機械読み出し可能な記憶媒体 | |
KR20050000342A (ko) | 분산 쿼리 엔진 파이프라인 방법 및 시스템 | |
JP2000029714A (ja) | 分散システム中における実行用プログラムコンポ―ネントのパッケ―ジ方法、実行用プログラムコンポ―ネントのパッケ―ジプログラムを記憶したコンピュ―タ読み書き可能な記憶媒体及びコンピュ―タシステム | |
JP2000155686A (ja) | 分散システム中におけるプログラム実行方法及びその装置、分散システム中におけるプログラム実行手順を記憶したコンピュ―タ読み書き可能な記憶媒体及びコンピュ―タシステム | |
JP3778593B2 (ja) | システム資源管理装置および管理方法 | |
US7712088B2 (en) | Method and system for a batch parser | |
Chang | A Service Acquisition Mechanism for the Client/Service Model in | |
Dincer et al. | Building a world-wide virtual machine based on Web and HPCC technologies | |
US5774644A (en) | Method and apparatus for generating a pair of interoperating communications programs | |
JPH08235112A (ja) | 計算機システムの分散ジョブ管理方式 | |
Pase | Dynamic probe class library (dpcl): Tutorial and reference guide | |
Fenwick Jr et al. | Issues and experiences in implementing a distributed tuplespace | |
KR0123247B1 (ko) | 디비엠에스(dbms)의 실시간 지원을 위한 데이타 조작어 처리 방법 | |
JPH04107741A (ja) | Rpcにおけるサービスプロシージャの外出し方式 | |
JPH0877118A (ja) | 分散処理装置及びプロセス実行方法 | |
JPH10187468A (ja) | 並列分散処理システムおよびその方法 | |
Mustafa | Parallel and Distributed Just-in-Time Shell Script Compilation | |
JP3693311B2 (ja) | 分散処理システム | |
JP2000250735A (ja) | データ変換方式及びプログラムを記録したコンピュータ読み取り可能な記録媒体 | |
JP2002132502A (ja) | 言語機能解釈による分散オブジェクト自動生成システム及び方法 |