JP2004213628A - リソース・コンテンションを管理するための方法および装置 - Google Patents
リソース・コンテンションを管理するための方法および装置 Download PDFInfo
- Publication number
- JP2004213628A JP2004213628A JP2003400703A JP2003400703A JP2004213628A JP 2004213628 A JP2004213628 A JP 2004213628A JP 2003400703 A JP2003400703 A JP 2003400703A JP 2003400703 A JP2003400703 A JP 2003400703A JP 2004213628 A JP2004213628 A JP 2004213628A
- Authority
- JP
- Japan
- Prior art keywords
- resource
- cluster
- user
- resources
- need
- 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
Links
Images
Classifications
-
- 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/5061—Partitioning or combining of resources
-
- 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/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multi Processors (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
【解決手段】 その管理は、各ユーザがチェーン内でそれより前のユーザ(複数も可)によって保持されているリソースを待っているコンテンション・チェーンを識別し、その必要性が少なくともそのチェーン内の最も困窮しているウェイタの必要性である場合と同様にそのチェーンの先頭にあるユーザ(複数も可)にシステム・リソースを割り振ることによって実施される。システム間のデータ・フローが最小限であり、いかなるシステムもクロスシステム・コンテンションに関する完全なビューを持たない場合でも、最適リソース割振りに必要なコンテンション・データはシステム・クラスタ全域に効果的に分散される。
【選択図】 図1
Description
1.ジョブAはリソースR1を保持している。
2.ジョブBはリソースR2を保持し、R1を待っている。
3.ジョブCはR2を待っている。
IBMの資料「z/OS MVS Planning: Global Resource Serialization」SA22−7600−02(2002年3月) IBMの資料「z/OSMVS Planning: Workload Management」SA22−7602−04(2002年10月) IBMの資料「z/OSMVS Programming: Workload Management Services」SA22−7619−03(2002年10月) IBMの資料「z/OSMVS Initialization and Tuning Guide」SA22−7591−01(2002年3月)の特に第3章(3−1〜3−84ページ)
1.「必要性」が4であるジョブAはリソースR1を保持している。(本明細書では、より小さい数字はより高い必要性を意味し、したがって、それらは「援助の優先順位」と見なすことができる。)
2.必要性が5であるジョブBはリソースR2を保持し、R1を待っている。
3.必要性が1であるジョブCはR2を待っている。
1.ローカル・ユーザは、他のユーザによって保持されているリソースのウェイタになっている。
2.ローカル・ユーザはもはやあるリソースのウェイタではない。これは、それがホルダとしてそのリソースを取得したためか、またはそれがもはやホルダまたはウェイタのいずれかとしてそのリソースに関心がないため(おそらく、以下の例で説明するように、それが終了しており、したがって、もはや存在しないため)である可能性がある。
3.ローカル・ユーザによって保持されているリソースはその時点でコンテンション中である。
4.ローカル・ユーザによって保持されているリソースはもはやコンテンション中ではない。
1.ローカル・システム名。
2.リソース名。そのリソースがマルチシステム・リソースである場合、リソース名は、クラスタ全域で認識されるリソースの実際の名前である。そのリソースがローカル・リソースである場合、リソース名は、以下の実施例2で説明するように、実際のローカル・リソース名の「プロキシ」として機能する汎用ローカル・リソース名である。
3.そのリソースが割り当てられるクラスタを識別するクラスタID。この値は厳密にローカルなものであり、受信側システムはこの値を比較して、2つのリソースが送信側システム上の同じクラスタに属すかどうかを確認するが、この値の構造または内容に関する想定は行わない。以下の例では、純粋に読者の理解を容易にするための記憶を助ける工夫として、クラスタ内のマルチシステム・リソースの連結としてクラスタ名が与えられる。しかし、好ましい実施形態では、「クラスタ名」は実際には、同じ送信側システム上で発生する他のクラスタIDと等しいかどうかについてのみ受信側システムがテストできる不透明「クラスタID」である。
4.単に送信側システムの「ローカル・システム情報」に基づくそのリソースの「必要性」、すなわち、そのリソースについて最も困窮しているローカル・ウェイタ。これは、そのデータのみを考慮した場合にその必要性が何になるべきかをこのシステムが思考する際の投票と見なすことができる。そのリソースのローカル・ウェイタがまったくない場合、以下の実施例1で説明するように、ローカルの必要性がまったくないことを示すダミー値を送信する。
5.送信側システム上のいずれかのトランザクションが強制的にそのリソースをクラスタに含めるかどうか、すなわち、ローカル・コンテンション・データに基づいてそのリソースを非トリビアル・クラスタに割り当てるかどうかの表示。これは、この説明でローカル/リモートの値が与えられるYES/NOではなく、ブール値である。ローカルとは、(1)送信側システムが、1つのリソースのウェイタであるだけでなく他のリソースのホルダでもある少なくとも1つのトランザクションを有することと、(2)同じトランザクションがこのリソースのウェイタまたはホルダのいずれかであること(したがって、送信側システムはグループとして管理すべきトランザクション(複数も可)と接続されたリソース・グループを必要とする)を意味する。リモートとは、送信側システムのローカル・データのいずれも、そのリソースが非トリビアル・クラスタの一部であることを必要としないことを意味する。トリビアル・クラスタは正確に1つのリソースを有し、クラスタ化コードをいくらか容易にするために「リモート」の値をすでに持っている。
この実施例はクロスシステム推移閉包ケースであり、複数のリソースが含まれ、1つのリソースを保持している困窮していないユーザは、他のリソース移動を待っている他の(困窮している)ユーザを獲得するために援助を受ける。トポロジは、同じリソースに関するホルダとウェイタがそれぞれ異なるシステム上にあるマルチシステムである。
1.リソースRbに関するコンテンションを追跡し始める。
2.Rbのみからなるリソース・クラスタを作成する。
3.Rbに関するローカル・ウェイタ・リストにTxBを追加する。
1.Sy1が把握しているもの(実際は、この時点は1つだけである)であって、Rbに関するトポロジに含まれる最も困窮しているエンティティはTxBであるので、Rbに関するNQOとしてTxBのNQO(4)を使用する。
2.Cb内のすべてのリソースに関するNQOを計算してあるので、Cb内のすべてのリソースNQOのうち最も困窮しているものとしてCbに関するNQOを計算する。これは、4というNQOをRbからCbに伝えるものである。
3.Rbはマルチシステム・リソースであるので、Sy1はRbの情報をシステム・クラスタ内の他のすべてのシステムにブロードキャストする。上記の通り、Rbに関して送信された情報は、システム名と、リソース名と、クラスタIDと、送信側システムの「ローカル・システム情報」のみに基づくそのリソースのNQOと、「ローカル」に設定されたときに送信側システム上のトランザクションが強制的にそのリソースをクラスタに含めることを示すブール値(ローカル/リモート)とを含む。
4.上記の説明に基づいて、送信されたデータは、Sy1、Rb、Cb、4、リモートである。
1.Sy1、Ra、Cab、ダミーNQO値、ローカル
2.Sy1、Rb、Cab、4、ローカル
この実施例はもう1つのクロスシステム推移閉包ケースであり、複数のリソースが含まれ、1つのリソースを保持している困窮していないユーザは、他のリソース移動を待っている他の(困窮している)ユーザを獲得するために援助を受けなければならない。トポロジはこの場合も、同じリソースに関するホルダとウェイタがそれぞれ異なるシステム上にあるマルチシステムである。その上、実施例1とは対照的に、各システムは純粋にローカルの(非マルチシステム)リソース上の同じトランザクションを伴うコンテンションを有する。これは、同じリソース・クラスタ内にマルチシステム・リソースと単一システム・リソースの両方が含まれるときに何が起こるかを示したものである。
1.Sy1、Ra、Cabl、ダミーNQO値、ローカル
2.Sy1、Rb、Cabl、4、ローカル
3.Sy1、Rlocal、Cabl、3、ローカル
1.Sy2、Ra、CabL、1、ローカル
2.Sy2、Rb、CabL、ダミーNQO値、リモート
3.Sy2、Rlocal、CabL、2、ローカル
この実施例は、関連するいずれのリソースについてもコンテンションを終了せずに1つのリソース・クラスタを複数のより小さいクラスタに分割することを含む。RaとRbをリンクするトランザクションはキャンセルされるが、各リソースは他のウェイタを有しているので、どちらのリソースもその後、依然としてコンテンション中になる。表記法は実施例1と同様である。
1.Sy1は、所与のリソース・クラスタが必要であることをもはや確信していないことを示すためのデータを明示的に送信する。たとえば、Ra、Ca、4、リモートを送信する。Sy2がRaに関するSy1の以前のデータを置き換えると、それはもはやSy1から得られるRaとRbをまとめて管理するためのいかなる要件も認識せず、Sy2がそのクラスタを続行するための他の「投票」をまったく持っていない場合、Sy2はそのクラスタをローカルで分割することができる。
2.Sy1のデータは古くなっている(したがって、「まもなく」置き換えられない場合でも削除される)。これはおそらく、「存続時間」(TTL)値を送信することによって実現されるだろうが、その後、データは受信側によって削除されるだろう。このメカニズムは、システム傷害、信号喪失、バグ、回復問題などにも安全策をもたらすことができるだろう。また、TTLは、通信待ち時間を透過的なものにし、送信側と受信側が共通間隔について合意に達する必要がないという利点を有する。
この実施例では、共通ホルダ(複数も可)のみによって結合されたリソース・クラスタを「n」個のリソースからなる1つのリソース・クラスタとしてまたはそれぞれ1つのリソースからなる「n」個のクラスタとして扱うことができる。この結果は、ドキュメント化に十分値するほど驚くべきものになる。
1.NQOが3であるホルダはNQOが4であるリソース・クラスタより困窮しているので、Caは援助をまったく必要としない。
2.NQOが1であるクラスタはNQOが3であるTxAより困窮しているので、Cbは援助を必要とする。
この実施例は単純3システム・シナリオである。これも推移閉包ケースであるが、その非対称トポロジによって強制的にシステムがリソース・マネージャから得られるローカル・ウェイタ/ホルダ情報を持っていないリソースを追跡する。表記法は実施例1と同様である。
この実施例は、我々を駆り立てるための「コンテンションの終了」イベントなしに大きいクラスタをより小さいクラスタに分割する、3システム推移閉包ケースである。この実施例も、あるリソースの複数共用ホルダを含むトポロジを示している。表記法は実施例1と同様である。
図17〜24は、本発明によりコンテンション・データを記憶するための1組の可能なデータ構造を示している。
1.リソース・クラスタ・エレメント(RCLU)806(図18)用のアンカー804
2.リソース・エレメント(RSRC)810(図19)用のアンカー808
3.トランザクション・テーブル(TRXNT)814(図22)用のアンカー812
1.クラスタID816
2.クラスタNQO818(クラスタ内のすべてのリソースの最小のもの)
3.クラスタ内のリソースのリソース・エレメント(RSRC)810(図19)用のアンカー820
1.リソース・フィンガプリント/名822
2.リソースNQO824(ブロードキャスト・パス上での効率のためにローカル/システム・クラスタ値を別々に保持する必要がある可能性があり、そうではない場合、これはシステム・クラスタNQOになる。)
3.クラスタ・エレメント(RCLU)806(図18)へのポインタ826
4.ローカル・ホルダに関するリソース・コンテンション待ち行列エレメント(RCQE)830(図24)用のアンカー828
5.ローカル・ウェイタに関するリソース・コンテンション待ち行列エレメント(RCQE)830用のアンカー832
6.このリソースに関するリモート・データ用のシステム・データ・アンカー(SDA)836(図20)用のアンカー834
1.リモート・システムID838
2.このシステムからのリモート・システム・データ・エレメント(RSDE)842(図21)用のアンカー840
3.リモート・システムの最高の既知の送信シーケンス番号を表す値844。換言すれば、アウトバウンド・パス上で送信側システムは、トポロジ・データの各「バッチ」ごとに同じになる値(タイムスタンプなど)を含む。各受信側システムは着信メッセージ内の値とこの値を比較し、メッセージの方が小さい値(受信側システムがすでに同じ送信側からより最近のデータを受信したので、これが古くなっていることを暗示する)を有する場合、そのメッセージは無視される。
4.トポロジ・メッセージをリモート・システムから受信したときにローカル・クロックを使用して更新されるタイムスタンプ846
1.そのシステム用のシステム・データ・アンカー(SDA)(図20)へのポインタ848
2.そのリソース用のリソース・エレメント(RSRC)810(図19)へのポインタ850
3.同じリソースに関する他のRSDE842用の待ち行列リンク852
4.リモート・システム上のウェイタのみを考慮するリモート・システムのNQO854
5.デバッグのみのための送信タイムスタンプ856(送信したときのリモート・システム上のクロック値)
6.デバッグおよびTTL処理のためのタイムスタンプ858であって、受信したときのローカル・クロック値を表すもの
7.このリソース用のリモート・クラスタID860。リモート・システムが、ホルダでありかつウェイタでもあるトランザクションを有する場合、関連するすべてのリソースは、そこでは同じクラスタIDを有することになり、ここでは同じクラスタ内にある必要がある。異なるシステムからのリモート・データが、どのリソースが1つのクラスタに属すかに関して一致しない場合、クラスタはローカルで合併される。
8.リモート・システムがいくらか余分のものを加えたデータの送信を計画する頻度に対応して、リモート・システムによって供給される存続時間(TTL)期間862。ローカル時間が受信タイムスタンプにこの値を加えたものを超える場合、そのエレメントは削除の対象となる。
1.トランザクション・テーブル814を構築したときのアドレス・スペースの数864
2.トランザクション・テーブル814を構築したときのエンクレーブの数866
3.トランザクション・テーブルの先頭から最初のテーブル項目868までのオフセット868
4.アドレス・スペースであるトランザクション用の項目(TRXNE)(数864以内)用の領域870
5.エンクレーブであるトランザクション用の項目(TRXNE)(数866以内)用の領域872
1.タイプ876: アドレス・スペースまたはエンクレーブ
2.このトランザクション用のアドレス・スペースID(ASID)またはエンクレーブID878
3.このトランザクション用のアドレス・スペースまたはエンクレーブ・トークン880。ASIDおよびエンクレーブIDは再使用可能であり、IDを再使用する場合でもトークンによって単一イメージ内の固有性が得られる。
4.このトランザクションによって保持されているリソースに関するコンテンション・エレメント(RCQE)830(図24)の待ち行列884用のアンカー882
5.このトランザクションによって待たれているリソースに関するコンテンション・エレメント(RCQE)830の待ち行列888用のアンカー886
6.このトランザクションのNQO888
1.TRXNT810内のトランザクション用のTRXNE874のオフセット892
2.このトランザクションに関する次/前のRCQE830用の待ち行列リンク894
3.このリソース用のリソース・エレメント(RSRC)810へのポインタ896
4.このリソースに関する次/前のRCQE830用の待ち行列リンク898
5.保持/待機ビット899(おそらく待ち行列検証のみのため)
ユーザ・チェーン内の次のユーザを有する各ユーザが、前記次のユーザが待っているリソースを保持している前記チェーンの先頭にあるウェイタではないユーザを識別するステップと、
その必要性が少なくとも前記チェーン内の最も困窮しているウェイタの必要性である場合と同様に、前記チェーンの先頭にある前記ユーザを管理するステップとを具備する方法。
(2)前記管理ステップが、
その必要性が少なくとも前記チェーン内の前記最も困窮しているウェイタの必要性である場合と同様に、前記チェーンの先頭にある前記ユーザにシステム・リソースを割り振るステップを具備する、上記(1)に記載の方法。
(3)前記識別ステップが、
クラスタ内の各リソースがそのクラスタ内の他のリソースを待っているユーザによって保持されているかまたはそのクラスタ内の他のリソースを保持しているユーザによって待たれている前記リソースのクラスタを定義するステップを具備する、上記(1)に記載の方法。
(4)前記管理ステップが、
前記クラスタ内のいずれかのリソースについて最も困窮しているウェイタの必要性を決定するステップを具備する、上記(3)に記載の方法。
(5)情報処理システム内の1つまたは複数のリソースへのアクセスに関するユーザ間のコンテンションを管理するための方法であって、前記ユーザのそれぞれは何らかの必要性が割り当てられており、それがアクセスしようと努めるリソースに関するホルダまたはウェイタのいずれかになる可能性があり、前記方法が、
クラスタ内の各リソースがそのクラスタ内の他のリソースを待っているユーザによって保持されているかまたはそのクラスタ内の他のリソースを保持しているユーザによって待たれている前記リソースのクラスタを識別するステップと、
前記クラスタ内のいずれかのリソースについて最も困窮しているウェイタの必要性を決定するステップと、
前記クラスタ内のあるリソースのホルダであって、他のいずれのリソースも待っていないホルダを識別するステップと、
その必要性が少なくとも前記クラスタ内のいずれかのリソースについて前記最も困窮しているウェイタの必要性である場合と同様に、前記リソースの前記ホルダを管理するステップとを具備する方法。
(6)前記管理ステップが、
その必要性が少なくとも前記クラスタ内のいずれかのリソースについて前記最も困窮しているウェイタの必要性である場合と同様に、前記リソースの前記ホルダにシステム・リソースを割り振るステップを具備する、上記(5)に記載の方法。
(7)クラスタを識別する前記ステップが、あるリソースのコンテンション状況の変化の通知を受信したことに応答して実行され、
そのリソースがその時点でそのクラスタ内の他のリソースを待っているユーザによって保持されているかまたはそのクラスタ内の他のリソースを保持しているユーザによって待たれている場合に、そのリソースをそのクラスタに新たに割り当てるステップを具備する、上記(5)に記載の方法。
(8)クラスタを識別する前記ステップが、あるリソースのコンテンション状況の変化の通知を受信したことに応答して実行され、
そのリソースがもはやそのクラスタ内の他のリソースを待っているユーザによって保持されていないかまたはそのクラスタ内の他のリソースを保持しているユーザによって待たれていない場合に、そのリソースをそのクラスタから除去するステップを具備する、上記(5)に記載の方法。
(9)情報処理システム内の1つまたは複数のリソースへのアクセスに関するユーザ間のコンテンションを管理するための装置であって、前記ユーザのそれぞれは何らかの必要性が割り当てられており、それがアクセスしようと努めるリソースに関するホルダまたはウェイタのいずれかになる可能性があり、前記装置が、
ユーザ・チェーン内の次のユーザを有する各ユーザが、前記次のユーザが待っているリソースを保持している前記チェーンの先頭にあるウェイタではないユーザを識別するための論理回路と、
その必要性が少なくとも前記チェーン内の最も困窮しているウェイタの必要性である場合と同様に、前記チェーンの先頭にある前記ユーザを管理するための論理回路とを具備する装置。
(10)前記管理論理回路が、その必要性が少なくとも前記チェーン内の前記最も困窮しているウェイタの必要性である場合と同様に、前記チェーンの先頭にある前記ユーザにシステム・リソースを割り振る、上記(9)に記載の装置。
(11)情報処理システム内の1つまたは複数のリソースへのアクセスに関するユーザ間のコンテンションを管理するための装置であって、前記ユーザのそれぞれは何らかの必要性が割り当てられており、それがアクセスしようと努めるリソースに関するホルダまたはウェイタのいずれかになる可能性があり、前記装置が、
クラスタ内の各リソースがそのクラスタ内の他のリソースを待っているユーザによって保持されているかまたはそのクラスタ内の他のリソースを保持しているユーザによって待たれている前記リソースのクラスタを識別するための論理回路と、
前記クラスタ内のいずれかのリソースについて最も困窮しているウェイタの必要性を決定するための論理回路と、
前記クラスタ内のあるリソースのホルダであって、他のいずれのリソースも待っていないホルダを識別するための論理回路と、
その必要性が少なくとも前記クラスタ内のいずれかのリソースについて前記最も困窮しているウェイタの必要性である場合と同様に、前記リソースの前記ホルダを管理するための論理回路とを具備する装置。
(12)前記管理論理回路が、その必要性が少なくとも前記クラスタ内のいずれかのリソースについて前記最も困窮しているウェイタの必要性である場合と同様に、前記リソースの前記ホルダにシステム・リソースを割り振る、上記(11)に記載の装置。
(13)クラスタを識別するための前記論理回路が、あるリソースのコンテンション状況の変化の通知を受信したことに応答して、そのリソースがその時点でそのクラスタ内の他のリソースを待っているユーザによって保持されているかまたはそのクラスタ内の他のリソースを保持しているユーザによって待たれている場合に、そのリソースをそのクラスタに新たに割り当てる、上記(11)に記載の装置。
(14)クラスタを識別するための前記論理回路が、あるリソースのコンテンション状況の変化の通知を受信したことに応答して、そのリソースがもはやそのクラスタ内の他のリソースを待っているユーザによって保持されていないかまたはそのクラスタ内の他のリソースを保持しているユーザによって待たれていない場合に、そのリソースをそのクラスタから除去する、上記(11)に記載の装置。
(15)情報処理システム内の1つまたは複数のリソースへのアクセスに関するユーザ間のコンテンションを管理するための方法ステップを実行するためにマシンによって実行可能な複数命令のプログラムを具体的に実施し、マシンによって読取り可能なプログラム記憶装置であって、前記ユーザのそれぞれは何らかの必要性が割り当てられており、それがアクセスしようと努めるリソースに関するホルダまたはウェイタのいずれかになる可能性があり、前記方法ステップが、
ユーザ・チェーン内の次のユーザを有する各ユーザが、前記次のユーザが待っているリソースを保持している前記チェーンの先頭にあるウェイタではないユーザを識別するステップと、
その必要性が少なくとも前記チェーン内の最も困窮しているウェイタの必要性である場合と同様に、前記チェーンの先頭にある前記ユーザを管理するステップとを具備する、プログラム記憶装置。
(16)前記管理ステップが、
その必要性が少なくとも前記チェーン内の前記最も困窮しているウェイタの必要性である場合と同様に、前記チェーンの先頭にある前記ユーザにシステム・リソースを割り振るステップを具備する、上記(15)に記載のプログラム記憶装置。
(17)情報処理システム内の1つまたは複数のリソースへのアクセスに関するユーザ間のコンテンションを管理するための方法ステップを実行するためにマシンによって実行可能な複数命令のプログラムを具体的に実施し、マシンによって読取り可能なプログラム記憶装置であって、前記ユーザのそれぞれは何らかの必要性が割り当てられており、それがアクセスしようと努めるリソースに関するホルダまたはウェイタのいずれかになる可能性があり、前記方法ステップが、
クラスタ内の各リソースがそのクラスタ内の他のリソースを待っているユーザによって保持されているかまたはそのクラスタ内の他のリソースを保持しているユーザによって待たれている前記リソースのクラスタを識別するステップと、
前記クラスタ内のいずれかのリソースについて最も困窮しているウェイタの必要性を決定するステップと、
前記クラスタ内のあるリソースのホルダであって、他のいずれのリソースも待っていないホルダを識別するステップと、
その必要性が少なくとも前記クラスタ内のいずれかのリソースについて前記最も困窮しているウェイタの必要性である場合と同様に、前記リソースの前記ホルダを管理するステップとを具備する、プログラム記憶装置。
(18)前記管理ステップが、
その必要性が少なくとも前記クラスタ内のいずれかのリソースについて前記最も困窮しているウェイタの必要性である場合と同様に、前記リソースの前記ホルダにシステム・リソースを割り振るステップを具備する、上記(17)に記載のプログラム記憶装置。
(19)クラスタを識別する前記ステップが、あるリソースのコンテンション状況の変化の通知を受信したことに応答して実行され、
そのリソースがその時点でそのクラスタ内の他のリソースを待っているユーザによって保持されているかまたはそのクラスタ内の他のリソースを保持しているユーザによって待たれている場合に、そのリソースをそのクラスタに新たに割り当てるステップを具備する、上記(17)に記載のプログラム記憶装置。
(20)クラスタを識別する前記ステップが、あるリソースのコンテンション状況の変化の通知を受信したことに応答して実行され、
そのリソースがもはやそのクラスタ内の他のリソースを待っているユーザによって保持されていないかまたはそのクラスタ内の他のリソースを保持しているユーザによって待たれていない場合に、そのリソースをそのクラスタから除去するステップを具備する、上記(17)に記載のプログラム記憶装置。
102 システムSy1
102 システムSy2
102 システムSy3
106 マルチシステム・リソース
108 OS
110 リクエスタ
112 ローカル・リソース
114 リソース・マネージャ
116 WLM
Claims (20)
- 情報処理システム内の1つまたは複数のリソースへのアクセスに関するユーザ間のコンテンションを管理するための方法であって、前記ユーザのそれぞれは何らかの必要性が割り当てられており、それがアクセスしようと努めるリソースに関するホルダまたはウェイタのいずれかになる可能性があり、前記方法が、
ユーザ・チェーン内の次のユーザを有する各ユーザが、前記次のユーザが待っているリソースを保持している前記チェーンの先頭にあるウェイタではないユーザを識別するステップと、
その必要性が少なくとも前記チェーン内の最も困窮しているウェイタの必要性である場合と同様に、前記チェーンの先頭にある前記ユーザを管理するステップとを具備する方法。 - 前記管理ステップが、
その必要性が少なくとも前記チェーン内の前記最も困窮しているウェイタの必要性である場合と同様に、前記チェーンの先頭にある前記ユーザにシステム・リソースを割り振るステップを具備する、請求項1に記載の方法。 - 前記識別ステップが、
クラスタ内の各リソースがそのクラスタ内の他のリソースを待っているユーザによって保持されているかまたはそのクラスタ内の他のリソースを保持しているユーザによって待たれている前記リソースのクラスタを定義するステップを具備する、請求項1に記載の方法。 - 前記管理ステップが、
前記クラスタ内のいずれかのリソースについて最も困窮しているウェイタの必要性を決定するステップを具備する、請求項3に記載の方法。 - 情報処理システム内の1つまたは複数のリソースへのアクセスに関するユーザ間のコンテンションを管理するための方法であって、前記ユーザのそれぞれは何らかの必要性が割り当てられており、それがアクセスしようと努めるリソースに関するホルダまたはウェイタのいずれかになる可能性があり、前記方法が、
クラスタ内の各リソースがそのクラスタ内の他のリソースを待っているユーザによって保持されているかまたはそのクラスタ内の他のリソースを保持しているユーザによって待たれている前記リソースのクラスタを識別するステップと、
前記クラスタ内のいずれかのリソースについて最も困窮しているウェイタの必要性を決定するステップと、
前記クラスタ内のあるリソースのホルダであって、他のいずれのリソースも待っていないホルダを識別するステップと、
その必要性が少なくとも前記クラスタ内のいずれかのリソースについて前記最も困窮しているウェイタの必要性である場合と同様に、前記リソースの前記ホルダを管理するステップとを具備する方法。 - 前記管理ステップが、
その必要性が少なくとも前記クラスタ内のいずれかのリソースについて前記最も困窮しているウェイタの必要性である場合と同様に、前記リソースの前記ホルダにシステム・リソースを割り振るステップを具備する、請求項5に記載の方法。 - クラスタを識別する前記ステップが、あるリソースのコンテンション状況の変化の通知を受信したことに応答して実行され、
そのリソースがその時点でそのクラスタ内の他のリソースを待っているユーザによって保持されているかまたはそのクラスタ内の他のリソースを保持しているユーザによって待たれている場合に、そのリソースをそのクラスタに新たに割り当てるステップを具備する、請求項5に記載の方法。 - クラスタを識別する前記ステップが、あるリソースのコンテンション状況の変化の通知を受信したことに応答して実行され、
そのリソースがもはやそのクラスタ内の他のリソースを待っているユーザによって保持されていないかまたはそのクラスタ内の他のリソースを保持しているユーザによって待たれていない場合に、そのリソースをそのクラスタから除去するステップを具備する、請求項5に記載の方法。 - 情報処理システム内の1つまたは複数のリソースへのアクセスに関するユーザ間のコンテンションを管理するための装置であって、前記ユーザのそれぞれは何らかの必要性が割り当てられており、それがアクセスしようと努めるリソースに関するホルダまたはウェイタのいずれかになる可能性があり、前記装置が、
ユーザ・チェーン内の次のユーザを有する各ユーザが、前記次のユーザが待っているリソースを保持している前記チェーンの先頭にあるウェイタではないユーザを識別するための論理回路と、
その必要性が少なくとも前記チェーン内の最も困窮しているウェイタの必要性である場合と同様に、前記チェーンの先頭にある前記ユーザを管理するための論理回路とを具備する装置。 - 前記管理論理回路が、その必要性が少なくとも前記チェーン内の前記最も困窮しているウェイタの必要性である場合と同様に、前記チェーンの先頭にある前記ユーザにシステム・リソースを割り振る、請求項9に記載の装置。
- 情報処理システム内の1つまたは複数のリソースへのアクセスに関するユーザ間のコンテンションを管理するための装置であって、前記ユーザのそれぞれは何らかの必要性が割り当てられており、それがアクセスしようと努めるリソースに関するホルダまたはウェイタのいずれかになる可能性があり、前記装置が、
クラスタ内の各リソースがそのクラスタ内の他のリソースを待っているユーザによって保持されているかまたはそのクラスタ内の他のリソースを保持しているユーザによって待たれている前記リソースのクラスタを識別するための論理回路と、
前記クラスタ内のいずれかのリソースについて最も困窮しているウェイタの必要性を決定するための論理回路と、
前記クラスタ内のあるリソースのホルダであって、他のいずれのリソースも待っていないホルダを識別するための論理回路と、
その必要性が少なくとも前記クラスタ内のいずれかのリソースについて前記最も困窮しているウェイタの必要性である場合と同様に、前記リソースの前記ホルダを管理するための論理回路とを具備する装置。 - 前記管理論理回路が、その必要性が少なくとも前記クラスタ内のいずれかのリソースについて前記最も困窮しているウェイタの必要性である場合と同様に、前記リソースの前記ホルダにシステム・リソースを割り振る、請求項11に記載の装置。
- クラスタを識別するための前記論理回路が、あるリソースのコンテンション状況の変化の通知を受信したことに応答して、そのリソースがその時点でそのクラスタ内の他のリソースを待っているユーザによって保持されているかまたはそのクラスタ内の他のリソースを保持しているユーザによって待たれている場合に、そのリソースをそのクラスタに新たに割り当てる、請求項11に記載の装置。
- クラスタを識別するための前記論理回路が、あるリソースのコンテンション状況の変化の通知を受信したことに応答して、そのリソースがもはやそのクラスタ内の他のリソースを待っているユーザによって保持されていないかまたはそのクラスタ内の他のリソースを保持しているユーザによって待たれていない場合に、そのリソースをそのクラスタから除去する、請求項11に記載の装置。
- 情報処理システム内の1つまたは複数のリソースへのアクセスに関するユーザ間のコンテンションを管理するための方法ステップを実行するためにマシンによって実行可能な複数命令のプログラムを具体的に実施し、マシンによって読取り可能なプログラム記憶装置であって、前記ユーザのそれぞれは何らかの必要性が割り当てられており、それがアクセスしようと努めるリソースに関するホルダまたはウェイタのいずれかになる可能性があり、前記方法ステップが、
ユーザ・チェーン内の次のユーザを有する各ユーザが、前記次のユーザが待っているリソースを保持している前記チェーンの先頭にあるウェイタではないユーザを識別するステップと、
その必要性が少なくとも前記チェーン内の最も困窮しているウェイタの必要性である場合と同様に、前記チェーンの先頭にある前記ユーザを管理するステップとを具備する、プログラム記憶装置。 - 前記管理ステップが、
その必要性が少なくとも前記チェーン内の前記最も困窮しているウェイタの必要性である場合と同様に、前記チェーンの先頭にある前記ユーザにシステム・リソースを割り振るステップを具備する、請求項15に記載のプログラム記憶装置。 - 情報処理システム内の1つまたは複数のリソースへのアクセスに関するユーザ間のコンテンションを管理するための方法ステップを実行するためにマシンによって実行可能な複数命令のプログラムを具体的に実施し、マシンによって読取り可能なプログラム記憶装置であって、前記ユーザのそれぞれは何らかの必要性が割り当てられており、それがアクセスしようと努めるリソースに関するホルダまたはウェイタのいずれかになる可能性があり、前記方法ステップが、
クラスタ内の各リソースがそのクラスタ内の他のリソースを待っているユーザによって保持されているかまたはそのクラスタ内の他のリソースを保持しているユーザによって待たれている前記リソースのクラスタを識別するステップと、
前記クラスタ内のいずれかのリソースについて最も困窮しているウェイタの必要性を決定するステップと、
前記クラスタ内のあるリソースのホルダであって、他のいずれのリソースも待っていないホルダを識別するステップと、
その必要性が少なくとも前記クラスタ内のいずれかのリソースについて前記最も困窮しているウェイタの必要性である場合と同様に、前記リソースの前記ホルダを管理するステップとを具備する、プログラム記憶装置。 - 前記管理ステップが、
その必要性が少なくとも前記クラスタ内のいずれかのリソースについて前記最も困窮しているウェイタの必要性である場合と同様に、前記リソースの前記ホルダにシステム・リソースを割り振るステップを具備する、請求項17に記載のプログラム記憶装置。 - クラスタを識別する前記ステップが、あるリソースのコンテンション状況の変化の通知を受信したことに応答して実行され、
そのリソースがその時点でそのクラスタ内の他のリソースを待っているユーザによって保持されているかまたはそのクラスタ内の他のリソースを保持しているユーザによって待たれている場合に、そのリソースをそのクラスタに新たに割り当てるステップを具備する、請求項17に記載のプログラム記憶装置。 - クラスタを識別する前記ステップが、あるリソースのコンテンション状況の変化の通知を受信したことに応答して実行され、
そのリソースがもはやそのクラスタ内の他のリソースを待っているユーザによって保持されていないかまたはそのクラスタ内の他のリソースを保持しているユーザによって待たれていない場合に、そのリソースをそのクラスタから除去するステップを具備する、請求項17に記載のプログラム記憶装置。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/335,046 US20040139142A1 (en) | 2002-12-31 | 2002-12-31 | Method and apparatus for managing resource contention |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004213628A true JP2004213628A (ja) | 2004-07-29 |
JP3910577B2 JP3910577B2 (ja) | 2007-04-25 |
Family
ID=32710898
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003400703A Expired - Fee Related JP3910577B2 (ja) | 2002-12-31 | 2003-11-28 | リソース・コンテンションを管理するための方法および装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20040139142A1 (ja) |
JP (1) | JP3910577B2 (ja) |
KR (1) | KR100586285B1 (ja) |
CN (1) | CN1256671C (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011139050A2 (ko) * | 2010-05-04 | 2011-11-10 | (주)팬택 | 무선통신시스템에서의 자원할당 방법 및 그 장치 |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005089236A2 (en) * | 2004-03-13 | 2005-09-29 | Cluster Resources, Inc. | System and method for providing intelligent pre-staging of data in a compute environment |
US20070061429A1 (en) * | 2005-09-12 | 2007-03-15 | Microsoft Corporation | Optimizing utilization of application resources |
US7870226B2 (en) * | 2006-03-24 | 2011-01-11 | International Business Machines Corporation | Method and system for an update synchronization of a domain information file |
US8042122B2 (en) * | 2007-06-27 | 2011-10-18 | Microsoft Corporation | Hybrid resource manager |
US8719300B2 (en) * | 2008-10-15 | 2014-05-06 | International Business Machines Corporation | Catalog performance plus |
CN102346744B (zh) | 2010-07-30 | 2013-11-13 | 国际商业机器公司 | 用于在多租户应用系统中处理物化表的装置 |
US8510739B2 (en) | 2010-09-16 | 2013-08-13 | International Business Machines Corporation | Shared request grouping in a computing system |
US8918764B2 (en) * | 2011-09-21 | 2014-12-23 | International Business Machines Corporation | Selective trace facility |
US9032484B2 (en) | 2011-10-31 | 2015-05-12 | International Business Machines Corporation | Access control in a hybrid environment |
US9053141B2 (en) | 2011-10-31 | 2015-06-09 | International Business Machines Corporation | Serialization of access to data in multi-mainframe computing environments |
US9274837B2 (en) | 2013-05-17 | 2016-03-01 | International Business Machines Corporation | Assigning levels of pools of resources to a super process having sub-processes |
US9722908B2 (en) | 2013-10-17 | 2017-08-01 | International Business Machines Corporation | Problem determination in a hybrid environment |
CN105335237B (zh) * | 2015-11-09 | 2018-09-21 | 浪潮电子信息产业股份有限公司 | 一种操作系统的死锁预防方法 |
US9965727B2 (en) | 2016-01-14 | 2018-05-08 | International Business Machines Corporation | Method and apparatus for resolving contention in a computer system |
US9858107B2 (en) | 2016-01-14 | 2018-01-02 | International Business Machines Corporation | Method and apparatus for resolving contention at the hypervisor level |
US10257053B2 (en) | 2016-06-28 | 2019-04-09 | International Business Machines Corporation | Analyzing contention data and following resource blockers to find root causes of computer problems |
US10698785B2 (en) | 2017-05-30 | 2020-06-30 | International Business Machines Corporation | Task management based on an access workload |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4189771A (en) * | 1977-10-11 | 1980-02-19 | International Business Machines Corporation | Method and means for the detection of deadlock among waiting tasks in a multiprocessing, multiprogramming CPU environment |
US5197130A (en) * | 1989-12-29 | 1993-03-23 | Supercomputer Systems Limited Partnership | Cluster architecture for a highly parallel scalar/vector multiprocessor system |
US5202993A (en) * | 1991-02-27 | 1993-04-13 | Sun Microsystems, Inc. | Method and apparatus for cost-based heuristic instruction scheduling |
US5339427A (en) * | 1992-03-30 | 1994-08-16 | International Business Machines Corporation | Method and apparatus for distributed locking of shared data, employing a central coupling facility |
US5444693A (en) * | 1992-04-27 | 1995-08-22 | At&T Corp. | System for restoration of communications networks |
DE69322057T2 (de) * | 1992-10-24 | 1999-06-10 | Int Computers Ltd | Verteiltes Datenverarbeitungssystem |
US5719868A (en) * | 1995-10-05 | 1998-02-17 | Rockwell International | Dynamic distributed, multi-channel time division multiple access slot assignment method for a network of nodes |
US5805900A (en) * | 1996-09-26 | 1998-09-08 | International Business Machines Corporation | Method and apparatus for serializing resource access requests in a multisystem complex |
US6038651A (en) * | 1998-03-23 | 2000-03-14 | International Business Machines Corporation | SMP clusters with remote resource managers for distributing work to other clusters while reducing bus traffic to a minimum |
US6442564B1 (en) * | 1999-06-14 | 2002-08-27 | International Business Machines Corporation | Facilitating workload management by using a location forwarding capability |
US6721775B1 (en) * | 1999-08-12 | 2004-04-13 | International Business Machines Corporation | Resource contention analysis employing time-ordered entries in a blocking queue and waiting queue |
US6681241B1 (en) * | 1999-08-12 | 2004-01-20 | International Business Machines Corporation | Resource contention monitoring employing time-ordered entries in a blocking queue and waiting queue |
CA2302959A1 (en) * | 2000-03-23 | 2001-09-23 | Ibm Canada Limited-Ibm Canada Limitee | Priority resource allocation in programming environments |
US20020083063A1 (en) * | 2000-12-26 | 2002-06-27 | Bull Hn Information Systems Inc. | Software and data processing system with priority queue dispatching |
-
2002
- 2002-12-31 US US10/335,046 patent/US20040139142A1/en not_active Abandoned
-
2003
- 2003-11-28 JP JP2003400703A patent/JP3910577B2/ja not_active Expired - Fee Related
- 2003-12-29 CN CNB2003101215958A patent/CN1256671C/zh not_active Expired - Fee Related
- 2003-12-30 KR KR1020030099765A patent/KR100586285B1/ko not_active IP Right Cessation
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011139050A2 (ko) * | 2010-05-04 | 2011-11-10 | (주)팬택 | 무선통신시스템에서의 자원할당 방법 및 그 장치 |
WO2011139050A3 (ko) * | 2010-05-04 | 2012-03-01 | (주)팬택 | 무선통신시스템에서의 자원할당 방법 및 그 장치 |
Also Published As
Publication number | Publication date |
---|---|
US20040139142A1 (en) | 2004-07-15 |
KR100586285B1 (ko) | 2006-06-07 |
CN1514366A (zh) | 2004-07-21 |
KR20040062407A (ko) | 2004-07-07 |
JP3910577B2 (ja) | 2007-04-25 |
CN1256671C (zh) | 2006-05-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7228351B2 (en) | Method and apparatus for managing resource contention in a multisystem cluster | |
US20230273937A1 (en) | Conditional master election in distributed databases | |
JP2004213628A (ja) | リソース・コンテンションを管理するための方法および装置 | |
US7376744B2 (en) | Using local locks for global synchronization in multi-node systems | |
US6314114B1 (en) | Distributed resource management | |
US5454108A (en) | Distributed lock manager using a passive, state-full control-server | |
US8301779B2 (en) | Mechanisms for obtaining access to shared resources using a single timestamp technique | |
US20040002974A1 (en) | Thread based lock manager | |
US6697901B1 (en) | Using secondary resource masters in conjunction with a primary resource master for managing resources that are accessible to a plurality of entities | |
US20100031269A1 (en) | Lock Contention Reduction | |
US7209990B2 (en) | Maintain fairness of resource allocation in a multi-node environment | |
US8666958B2 (en) | Approaches to reducing lock communications in a shared disk database | |
JP2009525536A (ja) | 適応型の領域ロック処理 | |
US20130332435A1 (en) | Partitioning optimistic concurrency control and logging | |
US11675622B2 (en) | Leader election with lifetime term | |
US20210382636A1 (en) | Customizable lock management for distributed resources | |
Singh et al. | A non-database operations aware priority ceiling protocol for hard real-time database systems | |
JP2008544371A (ja) | ロック関連の一貫性欠如を処理する方法 | |
US6799172B2 (en) | Method and system for removal of resource manager affinity during restart in a transaction processing system | |
JP4414447B2 (ja) | 情報処理装置、情報処理システムおよび情報処理方法 | |
US9489269B2 (en) | Global backup lock manager | |
JP5580754B2 (ja) | 排他制御装置および排他制御方法 | |
JPH0417041A (ja) | 分散データ管理システムにおける資源管理方式 | |
Takkar | Scheduling real-time transactions in parallel database systems. | |
JP2007265342A (ja) | プロセス識別子の割当方法、コンピュータプログラム及びクラスタシステム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060316 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060328 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20060622 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20060627 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060830 |
|
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: 20070116 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070124 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |