JPH10143381A - 遊休ワークステーションを共用するための装置および方法 - Google Patents

遊休ワークステーションを共用するための装置および方法

Info

Publication number
JPH10143381A
JPH10143381A JP9302075A JP30207597A JPH10143381A JP H10143381 A JPH10143381 A JP H10143381A JP 9302075 A JP9302075 A JP 9302075A JP 30207597 A JP30207597 A JP 30207597A JP H10143381 A JPH10143381 A JP H10143381A
Authority
JP
Japan
Prior art keywords
computer
job
remote
remote computer
execution
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
JP9302075A
Other languages
English (en)
Inventor
Pi-Yu Chung
ユー チャン ピー
Glenn Stephen Fowler
ステファン フォウラー グレン
Yuan Huang
ハン ユアン
Kiem-Phong Vo
フォン ヴォー キエム
Yi-Min Wang
ミン ワン イー
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.)
AT&T Corp
Original Assignee
AT&T 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 AT&T Corp filed Critical AT&T Corp
Publication of JPH10143381A publication Critical patent/JPH10143381A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5072Grid computing
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • G06F9/5088Techniques for rebalancing the load in a distributed system involving task migration
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3495Performance evaluation by tracing or monitoring for systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Multi Processors (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

(57)【要約】 【課題】 遊休ワークステーションを共用するための装
置および方法を提供する。 【解決手段】 ローカルホストワークステーション10
0の利用者が、遠隔ワークステーション101上におい
て実行するためにジョブを実行依頼することができる。
分散型スケジューリング方式に従って遊休である遠隔ホ
ストが選択され、次に、ジョブ109が実行されている
遠隔ホストのアクティビティが連続的にモニタリングさ
れる。システムが遠隔ホスト上に遠隔ホストの主利用者
のひとつによる幾らかのアクティビティを検出するとき
は、ジョブの実行は直ちに中断され主利用者に対する不
都合が防止される。また、システムは、遠隔ホストのロ
ード平均が過度に高くなる場合も、ジョブ実行を中断す
る。何れの方法によっても、中断されたジョブは、別の
遊休ワークステーションを選択して移送され、中断され
たジョブの実行が再開される(最終チェックポイントの
実施時点から)。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】
関連出願に関するクロス・リファランス 本発明は、以下の国際特許出願、すなわち、PCT特許
出願番号第PCT/US95/07629号「持続性状
態チェックポイントおよび復元システム」およびPCT
特許出願番号第PCT/US95/07660号「実行
制御のためのチェックポイントおよび復元システム」に
関し、この両出願は本発明の譲受人に譲渡され参考資料
として本出願に組み込まれる。さらに、以下の論文も参
考資料として本発明に組み込まれる。すなわち、Y.
M.Wangら、「チェックポイント設定およびその応
用」Symposium on Fault−Tole
rant Computing、1995年、および
G.S.Fowler、「サービスとしてのシェル」U
SENIX Conference Proceedi
ngs、1993年6月。
【0002】発明の背景 本発明は、ネットワークコンピュータシステムに関す
る。特に、本発明は、ネットワーク化されたワークステ
ーション共用ネットワークファイルシステムが置かれて
いる計算環境に関する。ネットワーク化されたコンピュ
ータシステムにおいて遊休資源を共用するためのひとつ
の公知のシステムは、コンドール(Condor)シス
テムであり、ウィスコンシン大学(Uiversity
of Winsconsins)において開発された
(遊休資源とは、通常、少なくとも一定期間にわたり利
用者入力命令が全くないネットワーク化されたワークス
テーションをいう)。コンドールシステムは、M.Li
zkowらの「コンドール−遊休ワークステーションハ
ンター(Condor−a hunter of id
le workstation)」Proc.ICDC
S,104−111ページ、1988年にさらに詳細に
記載されている。
【0003】
【従来の技術】コンドールシステムの主な不利益の幾つ
かについて、以下に述べる。コンドールは、集中型スケ
ジューラを(集中型サーバ上で)使用しネットワーク資
源を割り当てるが、これはセキュリティリスクが生じる
可能性がある。たとえば、遠隔実行のためにサーバにジ
ョブを実行依頼する個別利用者を被利用者とする方法を
サーバが作成するために、サーバが根特権を有すること
を、集中型サーバに要求させることである。集中型サー
バのコーディングにおける正確さにいかなる欠如(たと
えば、バグ)があっても、許可された利用者以外の誰か
が他の利用者の特権にアクセスすることができることに
なる。第二に、コンドールシステムは、遠隔ホスト上の
マウスまたはキーボードアクティビティ(すなわち、利
用者入力)を検出すると、直ちに遠隔ホストのジョブの
実行を移送する。したがって、主利用者以外の利用者を
含めて、いかなる利用者が遠隔ホストの使用を開始する
場合でも、共用実行は終了され、タスクは移送される。
これによって、不必要な移送およびそれに付随する作業
損失が発生する。第三に、集中型サーバの特性のため
に、サーバの起動を実行できるのは根特権を有する者の
みである。
【0004】資源共用を実施するための他の公知のシス
テムは、コシェル(Coshell)システムである
(これは、前述した参考資料として本明細書に組み込ま
れたG.S.Fowierの論文「サービスとしてのシ
ェル」にさらに十分に記載されている)。残念なこと
に、コシェルシステムも不利益があり、たとえば、遠隔
ホストにマウスまたはキーボードアクティビティが生じ
るときは何時でも、コシェルも遠隔のジョブを中断す
る。さらに、コシェルは中断したジョブ(ワークステー
ションにおいて遠隔操作によって実行中であり、遠隔ワ
ークステーションにおける利用者の入力時に中断された
ジョブ)を、他の装置に移送できないが、しかし遠隔ホ
スト上のマウスまたはキーボードアクティビティが終了
するまで待たせた後、ジョブの実行を再開する。コシェ
ルがマウスまたはキーボードアクティビティに対応して
ジョブ実行を中断することによって、遠隔ホストにおい
てマウスまたはキーボードアクティビティが感知された
ときに、不必要なジョブの中断が発生する。
【0005】
【発明が解決しようとする課題】したがって、ネットワ
ーク化されたワークステーション間において、計算資源
を一層有効に共用するシステムおよび方法が提供される
ことが望ましい。
【0006】また、遊休遠隔ワークステーション上にお
けるプログラムの実行が可能となり、プログラム実行の
中断が減少され、処理効率がさらに向上されることが望
ましい。
【0007】さらにまた、最初の遊休遠隔ワークステー
ションが主利用者によって再び使用されるときに、中断
されたジョブを効率的に代替遊休ワークステーションに
移送できるネットワーク資源共用アーキテクチャが提供
されることが望ましい。
【0008】
【課題を解決するための手段】本発明の前述した目的お
よび他の目的は、多数のワークステーションを有し最低
そのひとつが遊休であるネットワークアーキテクチャに
おける共用計算資源の効率を向上させる方法を提供する
ことによって実現される。本発明によって、ジョブが遠
隔で実行されると、主利用者がワークステーションを
「再度占有」しない限りそのジョブを中断しないルーチ
ンが提供される(主利用者以外のいかなる利用者に対し
て)。さらに、本発明によって、遠隔ジョブが中断され
ると、そのジョブを効率的な方法で他の遊休ワークステ
ーションに移送する機能が提供され、遠隔ワークステー
ションが再度遊休になるまでそのジョブが遠隔ワークス
テーションにおいて中断状態のままである必要がなくな
る。
【0009】本発明の前述した目的および他の目的は、
添付図面を参照し、以下の詳細説明を考察することによ
って明らかとなる。添付図面においては、同類部分につ
いては一貫して同じ符号としてある。
【0010】
【発明の実施の形態】図1は、単独利用者(利用者Xと
呼ぶこととする)が、ローカルホスト上において、遠隔
ホスト上における単独ジョブを実行中であるときに、通
常、稼働状態にあるほぼすべてのプロセスを示す説明用
の概略図である。図1は、1半分100および他半分1
01に分割され、1半分100はこのローカルホスト1
00上において実行されるプロセス102〜105を表
し、また、他半分101はこの遠隔ホスト101上にお
いて実行されるプロセス106〜110を表す。このよ
うに、利用者Xは、ローカルホスト100(すなわち図
1の左半分)によって、単独のジョブ109を遠隔ホス
ト101上において実行させる(すなわち、図1の右半
分)。
【0011】ホスト100および101は、ネットワー
クによって接続され、ファイルシステムを共用する。図
1は、二つのホストだけを有するネットワークを示す
が、本発明による技術が通常使用される計算環境におい
ては、多数のホストが存在し、すべてが全体としてネッ
トワーク化され、直接に互いにまたはネットワークのグ
ループと(たとえば、多数のローカルエリアネットワー
クすなわちLAN、または広域ネットワークすなわちW
ANによって)接続され、ファイルシステムを共用する
ことを理解する必要がある。
【0012】利用者Xのような利用者が、遠隔ホスト上
において実行するためにジョブを実行依頼するプロセス
を、以下に、図1を参照しながら説明する。以下の実施
形態においては、図1に示すプロセスがひとつも開始さ
れていない時間上の一点を仮定する。この説明例におい
ては、本発明の原理は前述し本明細書に取り込まれるコ
シェルシステムに適用される。
【0013】最初に、利用者は、利用者のローカルホス
ト上において、デーモンプロセス(ワークステーション
上において利用者によって開始されるとその利用者がプ
ロセスを終了しない限り終了しないプロセス)として、
コシェルプロセスを開始する(コシェルプロセスは、ロ
ーカルネットワークにおいて軽ロード状態のホスト上に
おいてシェル動作を自動的に実行するプロセスであ
る)。したがって、図1において、利用者Xは、ローカ
ルホスト100上において、コシェルプロセス104を
デーモンプロセスとして開始する。あらゆるコシェルデ
ーモンプロセスは、それを開始した利用者の要求のみを
満たす。たとえば、他の利用者Yはホスト100上にロ
グすることはできるが、利用者Xだけがコシェルプロセ
ス104と通信することができる。
【0014】起動されると、コシェルデーモンプロセス
は、それ自体のローカルホスト上、およびネットワーク
によってコシェルがジョブを実行依頼することができる
あらゆる他の遠隔ホスト上において、状態デーモンを開
始する(状態デーモンが既に実行中である場合以外
は)。図1の場合は、コシェル104は、ホスト100
上において実行する状態デーモン105およびホスト1
01上において実行する状態デーモン110を開始させ
る。
【0015】各状態デーモンは、それが実行されている
ホストに関する一定の現在情報を収集し(すなわち、状
態デーモン105はホスト100に関する情報を収集
し、一方、状態デーモン110はホスト101に関する
情報を収集する)、この情報をすべての他のネットワー
クホストにとって可視である固有の状態ファイルに転記
する。この現在情報は、(i)ユニックス命令upti
meによって決定されるホストの1分ロード平均、およ
び(ii)ホストの主利用者による直接または遠隔ログ
イン経由の入力装置上の最終アクティビティからの経過
時間を含む。すべての状態デーモンに関するすべての状
態ファイルは、セントラルディレクトリに保持される。
セントラルディレクトリを使用することによって、たと
えば、あらゆる状態デーモンがその現在情報をネットワ
ーク上のあらゆる他のホストに転記する場合に、セント
ラルディレクトリを使用しなければ発生するネットワー
クトラフィックを減少させる。特に、状態ファイルのセ
ントラルディレクトリによって、ネットワークトラフィ
ックは追加されるホストの数に関して一次に基準化され
る。その上、各状態デーモンは、その現在情報を40秒
プラス10秒の無作為部分ごとに転記し、無作為部分は
現在情報の転記を一時的に分配することによるネットワ
ーク輻輳をさらに軽減することを目的とする。コシェル
は、これらの状態ファイルを使用し、コシェルの利用者
によって実行依頼されたジョブを実行するための適切な
遠隔ホストを選択する。
【0016】各コシェルは、他のすべてのコシェルとは
独立に遠隔ホストを選択し、遠隔ホストは稼働中である
場合もあるので、分散化スケジューリングの形式で実行
するとこととなる。コシェルは、利用者の遠隔ホスト選
択アルゴリズムに無作為平滑化構成要素を有することに
よって、すべての利用者がそのジョブを同じ遠隔ホスト
に実行依頼する可能性を回避する。各コシェルは、単独
の最良の遠隔ホストよりもむしろ、一組の遠隔ホスト候
補を選択し、次にその組の中から個別ホストを無作為に
選択する。
【0017】コシェルは、状態ファイル中の現在情報お
よび属性ファイル中の静的情報に基づいて、一組の遠隔
ホスト候補を選択する。属性ファイルは、すべてのコシ
ェルによって共用されるものがただひとつ存在する。本
発明によって共用されることができる各ホストの場合
は、一般には、属性ファイルは、以下の属性、すなわ
ち、形式、定格、遊休、mem(下記参照)、およびp
user(下記参照)を記憶する。属性ファイルの説明
用例を、図2の表に示す。図2の各行は左から右に、ホ
スト名、次いで、そのホストに対する各属性の値の割当
を示す。
【0018】形式属性は、ホスト形式間で差異が認めら
れる。たとえば、図2の1行目の”sgi.mips”
は、シリコングラフィックス社(Silicon Gr
aphics)製ワークステーション形式を示すが、”
sun4”は、サンマイクロシステムズ社(Sun M
icrosystems)製ワークステーション形式を
示す。定格属性は、ホストに対する速度を特定し、単位
はMIPS(秒当たり100万命令)である。好適に
は、すべてのホストは一般ベンチマークプログラムによ
って評価されるMIPS定格を有する。これによって、
ホスト間におけるMIPS比較の妥当性が保証される。
遊休属性は、主利用者の最終アクティビティ(ホスト状
態ファイルに転記されるとき)から、本発明によってそ
のホストを遠隔ホストとして使用できるまでに、経過す
る必要がある最小時間を特定する。mem属性は、ホス
トの主メモリの大きさ(メガバイト単位)を示し、一
方、puser属性は、ホストの主利用者を示す。たと
えば、図2のホスト「バナナ」は、引用リスト「エメラ
ルド ymwang」によって示される二つの主利用者
を有するが、ホスト「オレンジ」は、主利用者「ルビ
ー」しか有しない(ひとつの主利用者のみであるときは
引用符は必要ない)。
【0019】通常、ホストの主利用者属性は、ホストの
主利用者として選択されるホストの潜在的利用者の領域
の単なる部分集合であり、それは潜在的利用者がホスト
の資源にアクセスする特別の優先度を与えられるはずで
あるためである。
【0020】通常、ホストが特定の個人の事務所に物理
的に配置されるときは、そのホストの主利用者はその事
務所の占有者および占有者の管理補助者を含む。ある種
のコンピュータが設置される場合は、ホストに物理的に
固定されるディスクのホームディレクトリの名称から、
ホストを含む事務所の占有者を確認することができる。
これらのホームディレクトリの名称は、ネットワーク全
体について自動的に収集することができるので、属性フ
ァイルの生成および保持が容易になる。
【0021】ホストを含む事務所の占有者に加えて、ま
たはその代替方法として、ホストの主利用者として、ホ
ストのコンソールからホストにログインする者を誰でも
含めることができる(コンソールがキーボードおよびビ
デオを備える場合は、それらはホストに物理的に接続さ
れている)。
【0022】遠隔ホストがコシェルによって選択される
一組の遠隔ホスト候補に含まれるために、遠隔ホストに
必要とされる他の資格条件に含まれるものは、遠隔ホス
トが遊休であるという必要条件である。遠隔ホストは、
以下の3条件をすべて満足するときに遊休であると見な
される。すなわち、(i)1分ロード平均(ホストの状
態ファイルに転記されたとき)が、しきい値未満である
こと(しきい値は通常約0.5であるとして);(i
i)主利用者の最終アクティビティからの経過時間が
(ホストの状態ファイルに移送されたとき)、属性ファ
イルの遊休属性によってホストに対して特定される時間
の長さ未満であること(この場合、時間の長さは通常約
15秒である);(iii)自明でないジョブが、遠隔
ホストの主利用者によって全然実行されていないこと、
である。
【0023】自明でないジョブは、通常、以下のように
定められる。ユニックス(Unix)命令”ps”(プ
ロセッサ状態を意味する)は、互いに約1分だけ引き離
される二つのps命令の実行によって定期的に実行され
る。ps命令の実行は、ホスト上の各プロセスに関し
て、ps命令が実行された時点において、そのプロセス
が実行中であったか否かを示すフラッグに戻る。両ps
の実行に関して、プロセスに関するフラッグが、そのプ
ロセスが実行中であることを示すときは、そのプロセス
は不真面目でない。二つのps実行の少なくともひとつ
に関して、プロセスが停止しているとして示されるとき
は、そのプロセスは不真面目であると見なされる。
【0024】利用者がコシェルデーモンを実行すると、
利用者は実行依頼プログラムを始動することによって遠
隔ホスト上において特定のジョブの実行を開始すること
ができる。実行依頼プログラムは、引数として、ジョブ
名称およびそのジョブ自体が必要とする引数を採る。ジ
ョブ名称によって、システム命令、アプリケーションプ
ログラムオブジェクトファイルまたはシェルスクリプト
が識別される。また、ジョブ名称は、先行する文章に記
載される項目のいずれかに対する仮名とすることができ
る。図1において、利用者Xは、引数としてのジョブ1
09の名称を使用し実行する実行依頼プロセス102を
開始した。実行依頼プロセスは実行を続け、このプロセ
スに渡されたジョブの遠隔ホスト上における実行が終了
するに至る。
【0025】たとえば、利用者Xが他のジョブを遠隔操
作によって実行することを希望する場合は、利用者Xは
他の実行依頼プロセスを開始する必要があることにな
る。このような各実行依頼プロセスは引き続き実行を続
け、引数としてそのプロセスに渡されたジョブの遠隔ホ
スト上における実行が終了するに至る。このように、所
定のローカルホスト(たとえば、ローカルホスト10
0)上に同時に同じ利用者のための幾つかの実行依頼プ
ロセスが存在することがある。
【0026】開始された実行依頼プロセスが最初に行う
動作は、コシェルクライアントプロセスを起動させるこ
とである。たとえば、実行依頼プロセス102は、起動
処置113によってクライアントプロセス103を開始
する。本発明における応用を通じて使用されるように、
起動とは、親プロセス(たとえば、実行依頼プロセス1
02)が複製子プロセス(たとえば、クライアントプロ
セス103)を生成するときに使用される汎用プロセス
をいう。ユニックスにおいては、起動動作はforkシ
ステムコールによって実現される。クライアントプロセ
スによって、遠隔ホスト上において実行するジョブの標
準誤りおよび標準出力に関するローカルホスト上の出力
が提供される。また、クライアントプロセスは、コマン
ドパイプおよび状態パイプによってそのコシェルと双方
向通信をする。クライアントプロセス103は、ジョブ
109の標準誤りおよび標準出力を受け取る。さらに、
クライアントプロセス103は、コマンドパイプ114
および状態パイプ115によって、そのコシェル104
と通信する。
【0027】クライアントプロセスが開始されると、次
に、そのコシェルは実行を依頼されたジョブを実行する
ための遠隔ホストの選択を始める。前述したように、各
コシェルは、他のすべてのコシェルとは独立に遠隔ホス
トを選択し、無作為平滑化を利用しいずれかひとつの遠
隔ホストがオーバーロードとなることを防止する。コシ
ェルが実行依頼されたジョブを実行するための遊休遠隔
ホストが全くないときは、コシェルは遊休遠隔ホストが
利用できるようになるまで、ジョブを待ち列に入れる。
図1に示す実施形態においては、コシェル104は、遊
休遠隔ホスト101を選択し、実行依頼されたジョブを
実行する。
【0028】遠隔ホストが選択されると、次に、コシェ
ルは遠隔ホスト上においてシェルを開始する。ただし、
そのコシェルが、その遠隔ホスト上において、コシェル
によるその同じ遠隔ホストに対する先行ジョブ実行依頼
から繰り延べられたシェルを既に実行している場合を除
く。コシェルが選択された遠隔ホスト上において既にシ
ェルを実行していないと仮定すると、コシェルはユニッ
クスコマンドrshを使用しひとつのシェルを開始する
ことになる。コシェルは、コマンドパイプおよび状態パ
イプによって生成したシェルとの双方向通信を行う。図
1において、コシェル104は、シェルksh106を
遠隔ホスト101上において開始している。コシェル1
04およびksh106は、コマンドパイプ116およ
び状態パイプ120によって通信する。
【0029】コシェルによって遠隔ホスト上において開
始されるシェルの形式はkshと呼ばれ、シェルがその
標準出力および標準誤り(遠隔に実行依頼されたジョブ
によって生成される)をネットワークによってそのコシ
ェルに送りまた送り返す機能を有する点のみが、通常の
ユニックスシェルと異なることに注意する必要がある。
次に、コシェルは、この標準出力および標準誤りを正し
いクライアントプロセスに送る。図1の場合は、ksh
106において実行中であるジョブ109の標準出力お
よび標準誤りは、ネットワークによってコシェル104
に送られる。次に、コシェル104は、この標準出力お
よび標準誤りをクライアントプロセス103に送る。
【0030】選択された遠隔ホスト上においてkshが
実行されると、LDSTUBと呼ばれるプログラムがk
shの下で開始される。LDSTUBプロセスは、ks
hの下で各ジョブに対してkshのコシェルから開始さ
れ、このプロセスは選択される遠隔ホスト上において実
行される必要がある。図1の場合は、LDSTUBプロ
セス107は、ksh106の下で起動される。起動さ
れると、LDSTUBプロセスは、利用者のジョブおよ
びモニタデーモンの実行を、両者を起動することによっ
て開始する。このように、LDSTUBプロセス107
は、モニタデーモン108を起動119によって開始
し、また利用者Xのジョブ109を起動118によって
開始する。
【0031】モニタデーモンは、細粒度ポーリングプロ
セスである。モニタデーモンは、選択される遠隔ホスト
について、以下の条件を検査する。すなわち、(i)選
択される遠隔ホストの主利用者による直接または遠隔ロ
グインのいずれかによる入力装置に関するアクティビテ
ィ、(ii)選択される遠隔ホストの主利用者によって
実行中の不真面目でないジョブ、または(iii)特定
のしきい値以上である(通常、しきい値は約3.5であ
る)選択された遠隔ホストに関する1分ロード平均(ユ
ニックスコマンドuptimeを実行するモニタデーモ
ン自体によって決定される)。モニタデーモンは細粒度
ポーリングプロセスであり、それはモニタデーモンは前
述した3条件を頻繁に、通常、10秒ごとに検査するた
めである。前述した3条件の内ひとつ以上が満足される
ときは、モニタデーモンはそのLDSTUBプロセスに
信号を送る。モニタデーモンのLDSTUBプロセスに
対するこの信号によって、以下に述べる、利用者のジョ
ブを他の遠隔ホストに移送するプロセスが開始される。
図1に示す実施形態においては、モニタデーモン108
は、遠隔ホスト101について、前述した3条件のそれ
ぞれを検査する。
【0032】通常、利用者ジョブは、既にLibckp
チェックポイント設定ライブラリと連係されている遠隔
ホスト上において実行される。Libckpは、ユニッ
クスアプリケーションに対する利用者に透明なチェック
ポイント設定ライブラリである。Libckpは、利用
者のプログラムと連係させ、利用者の資源コードに対す
るいかなる変形も必要とすることなく定期的にプログラ
ム状態を安定記憶装置に記憶することができる。チェッ
クポイントを設定されたプログラム状態は、真に透明で
あり無矛盾である移送を提供するために、以下を含む。
すなわち、(i)プログラムカウンタ、(ii)スタッ
クポインタ、(iii)プログラムスタック、(iv)
開いたファイル記述、(v)広域変数または静的変数、
(vi)プログラムおよびプログラムに連係されるライ
ブラリに関して動的に割り当てられるメモリ、および
(vii)すべての持続状態(すなわち、利用者ファイ
ル)を含む。この実施形態においては、利用者Xのジョ
ブ109はLibckpライブラリ111と連係されて
いる。
【0033】図1に示す各プロセス、すなわち、プロセ
ス102〜100は、この時点において、ジョブ実行依
頼プロセスにおいて稼働中である。
【0034】以上、ジョブ実行依頼プロセスの説明にお
いては、単独利用者による遠隔実行のために、単独ジョ
ブが実行依頼されるときに使用されるプロセスを提示す
ることに重点がおかれた。しかし、ローカルホストの利
用者は、第一の実行依頼されたジョブの実行が完了する
前に、遠隔ホストにおいて第二ジョブ実行を開始できる
ことに注意されたい。この第二ジョブの実行依頼は、第
一ジョブ実行依頼を既に実行中であるプロセスと、以下
のように調整される。
【0035】第一に、利用者は引数として第二ジョブ名
称を使用し2回目の実行依頼プログラムを開始する(第
一ジョブに関して前述した方法と同じ方法によって)。
実行依頼プログラムの2回目の開始によって、第二ジョ
ブの遠隔実行を管理するためのみに第二実行依頼プロセ
スが生成される。第二実行依頼プロセスは、第二コシェ
ルクライアントプロセスを起動し(コシェルプロセス1
04と同様に)、これも第二ジョブの遠隔実行のための
みに起動される。しかし、第二コシェルクライアントプ
ロセスは、第一コシェルクライアントプロセスが通信す
るコシェルと同じコシェルと通信する。
【0036】次に、第二コシェルは遠隔ホストを選択
し、その遠隔ホスト上において、第二ジョブを実行しk
shを開始する。ただし、コシェルが既にその遠隔ホス
ト上においてkshを実行中である場合を除く。たとえ
ば、コシェルが第一ジョブを実行中である同じ遠隔ホス
トを選択するときは、コシェルは第一ジョブを実行中の
同じkshを使用することになる。コシェルが新しいk
shを生成することを必要とするか否かに関係なく、第
二ジョブの遠隔実行のみのために、選択されたksh内
において、第二LDSTUBプロセスが開始される。第
二LDSTUBプロセスは、第二ジョブおよび第二モニ
タデーモンを起動する。
【0037】通常、その時、利用者がすべて同じローカ
ルホストから実行依頼されたN個のジョブを遠隔実行中
である場合は、利用者は実行依頼されたN個の各ジョブ
に対して生成されるそれぞれ独特の実行依頼、クライア
ント、LDSTUB、モニタデーモンおよびジョブプロ
セスのセットを有することになることが分かる。N個の
ジョブはすべて同じコシェルデーモンを共用することに
なる。同じ遠隔ホスト上において実行中のN個のジョブ
の何れも、同じkshを共用することになる。
【0038】以下の説明においては、ローカルホストの
一利用者のための単独の遠隔実行ジョブに関する本発明
による操作を取り扱う。同じ利用者によって同じローカ
ルホストから実行依頼される追加遠隔実行ジョブの場合
は、このような各追加ジョブは、それぞれの独特の独立
した一組のプロセスを有することになり、それらのプロ
セスは以下に述べる方法と同じように条件に応答する。
【0039】ジョブ実行依頼プロセスにおいて、利用者
のジョブが遠隔実行されているときに、二つの主要条件
の内のひとつが発生する。すなわち、(i)モニタデー
モンによって検査される前述した3条件のひとつ以上が
満足され、利用者のジョブを他の遠隔ホストに移送させ
る;または(ii)遠隔実行ジョブが終了する、の内の
ひとつが発生する。プロセスは、ジョブ実行依頼プロセ
スにおけるこの時点で前述のように発生する二つの主要
条件のそれぞれによって、順次、以下のように開始され
る。
【0040】第一主要条件(モニタデーモンによって検
査される3条件のひとつ以上であり発生しているもので
よい)が満足されるときは、利用者のジョブを他の遠隔
ホストに移送するために、以下のステップが行われる。
これらのステップのそれぞれを、図1の特定のプロセス
構成を参照しながら詳述する。
【0041】第一に、第一主要条件が満足されることに
よって、モニタデーモンが出される。モニタデーモンが
出ることによって、SIGCHLD信号がモニタデーモ
ンの親LDSTUBプロセスに送られる。図1におい
て、第一主要条件が満足されたときにモニタデーモン1
08が出ると、SIGCHLD信号がモニタデーモン1
08の親プロセスLDSTUB107に送られる。
【0042】第二に、LDSTUBプロセスは、利用者
のジョブを停止する。図1において、LDSTUBプロ
セス107は、利用者Xのジョブ109を停止する。ジ
ョブ109の場合のように、利用者のジョブがLibc
kpと連係されているときは、ジョブのその次の再始動
はアクティビティが最終チェックポイント以降失われて
いることを意味するだけである。通常、Libckpは
チェックポイントを30分ごとに実行するので、最大で
も、最後の30分のジョブ実行のみが失われることにな
る。
【0043】第三のステップは、以下に示す通りであ
る。LDSTUBプロセスとその実行依頼プロセスとの
間にはソケット接続がある。このソケット接続によっ
て、LDSTUBプロセスはメッセージをその実行依頼
プロセスに送り、実行依頼プロセスに利用者のジョブを
別の遠隔ホスト上において実行させることを告げる。L
DSTUBプロセス107は、このようなメッセージを
ソケット112によって実行依頼プロセス102に送
る。
【0044】第四ステップにおいて、実行依頼プロセス
は、当初から起動されコシェルによって遠隔ジョブと通
信したクライアントプロセスを停止する。実行依頼プロ
セスは、そのLDSTUBプロセスも停止する。図1の
場合は、実行依頼プロセス102は、クライアントプロ
セス103およびLDSTUBプロセス107を停止す
る。
【0045】第五ステップにおいて、実行依頼プロセス
は利用者のジョブを、前述した実行依頼方法に従って別
の遠隔ホストに再度実行依頼する。実行依頼プロセス1
02は、ジョブ109を別の遠隔ホスト上において実行
することをコシェル104に再度実行依頼する。その次
のプロセスおよびジョブ109の再実行依頼の一部であ
る他の遠隔ホストは、図1には示されていない。利用者
のジョブが別の遠隔ホスト上において実行されるとき、
ジョブの最初の動作はチェックポイントファイルを検査
することである。ジョブがチェックポイントファイルを
発見すると、チェックポイントファイルはジョブの状態
を最終チェックポイントの時点における状態に復元す
る。
【0046】それに基づいて利用者のジョブが実行され
ていたkshは、kshのコシェルに対するkshのパ
イプ接続と共に、引き続き実行中であることに注意する
ことが重要である。候補遠隔ホストに関して前述した3
条件が満足されることによって、kshを実行している
遠隔ホストが再び遊休となるならば、このkshを、後
で再度kshのコシェルによって使用することができ
る。図1の場合には、ksh106は、コシェル104
に対するkshのコマンドパイプ116および状態パイ
プ120接続と共に、引き続き実行される。
【0047】代替方法として、前述した第二主要条件
(遠隔実行ジョブ完了に関する)が満足されるときは、
以下のステップを行う。第一主要条件の場合と同じよう
に、これらの各ステップを、図1の特定のプロセス構成
を参照しながら詳述する。
【0048】第一に、利用者のジョブが遠隔ホスト上に
おける実行を完了するとき、ジョブが出ることによっ
て、SIGCHLD信号がジョブの親プロセス(ジョブ
のLDSTUBプロセス)に送られる。SIGCHLD
信号の受信に応じて、LDSTUBは、ユニックスシス
テムコールwait(2)によって、利用者のジョブの
出口状態番号(状態番号は、あらゆるユニックスプロセ
スが出るたびに復帰され、プロセスの完了状態を示す)
を得る。利用者Xのジョブ109が遠隔ホスト101上
における実行を終了すると、ジョブが出ることによっ
て、SIGCHLD信号がジョブの親プロセス107に
送られることになる。次に、LDSTUBプロセス10
7は、ジョブ109の出口状態番号をwait(2)シ
ステムコールによって得る。
【0049】第二に、LDSTUBプロセスは、そのモ
ニタデーモンを停止する。LDSTUBプロセス107
は、モニタデーモン108を停止する。
【0050】第三ステップは、以下の通りである。LD
STUBプロセスとその実行依頼プロセスとの間には、
ソケット接続がある。このソケット接続によって、LD
STUBプロセスは、メッセージをその実行依頼プロセ
スに送り、実行依頼プロセスに利用者のジョブは終了し
利用者のジョブによって復帰された状態番号を含むこと
を告げる。LDSTUBプロセス107は、このような
メッセージをソケット112によって実行依頼プロセス
102に送る。
【0051】第四ステップにおいては、実行依頼プロセ
スは、実行プロセスが最初に起動しコシェルによって遠
隔ジョブと通信したクライアントプロセスを停止する。
次に、コシェルは、特定のクライアントプロセスが特定
の信号番号によって停止されたことを検出する。これを
検出することに応じて、コシェルはメッセージを適切な
kshに送る。コシェルによって送られたメッセージに
よって、実行依頼プロセスがそのクライアントプロセス
を停止するために使用した同じ信号番号を使用し、実行
依頼プロセスに対応するLDSTUBプロセスを停止す
ることが、kshに命令される。図1の場合は、実行依
頼プロセス102はクライアントプロセス103を停止
する。次に、コシェル104は、クライアントプロセス
103は停止されたことを特定信号番号によって検出す
る。これを検出することに応じて、コシェル104はメ
ッセージをksh106に送る。コシェル104によっ
て送られるメッセージによって、実行依頼プロセス10
2がクライアントプロセス103を停止するときに使用
した同じ信号番号を使用しLDSTUBプロセス107
を停止することが、ksh106に命令される。
【0052】第五ステップにおいて、実行依頼プロセス
は、遠隔実行されたジョブによって復帰された同じ状態
番号と共に出る。実行依頼プロセス102は、遠隔ホス
ト101上におけるジョブ109の実行によって復帰さ
れた状態番号と共に出る。
【0053】前述した移送プロセスと同様に、それに基
づいて利用者のジョブが実行されたkshは、そのコシ
ェルに対するそのパイプ接続と共に、引き続き実行され
ていることに注意することが重要である。候補遠隔ホス
トに関する前述した3条件が満足されてkshを実行し
た遠隔ホストが再び遊休になれば、このkshは後で再
度使用することができる。図1の場合は、ksh106
は、コシェル104に対するそのコマンドパイプ116
および状態パイプ120接続と共に引き続き実行され
る。
【0054】本発明によって共用されるワークステーシ
ョンは、すべてをひとつの形式とすることができる(同
質ワークステーション)。一例は、サンマイクロシステ
ムズ社製ワークステーションだけを共用することができ
るネットワークである。あるいは、本発明を使用し、種
々の形式のワークステーション共用することができる
(異質ワークステーション)。一例は、サンマイクロシ
ステムズ社製ワークステーションおよびシリコングラフ
ィックス社製ワークステーションの両者を使用するネッ
トワークである。
【0055】異質ワークステーションについて本発明を
使用するときは、ジョブの移送は、ワークステーション
形式に基づいて、通常は以下の通りである。ジョブの移
送について形式が全く特定されていないときは、ジョブ
はジョブの実行を依頼したワークステーションと同じ形
式のワークステーション間に限定して移送される。しか
し、利用者はジョブを実行依頼するときに、ジョブをひ
とつの特定の形式のワークステーション上においてのみ
実行することを指定することが可能であり、この形式は
ジョブを依頼したワークステーションの形式と同じであ
る必要はない。利用者は、ジョブを実行依頼するとき
に、ジョブはいかなる形式のワークステーションにおい
ても実行できることを指定することもできる。
【0056】当業者は、本発明は記載されている実施形
態以外の方法によって実施できることを認識するであろ
うが、実施形態は説明のために提示するものであり限定
するためのものではなく、本発明は特許請求の範囲補味
によって制約される。
【図面の簡単な説明】
【図1】 単独利用者が、ローカルホスト上において、
本発明の原理に従って、遠隔ホスト上における単独ジョ
ブを実行中であるときに、通常、稼働状態にあるほぼす
べてのプロセスを示す説明用の概略線図である。
【図2】 本発明の原理による属性ファイルの代表的な
サンプルを示す表図である。
【符号の説明】
100 1半分(ローカルホストおよびそのホスト上に
おいて実行されるプロセス)、101 他半分(遠隔ホ
ストおよびそのホスト上において実行されるプロセ
ス)、102 実行依頼プロセス、103 クライアン
トプロセス、104コシェルプロセス、105,110
状態デーモン、106 シェルksh、107 LD
STUBプロセス、108 モニタプロセス、109
ジョブ、111 Lickpライブラリ、112 ソケ
ット、113 起動処置、114,116 コマンドパ
イプ、115,120 状態パイプ、118,119
起動。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 グレン ステファン フォウラー アメリカ合衆国 ニュージャージー州 ス コッチ プレインズ ライド プレース 2322 (72)発明者 ユアン ハン アメリカ合衆国 ニュージャージー州 ブ リッジウォーター リンバーガー ドライ ブ 33 (72)発明者 キエム フォン ヴォー アメリカ合衆国 ニュージャージー州 バ ークレイ ハイツ スウェンソン サーク ル 80 (72)発明者 イー ミン ワン アメリカ合衆国 ニュージャージー州 バ ークレイ ハイツ パインウッド クレセ ント 10

Claims (35)

    【特許請求の範囲】
  1. 【請求項1】 ネットワークによって互いに接続される
    複数のコンピュータ間において計算機資源を共有するた
    めのシステムであって、 前記複数のコンピュータのひとつがホストコンピュータ
    であり、遠隔実行のためのジョブを受け取るローカルコ
    ンピュータと、 遠隔実行のためのジョブを受け取る機能を有する遠隔コ
    ンピュータとを備え、前記遠隔コンピュータは前記複数
    のコンピュータのひとつであり、現在状態プロセスを実
    行し前記遠隔コンピュータの主利用者に関するアクティ
    ビティ情報を含む現在情報を収集し、 該システムは、さらに、 少なくとも前記遠隔コンピュータに関する前記主利用者
    の現在情報に基づいて、受け取ったジョブを遠隔実行す
    るための位置を選択するスケジューリングコンピュータ
    を備え、前記スケジューリングコンピュータは前記複数
    のコンピュータのひとつであることを特徴とするシステ
    ム。
  2. 【請求項2】 請求項1に記載のシステムであって、前
    記スケジューリングコンピュータと前記ローカルコンピ
    ュータとは同一のコンピュータであることを特徴とする
    システム。
  3. 【請求項3】 請求項1に記載のシステムであって、前
    記スケジューリングコンピュータと前記遠隔コンピュー
    タとは同一のコンピュータであることを特徴とするシス
    テム。
  4. 【請求項4】 請求項1に記載のシステムであって、前
    記ローカルコンピュータ、前記遠隔コンピュータおよび
    前記スケジューリングコンピュータは、前記複数のコン
    ピュータの内の三つの異なるコンピュータであることを
    特徴とするシステム。
  5. 【請求項5】 請求項1に記載のシステムであって、遠
    隔実行のための位置の選択に関する前記スケジューリン
    グコンピュータ機能は、前記複数のコンピュータ間の分
    散型スケジューリングプロセスとして実行されることを
    特徴とするシステム。
  6. 【請求項6】 請求項1に記載のシステムであって、前
    記ローカルコンピュータは、前記ローカルコンピュータ
    の利用者によって遠隔実行を実行依頼されているジョブ
    に応じて実行依頼プロセスを実行することを特徴とする
    システム。
  7. 【請求項7】 請求項1に記載のシステムであって、前
    記遠隔コンピュータは、前記遠隔コンピュータの主利用
    者のアクティビティをモニタリングするモニタプロセス
    も実行することを特徴とするシステム。
  8. 【請求項8】 請求項1に記載のシステムであって、前
    記アクティビティ情報は、前記遠隔コンピュータの主利
    用者による入力装置上の最終アクティビティからの経過
    時間を含むことを特徴とするシステム。
  9. 【請求項9】 請求項8に記載のシステムであって、前
    記入力装置は前記遠隔コンピュータに直接に接続される
    ことを特徴とするシステム。
  10. 【請求項10】 請求項8に記載のシステムであって、
    前記入力装置は遠隔ログインプロセスによって前記遠隔
    コンピュータに直接に接続されることを特徴とするシス
    テム。
  11. 【請求項11】 請求項1に記載のシステムであって、
    前記遠隔コンピュータの主利用者による前記入力装置上
    の最終アクティビティからの経過時間が所定のしきい値
    より大きい場合のみ、前記スケジューリングコンピュー
    タは、ジョブを遠隔操作で実行するコンピュータとして
    遠隔コンピュータを選択することを特徴とするシステ
    ム。
  12. 【請求項12】 請求項1に記載のシステムであって、
    さらに少なくとも前記ローカルおよび遠隔コンピュータ
    によって共有されるファイルシステムを備えることを特
    徴とするシステム。
  13. 【請求項13】 請求項12に記載のシステムであっ
    て、前記遠隔コンピュータの主利用者は前記ファイルシ
    ステムの中央位置に記憶される属性情報によって決定さ
    れることを特徴とするシステム。
  14. 【請求項14】 請求項13に記載のシステムであっ
    て、前記スケジューリングコンピュータは、前記ファイ
    ルシステムに保持される現在情報に基づいて位置を選択
    し、また各遠隔コンピュータ上の前記現在状態プロセス
    はプロセスが収集する前記現在情報を前記ファイルシス
    テムの前記中央位置に転記することを特徴とするシステ
    ム。
  15. 【請求項15】 ネットワークによって互いに接続され
    る複数のコンピュータ間において計算機資源を共有する
    システムであって、 利用者が遠隔コンピュータ上において実行するために前
    記ローカルコンピュータに実行依頼したジョブを受け取
    るローカルコンピュータと、 スケジューリングプロセスによって選択され前記利用者
    によって実行依頼されるジョブを実行しまたモニタプロ
    セスを実行する遠隔コンピュータとを備え、前記モニタ
    プロセスが前記遠隔コンピュータ上に前記遠隔コンピュ
    ータの主利用者によるアクティビティを検出する場合
    は、前記遠隔コンピュータが前記ジョブの実行を中断状
    態とさせることを特徴とするシステム。
  16. 【請求項16】 請求項15に記載のシステムであっ
    て、前記遠隔コンピュータの主利用者によるアクティビ
    ティが前記遠隔コンピュータの入力装置において検出さ
    れる場合は、前記遠隔コンピュータは前記ジョブの実行
    を中断することを特徴とするシステム。
  17. 【請求項17】 請求項15に記載のシステムであっ
    て、前記ジョブが前記遠隔コンピュータによって中断さ
    れるときは、第二遠隔コンピュータ上における実行のた
    めに前記ジョブは前記実行依頼プロセスによって前記ス
    ケジューリングプロセスに再度実行依頼されるように、
    前記ローカルコンピュータが実行依頼プロセスを実行す
    ることを特徴とするシステム。
  18. 【請求項18】 請求項15に記載のシステムであっ
    て、前記モニタプロセスは親プロセスによって起動され
    ることを特徴とするシステム。
  19. 【請求項19】 請求項15に記載のシステムであっ
    て、前記モニタプロセスは細粒度ポーリングプロセスで
    あることを特徴とするシステム。
  20. 【請求項20】 請求項15に記載のシステムであっ
    て、前記ジョブはチェックポイント設定ライブラリと連
    係されることを特徴とするシステム。
  21. 【請求項21】 請求項15に記載のシステムであっ
    て、さらに少なくとも前記ローカルコンピュータおよび
    遠隔コンピュータによって共有されるファイルシステム
    を備えることを特徴とするシステム。
  22. 【請求項22】 請求項21に記載のシステムであっ
    て、前記遠隔コンピュータの主利用者は前記ファイルシ
    ステムの中央位置に記憶される属性情報によって決定さ
    れることを特徴とするシステム。
  23. 【請求項23】 請求項15に記載のシステムであっ
    て、前記スケジューリングプロセスは分散型スケジュー
    リングプロセスであることを特徴とするシステム。
  24. 【請求項24】 請求項23に記載のシステムであっ
    て、前記分散型スケジューリングプロセスは遠隔実行の
    ためにジョブを実行依頼する前記ローカルコンピュータ
    上において実行されることを特徴とするシステム。
  25. 【請求項25】 請求項15に記載のシステムであっ
    て、前記スケジューリングプロセスは全ネットワークに
    対して単独プロセッサによって実行されることを特徴と
    するシステム。
  26. 【請求項26】 ネットワークによって互いに接続され
    る複数のコンピュータ間において計算機資源を共用する
    方法であって、 遠隔実行するためのジョブを第一コンピュータ上におい
    て受け取るステップと、 スケジューリングプロセスを実行し、遠隔操作によって
    アクセスできる前記複数のコンピュータのそれぞれに関
    する現在情報に基づいて前記受け取られたジョブの遠隔
    実行をスケジュールし、前記現在情報は前記各遠隔アク
    セス可能コンピュータの主利用者に関するアクティビテ
    ィ情報を含むステップと、 現在状態プロセスを前記複数のコンピュータの内の少な
    くともひとつの第二コンピュータ上において実行し、前
    記第二コンピュータは前記遠隔アクセス可能コンピュー
    タのひとつであり、前記現在状態プロセスは作動して前
    記第二コンピュータに関する情報を収集するステップ
    と、 を含むことを特徴とする方法。
  27. 【請求項27】 請求項26に記載の方法であって、さ
    らに、前記第一コンピュータの利用者によって実行依頼
    されているジョブに応じて、実行依頼プロセスを前記第
    一コンピュータ上において実行するステップを含むこと
    を特徴とする方法。
  28. 【請求項28】 請求項26に記載の方法であって、現
    在状態プロセスを実行する前記ステップは、前記第二コ
    ンピュータの主利用者による入力装置上の最終アクティ
    ビティからの経過時間を含むアクティビティ情報を収集
    することを特徴とする方法。
  29. 【請求項29】 請求項26に記載の方法であって、ス
    ケジューリングプロセスを実行する前記ステップは、前
    記遠隔コンピュータの主利用者による入力装置上の最終
    アクティビティからの経過時間が所定のしきい値より大
    きい場合のみ、前記実行依頼されたジョブの遠隔実行の
    ために遠隔コンピュータを選択し、前記遠隔コンピュー
    タは前記第二コンピュータのひとつであることを特徴と
    する方法。
  30. 【請求項30】 請求項29に記載の方法であって、さ
    らに、 前記スケジューリングプロセスによって選択された前記
    遠隔コンピュータ上において前記受け取られたジョブを
    実行するステップと、 前記遠隔コンピュータの主利用者による前記遠隔コンピ
    ュータのアクティビティをモニタリングするステップ
    と、 を含むことを特徴とする方法。
  31. 【請求項31】 請求項30に記載の方法であって、さ
    らに、主利用者によるアクティビティがモニタリングス
    テップ中に検出されるときは、前記ジョブの前記遠隔実
    行を中断するステップを含むことを特徴とする方法。
  32. 【請求項32】 請求項31に記載の方法であって、さ
    らに、主利用者によるアクティビティが前記モニタリン
    グステップ中に検出されるときは、異なる遠隔コンピュ
    ータ上において実行するために前記中断されたジョブを
    前記スケジューリングプロセスに再度実行依頼すること
    を特徴とする方法。
  33. 【請求項33】 請求項30に記載の方法であって、さ
    らに、前記ジョブの実行に先行して前記ジョブをチェッ
    クポイントライブラリと連係させるステップを含むこと
    を特徴とする方法。
  34. 【請求項34】 請求項26に記載の方法であって、ス
    ケジューリングプロセスを実行する前記ステップは分散
    型スケジューリングプロセスとして実行されることを特
    徴とする方法。
  35. 【請求項35】 請求項26に記載の方法であって、ス
    ケジューリングプロセスを実行する前記ステップは単独
    プロッセサ上において集中型スケジューリングプロセス
    として実行されることを特徴とする方法。
JP9302075A 1996-11-05 1997-11-04 遊休ワークステーションを共用するための装置および方法 Pending JPH10143381A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/740,908 US5978829A (en) 1996-11-05 1996-11-05 Apparatus and methods for sharing idle workstations
US08/740,908 1996-11-05

Publications (1)

Publication Number Publication Date
JPH10143381A true JPH10143381A (ja) 1998-05-29

Family

ID=24978567

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9302075A Pending JPH10143381A (ja) 1996-11-05 1997-11-04 遊休ワークステーションを共用するための装置および方法

Country Status (4)

Country Link
US (1) US5978829A (ja)
EP (1) EP0840216A3 (ja)
JP (1) JPH10143381A (ja)
CA (1) CA2218509C (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006038455A1 (ja) * 2004-10-05 2006-04-13 Matsushita Electric Industrial Co., Ltd. 処理装置
JP2011134215A (ja) * 2009-12-25 2011-07-07 Taito Corp クラスタリングシステム

Families Citing this family (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7100069B1 (en) * 1996-02-16 2006-08-29 G&H Nevada-Tek Method and apparatus for controlling a computer over a wide area network
US9094384B2 (en) * 1996-02-16 2015-07-28 Reference Ltd., Limited Liability Company TCP/IP protocol network with satellite nodes
US6173332B1 (en) 1996-03-06 2001-01-09 Paul L. Hickman Method and apparatus for computing over a wide area network
US7130888B1 (en) 1996-02-16 2006-10-31 G&H Nevada-Tek Method and apparatus for controlling a computer over a TCP/IP protocol network
US20050180095A1 (en) * 1996-11-29 2005-08-18 Ellis Frampton E. Global network computers
US7926097B2 (en) * 1996-11-29 2011-04-12 Ellis Iii Frampton E Computer or microchip protected from the internet by internal hardware
US6725250B1 (en) 1996-11-29 2004-04-20 Ellis, Iii Frampton E. Global network computers
US8312529B2 (en) 1996-11-29 2012-11-13 Ellis Frampton E Global network computers
US7024449B1 (en) 1996-11-29 2006-04-04 Ellis Iii Frampton E Global network computers
US7035906B1 (en) 1996-11-29 2006-04-25 Ellis Iii Frampton E Global network computers
US7805756B2 (en) 1996-11-29 2010-09-28 Frampton E Ellis Microchips with inner firewalls, faraday cages, and/or photovoltaic cells
US6732141B2 (en) 1996-11-29 2004-05-04 Frampton Erroll Ellis Commercial distributed processing by personal computers over the internet
US6167428A (en) * 1996-11-29 2000-12-26 Ellis; Frampton E. Personal computer microprocessor firewalls for internet distributed processing
US8225003B2 (en) 1996-11-29 2012-07-17 Ellis Iii Frampton E Computers and microchips with a portion protected by an internal hardware firewall
US7634529B2 (en) * 1996-11-29 2009-12-15 Ellis Iii Frampton E Personal and server computers having microchips with multiple processing units and internal firewalls
US7506020B2 (en) 1996-11-29 2009-03-17 Frampton E Ellis Global network computers
JP2000305796A (ja) * 1999-04-22 2000-11-02 Hitachi Ltd 電子計算機間のジョブ転送方法およびジョブ転送システム
US6842899B2 (en) 1999-12-21 2005-01-11 Lockheed Martin Corporation Apparatus and method for resource negotiations among autonomous agents
US6658449B1 (en) * 2000-02-17 2003-12-02 International Business Machines Corporation Apparatus and method for periodic load balancing in a multiple run queue system
US6748593B1 (en) 2000-02-17 2004-06-08 International Business Machines Corporation Apparatus and method for starvation load balancing using a global run queue in a multiple run queue system
US6377975B1 (en) * 2000-03-01 2002-04-23 Interactive Intelligence, Inc. Methods and systems to distribute client software tasks among a number of servers
US20020023117A1 (en) * 2000-05-31 2002-02-21 James Bernardin Redundancy-based methods, apparatus and articles-of-manufacture for providing improved quality-of-service in an always-live distributed computing environment
US6721948B1 (en) * 2000-06-30 2004-04-13 Equator Technologies, Inc. Method for managing shared tasks in a multi-tasking data processing system
US7392287B2 (en) 2001-03-27 2008-06-24 Hemisphere Ii Investment Lp Method and apparatus for sharing information using a handheld device
US7082606B2 (en) * 2001-05-01 2006-07-25 The Regents Of The University Of California Dedicated heterogeneous node scheduling including backfill scheduling
US6996548B2 (en) * 2001-05-11 2006-02-07 Hemisphere Ii Investment Lp Method and apparatus for providing a reward for the use of a processor in a parallel processing environment
US7801944B2 (en) 2001-05-18 2010-09-21 Gary Stephen Shuster Distributed computing using agent embedded in content unrelated to agents processing function
EP1329809B1 (en) * 2002-01-18 2008-08-06 Hewlett-Packard Company, A Delaware Corporation Distributed computing system and method
US20030033345A1 (en) * 2002-06-27 2003-02-13 Keefer Christopher E. Thread-based methods and systems for using the idle processing power of one or more networked computers to solve complex scientific problems
US20040019890A1 (en) * 2002-07-23 2004-01-29 Sun Microsystems, Inc., A Delaware Corporation Distributing and executing tasks in peer-to-peer distributed computing
US20040093295A1 (en) * 2002-11-13 2004-05-13 Spotware Technologies, Inc. Retail distributive computing
US8255407B1 (en) * 2002-11-14 2012-08-28 Hewlett-Packard Development Company, L.P. Matching of data center resource capabilities and resource needs by match-overlapping
US7408984B2 (en) * 2003-09-17 2008-08-05 International Business Machines Corporation Method and system for multiple pass video coding
US7844969B2 (en) * 2004-06-17 2010-11-30 Platform Computing Corporation Goal-oriented predictive scheduling in a grid environment
US7861246B2 (en) * 2004-06-17 2010-12-28 Platform Computing Corporation Job-centric scheduling in a grid environment
US7340654B2 (en) * 2004-06-17 2008-03-04 Platform Computing Corporation Autonomic monitoring in a grid environment
GB2417580A (en) * 2004-08-26 2006-03-01 Hewlett Packard Development Co Method for executing a bag of tasks application on a cluster by loading a slave process onto an idle node in the cluster
JP4815938B2 (ja) * 2005-08-16 2011-11-16 ソニー株式会社 情報処理装置および方法、並びにプログラム
US8726282B1 (en) 2006-05-01 2014-05-13 Open Invention Network, Llc Job scheduler for remote maintenance of servers and workstations
US8125796B2 (en) 2007-11-21 2012-02-28 Frampton E. Ellis Devices with faraday cages and internal flexibility sipes
US8112526B2 (en) * 2008-06-24 2012-02-07 International Business Machines Corporation Process migration based on service availability in a multi-node environment
US8200771B2 (en) * 2008-10-10 2012-06-12 International Business Machines Corporation Workload migration using on demand remote paging
US8281004B2 (en) * 2009-02-03 2012-10-02 Ca, Inc. Multi-threaded method and system for automated remote submission of jobs to mainframe and UNIX systems from the Windows™ platform
US12401619B2 (en) 2010-01-26 2025-08-26 Frampton E. Ellis Computer or microchip with a secure system bios having a separate private network connection to a separate private network
US8429735B2 (en) 2010-01-26 2013-04-23 Frampton E. Ellis Method of using one or more secure private networks to actively configure the hardware of a computer or microchip
AU2019262875A1 (en) * 2018-04-30 2020-11-19 Kimberly-Clark Worldwide, Inc. Distributed dispenser network

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5031089A (en) * 1988-12-30 1991-07-09 United States Of America As Represented By The Administrator, National Aeronautics And Space Administration Dynamic resource allocation scheme for distributed heterogeneous computer systems
WO1993020511A1 (en) * 1992-03-31 1993-10-14 Aggregate Computing, Inc. An integrated remote execution system for a heterogenous computer network environment

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006038455A1 (ja) * 2004-10-05 2006-04-13 Matsushita Electric Industrial Co., Ltd. 処理装置
US7969322B2 (en) 2004-10-05 2011-06-28 Panasonic Corporation Processor
JP2011134215A (ja) * 2009-12-25 2011-07-07 Taito Corp クラスタリングシステム

Also Published As

Publication number Publication date
CA2218509A1 (en) 1998-05-05
CA2218509C (en) 2002-07-23
EP0840216A2 (en) 1998-05-06
EP0840216A3 (en) 1999-12-29
US5978829A (en) 1999-11-02

Similar Documents

Publication Publication Date Title
JPH10143381A (ja) 遊休ワークステーションを共用するための装置および方法
EP1099164B1 (en) Method and program for processing administrative requests of a distributed network application executing in a clustered computing environment
US7107497B2 (en) Method and system for event publication and subscription with an event channel from user level and kernel level
EP0850444B1 (en) Support for application programs in a distributed environment
US7562254B2 (en) Checkpointing and restarting long running web services
US6493716B1 (en) Group communication system with flexible member model
US7028229B2 (en) Kernel event subscription and publication system and method
US8132190B2 (en) Predictive method for managing logging or replaying non-deterministic operations within the execution of an application process
US7685602B1 (en) Controlling software components in a multi-node processing system
JPH1083308A (ja) スタブ検索及びローディング・サブシステム、スタブ検索及びローディング方法並びにスタブ検索及びローディング用記録媒体
US8904361B2 (en) Non-intrusive method for logging of internal events within an application process, and system implementing this method
JP2001147901A (ja) ローカル・ジョブ制御システムを有する分散処理システム内での外部ジョブ・スケジューリング方法及びシステム
US20020091695A1 (en) Remote computation framework
KR20010041297A (ko) 원격 프로세스의 중단과 연속 방법 및 장치
US8539434B2 (en) Method for the management, logging or replay of the execution of an application process
US7568131B2 (en) Non-intrusive method for logging external events related to an application process, and a system implementing said method
JP4009192B2 (ja) 効率的なタイマ管理システム
US7536587B2 (en) Method for the acceleration of the transmission of logging data in a multi-computer environment and system using this method
Chtepen et al. Evaluation of replication and rescheduling heuristics for gird systems with varying resource availability
JP2856681B2 (ja) 外部事象を処理する方法およびシステム
US7533296B2 (en) Method for optimizing the transmission of logging data in a multi-computer environment and a system implementing this method
Fagg et al. Taskers and general resource managers: PVM supporting DCE process management
JPH11353284A (ja) ジョブ再実行方法
JPH08263325A (ja) サーバ処理装置、サーバ内障害検出装置及びサーバ内障害検出方法
Selikhov et al. CMDE: a channel memory based dynamic environment for fault-tolerant message passing based on MPICH-V architecture

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20040629

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040927

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20041025

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

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20041028

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20050318