JPH0799517B2 - 共有資源管理方法 - Google Patents

共有資源管理方法

Info

Publication number
JPH0799517B2
JPH0799517B2 JP3181502A JP18150291A JPH0799517B2 JP H0799517 B2 JPH0799517 B2 JP H0799517B2 JP 3181502 A JP3181502 A JP 3181502A JP 18150291 A JP18150291 A JP 18150291A JP H0799517 B2 JPH0799517 B2 JP H0799517B2
Authority
JP
Japan
Prior art keywords
resource
cache memory
resources
management unit
free
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
Application number
JP3181502A
Other languages
English (en)
Other versions
JPH04362766A (ja
Inventor
正俊 佐藤
浩一 武田
Original Assignee
工業技術院長
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 工業技術院長 filed Critical 工業技術院長
Priority to JP3181502A priority Critical patent/JPH0799517B2/ja
Publication of JPH04362766A publication Critical patent/JPH04362766A/ja
Publication of JPH0799517B2 publication Critical patent/JPH0799517B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、複数のプロセッサが共
有メモリ上の資源を共有するシステムにおける共有資源
管理方法に関する。
【0002】
【従来の技術】いわゆるマルチプロセッサ方式におい
て、複数のプロセッサが共有メモリ上の資源を共有する
場合、大別して一括集中管理と分割局所管理とに分類す
ることができる。図2に従来の一括集中管理方法を採用
した装置のブロック図を示す。図において、複数のプロ
セッサ(ここでは3台のプロセッサ1A、1B、1C)
が、それぞれバスライン2を介して共有メモリ3に接続
されている。この共有メモリ3には、上記3台のプロセ
ッサ1A、1B、1Cが互いに協調しあいながら仕事を
実行する際に必要となる資源が格納されている。この資
源というのは、共有メモリ3上に書き込まれたプログラ
ムやデータ、あるいはデータ書き込みのための領域のこ
とを指す。一括集中管理方法では、全てのプロセッサは
共有メモリ3上の全ての資源をアクセス可能にしてい
る。この管理のために共有メモリ管理部4が設けられ
る。この共有メモリ管理部4は、各プロセッサがそれぞ
れ共有メモリ3上の資源の割付けを要求した場合、その
空き資源を指定するための空き資源ポインタ5を備えて
いる。
【0003】図3にこのような共有メモリ上の空き資源
管理の概念図を示す。共有メモリ3上には、適当な大き
さに選定された単位量の資源6が多数存在する。これら
の資源6は、必ずしも物理的に連続して配置されておら
ず、その管理のためにそれぞれポインタを用いて連鎖状
につながり、いわゆるチェインを構成している。空き資
源ポインタ5は、共有メモリ3上に存在する空き資源6
の内、チェインの先頭の空き資源のアドレスを保持して
いる。空き資源の割付け要求があると、このチェインの
先頭の空き資源が、要求のあったプロセッサに割付けら
れ、空き資源ポインタ5は、チェインの2番目の空き資
源を指すよう書き換えられる。こうして次々と空き資源
が割付けられ、最後の空き資源が割付けられた後は、す
でに共有メモリ3上には空き資源が存在しなくなる。こ
の場合、割付け要求があってもプロセッサは他の空き資
源が解放されるまで待機することになる。一方、いずれ
かのプロセッサに割付けられていた資源が解放された場
合、これは空き資源となってこの図3に示した空き資源
のチェインの先頭に追加される。そして、空き資源ポイ
ンタ5は、その先頭の空き資源のアドレスを指すよう内
容が書き換えられる。一括集中管理においては以上のよ
うな方法で共有メモリが管理されていた。
【0004】図4には従来の分割局所管理方法を採用し
た装置のブロック図を示す。図の装置の場合、複数のプ
ロセッサここでは3台のプロセッサ1A、1B、1C
が、バスライン2を介して共有メモリ3に接続されてお
り、各プロセッサにはそれぞれ個別にメモリ管理部7
A、7B、7Cが接続されている。そして、共有メモリ
3には、予めプロセッサ1A、1B、1Cがそれぞれ専
用に使用する資源3A、3B、3Cを設定しておく。例
えば、この資源3Aは、先に図3で説明した空き資源6
等が一定量含まれているものである。メモリ管理部7
A、7B、7Cは、それぞれ該当するプロセッサの占有
する資源を個別に管理する。その管理方法は図3で説明
したのと同様である。分割局所管理においては、このよ
うに予め各プロセッサに対し、必要と思われる資源を割
当ててしまう。
【0005】
【発明が解決しようとする課題】ところで、上記のよう
な従来の管理方法にはいずれも次のような問題があっ
た。まず、一括集中管理方法によれば、共有メモリ管理
部4が、共有メモリ3上の資源を一括して管理するた
め、管理の手間自体を少なくすることができる。しかし
ながら、共有メモリ管理部4に対する割付け要求が集中
すると多くのアクセス待ちが生じる危険性がある。この
ようなアクセスの集中は排他制御に基づくアクセスとな
り、プロセッサが共有するバスライン2のトラフィック
を著しく増大する可能性がある。従って、一括集中管理
を行うシステムにおいては、共有メモリを使用するプロ
セッサの台数を大きく制限するという問題があった。
【0006】一方、分割局所管理の場合、先に説明した
ように各プロセッサ毎にメモリ管理部が設けられるた
め、アクセス集中による上記のような共有バスのボトル
ネックを解消することが可能である。しかしながら、プ
ロセッサ毎に別個のメモリ管理部が資源の管理を行うこ
とにより、全体として資源の割当てがアンバランスにな
り、資源に無駄が生じるようになる。即ち、予め各プロ
セッサに固定的に資源を割付けると、空き資源が無駄に
割付けられるプロセッサが生じたり、空き資源の不足す
るプロセッサが生じたりする。これは負荷の不均一性に
よるもので、メモリ資源ではフラグメンテーション問題
等も生じる。本発明は以上の点に着目してなされたもの
で、資源を有効に活用し、かつアクセス集中によるボト
ルネック等の障害を生じない共有資源管理方法を提供す
ることを目的とするものである。
【0007】
【課題を解決するための手段】本発明の共有資源管理方
法は、複数のプロセッサが共有メモリ上の資源を共有す
るシステムにおいて、前記共有メモリ上の空き資源を管
理する共有メモリ管理部と、前記共有メモリの所定の資
源を転記してアクセスするために、前記各プロセッサ毎
に個別に設けられたキャッシュメモリと、前記キャッシ
ュメモリ上の空き資源を管理するキャッシュメモリ管理
部とを設け、前記各プロセッサは、前記キャッシュメモ
リ管理部に対して、空き資源の割当て要求を行い、当該
キャッシュメモリに空き資源が無い場合に、前記共有メ
モリ管理部に空き資源の割当要求を行ない、前記キャッ
シュメモリ上の空き資源は、キャッシュメモリからの資
源の追い出し時に、前記共有メモリ管理部へ管理を移す
ことを特徴とするものである。
【0008】
【作用】この方法は、各プロセッサが共有メモリ上の資
源をアクセスするために、それぞれ別個にキャッシュメ
モリを用意する。そしてキャッシュメモリ上へ転記した
資源に空き資源が発生した場合、これを直ちに共有メモ
リ側に返すことなくキャッシュメモリ管理部で管理す
る。従って、各プロセッサはキャッシュメモリ管理部に
空き資源割当て要求を行う。そしてキャッシュメモリ上
に空き資源が無い場合にのみ、共有メモリ管理部に空き
資源の割当て要求を行う。一方、キャッシュメモリから
資源の追い出しを行う場合に、その資源が空き資源であ
れば共有メモリ管理部へ管理が移される。これによっ
て、一旦キャッシュメモリへ転記された空き資源はその
キャッシュメモリをアクセスするプロセッサに優先的に
割付けられる。この割付けはローカルに行われ、分割局
所管理的となる。また、キャッシュメモリ上へ転記され
る資源はその量が限定されており、大部分は共有メモリ
3上で管理されるため、効率的な一括集中管理も行え
る。
【0009】
【実施例】以下、本発明を図面を用いて詳細に説明す
る。図1は本発明の方法の実施例を示すフローチャート
である。図の方法を説明する前に、本発明実施のための
ハードウェアを説明する。図5は、本発明の方法を実施
するための装置ブロック図である。図5において複数の
プロセッサ、即ちここでは3台のプロセッサ1A、1
B、1Cは、それぞれバスライン2を介して共有メモリ
3上の資源を共有する構成とされている。この場合に、
本発明の方法においては、各プロセッサは共有メモリ3
を直接アクセスすることなく、キャッシュメモリ12を
アクセスする構成とされている。このキャッシュメモリ
12の空き資源を管理するために、それぞれキャッシュ
メモリ管理部11A、11B、11Cが設けられる。な
お、共有メモリ3上の空き資源を管理するために、共有
メモリ管理部10が設けられているが、この構成は先に
図2を用いて説明した通りのものであり、動作は先に図
3を用いて説明した通りのものである。
【0010】図6には、本発明実施のためのキャッシュ
メモリ管理部動作説明図を示す。図のようにキャッシュ
メモリ管理部11は、キャッシュメモリ12の中に生じ
た空き資源の先頭アドレスを、それぞれポインタとして
スタック状に格納した構成とされる。従って、例えばキ
ャッシュメモリ12に2つの空き資源が存在する場合、
キャッシュメモリ管理部11には2つのポインタがスタ
ック状に格納される。そしてそのうちの空き資源が対応
するプロセッサに割付けられると、キャッシュメモリ管
理部11中のポインタが消滅する。また、キャッシュメ
モリ12中に新たな空き資源が発生すると、新たなポイ
ンタがキャッシュメモリ管理部11に追加される。本発
明の実施においては、このようにキャッシュメモリ管理
部が常にすべての空き資源の先頭アドレスを示すポイン
タを有するようにして、空き資源管理を容易にすること
が好ましい。
【0011】本発明の方法は、基本的に共有メモリを持
つマルチプロセッサでの、並列キャッシュ機構の拡張に
より実現していく。この並列キャッシュ機構というの
は、図5で説明したような構成のものをいい、各プロセ
ッサがそれぞれ個別にキャッシュメモリを持ち、共有メ
モリから必要な資源の転記を行って、そのキャッシュメ
モリを個別にアクセスする方法のことをいう。
【0012】図7にはこのような方式における通常アク
セス動作説明図を示す。図7(a)において、共有メモ
リ3から一定の資源がキャッシュメモリ12に転記され
ると、そのキャッシュメモリを使用するプロセッサ1が
転記された資源をアクセスする。キャッシュメモリ12
に必要な資源が次々と転記され、キャッシュメモリ12
がいっぱいになった場合には、最も古くアクセスされた
資源が追い出され、共有メモリ3に戻される。これは従
来よく知られたキャッシュメモリの使用方法そのもので
ある。また、図7(b)に示すように、キャッシュメモ
リ12上の資源がプロセッサ1によって更新された場
合、そのまま放置すれば、当該資源を他のプロセッサが
アクセスしようとした場合、共有メモリ3から転記を行
うと内容の不一致が生じる。従って、所定のタイミング
で資源の内容を一致させるための処理が行われる。
【0013】図1に戻って、本発明の方法を順を追って
説明していく。本発明の方法は先に説明したように、各
プロセッサのアクセスがキャッシュメモリによる分割局
所管理となる。従って、図1ステップS1に示すよう
に、プロセッサは、まず資源割当て要求が発生するとス
テップS2に示すように、キャッシュメモリ管理部11
に対し資源の割当て要求を行う。キャッシュメモリ管理
部11は、先に図6に示したような空き資源の管理を行
っており、まず空き資源があるか否かを判断する(図1
ステップS3)。ここで空き資源がある場合には、キャ
ッシュメモリ12上の空き資源をそのプロセッサに割当
てる(ステップS4)。一方、空き資源が存在しないよ
うな場合には、今度は共有メモリ管理部10に対し、空
き資源の割当て要求を行う(ステップS5)。即ちこの
場合には、従来の一括集中管理と同様の手順となる。共
有メモリ管理部10は、共有メモリ中に空き資源がある
か否かを判断する(ステップS6)。共有メモリ上に空
き資源があれば、その空き資源が要求したプロセッサに
割当てられる(ステップS7)。また、空き資源がなけ
れば割当てが拒否される(ステップS8)。このような
空き資源管理は図3に示した通りのものとなる。割当て
られた空き資源はキャッシュメモリ上に転記される。
【0014】図8に上記キャッシュメモリ管理部の動作
説明図を示す。図のようにキャッシュメモリ12には、
プロセッサ1がアクセスすべき資源が共有メモリから転
記されている。ここでプロセッサ1が資源を使用し、そ
の後、その資源が不要となった場合には、その資源が空
き資源となりプロセッサ1から解放される。しかしなが
ら、本発明においては、この空き資源を直ちに共有メモ
リに戻すことはせず、キャッシュメモリ管理部11が先
に説明した要領で空き資源を登録し管理する。これはキ
ャッシュメモリ12中に空き資源を確保する領域が存在
する限り実行される。そしてプロセッサ1が新たに空き
資源を必要とする場合、従来は共有メモリ管理部に対し
空き資源を要求していたが、本発明においてはキャッシ
ュメモリ管理部11に対し空き資源を要求する。そして
キャッシュメモリ管理部11はプロセッサ1に対し、す
でに登録されている空き資源の一つを割付ける。このよ
うな処理を実行することによって、プロセッサ1がバス
ラインを介して、共有メモリ管理部に対し空き資源を要
求する割合が減少する。即ちキャッシュメモリ管理部1
1に空き資源が登録されている限り分割局所管理が行わ
れ、アクセス集中が防止される。
【0015】図9には、共有メモリ管理部の動作説明図
を示す。キャッシュメモリ12は先に説明したように、
プロセッサ1がアクセスしようとする資源を共有メモリ
3から次々と転記し、共有メモリ3へのアクセス集中を
防止する機能を果たす。従って、例えばキャッシュメモ
リ12中に多数の空き資源が発生し、いずれかの空き資
源がアクセスされないままキャッシュメモリ12がいっ
ぱいになったような場合、その空き資源はキャッシュメ
モリ12上から追い出される。この場合に本発明におい
ては、キャッシュメモリ管理部11が空き資源の登録を
抹消し、共有メモリ3に戻された空き資源は共有メモリ
管理部10の管理下に置かれ新たに登録される。この手
順は先に図3を用いて説明した通りである。
【0016】従って、プロセッサ1がキャッシュメモリ
12を管理するキャッシュメモリ管理部11に対し、空
き資源の割付けを要求し、キャッシュメモリ12上に空
き資源が無いことが分かると、今度は共有メモリ管理部
10に対し、空き資源の割付けを要求し、従来の一括集
中管理的な処理が実行される。このように、キャッシュ
メモリ12の容量自体は限定されており、キャッシュメ
モリ管理部11の管理する空き資源の量は制限されるた
め、資源の片寄りや無駄は最小限に押さえられる。本発
明は以上の実施例に限定されない。バスラインに接続さ
れたプロセッサの数や、そのメモリ管理部キャッシュメ
モリ等の接続構成、共有メモリの数や共有メモリ管理部
の構成等は、同様の機能を有する種々の構成に置き換え
て差し支えない。また、共有メモリ管理部やキャッシュ
メモリ管理部の構成も上記のような空き資源管理に適し
た従来よく知られた構成のものに置き換えて差し支えな
い。
【0017】
【発明の効果】以上説明した本発明の共有資源管理方法
によれば、いわゆるマルチプロセッサでの並列キャッシ
ュ機構により、共有メモリ上の共有資源がキャッシュ上
にある時はキャッシュが分割局所管理し、キャッシュか
ら追い出された時は共有メモリ上の共有資源の管理に委
ねるようにするため、全体として共有資源を一括集中管
理するにも関わらず、共有資源のアクセスにおいては分
割局所管理的にキャッシュを効果的にアクセスできる。
しかもキャッシュメモリ上で発生した空き資源について
は、キャッシュメモリ管理部により割当てを行うため、
共有資源の片寄りが発生しない程度に適切な局所管理が
可能となる。従って、アクセスの集中によるボトルネッ
クを防止するとともに、共有資源の効率的な均一な割当
て管理が可能となる。
【図面の簡単な説明】
【図1】本発明の方法の実施例を示すフローチャートで
ある。
【図2】従来の一括集中管理方法を採用した装置のブロ
ック図である。
【図3】共有メモリ上の空き資源管理方法を説明する概
念図である。
【図4】従来の分割局所管理方法を採用した装置のブロ
ック図である。
【図5】本発明の方法実施のための装置ブロック図であ
る。
【図6】本発明のキャッシュメモリ管理部動作説明図で
ある。
【図7】通常アクセス動作の説明図である。
【図8】キャッシュメモリ管理部動作の説明図である。
【図9】共有メモリ管理部動作の説明図である。
【符号の説明】
S1〜S7 本発明の方法の各ステップ

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 複数のプロセッサが共有メモリ上の資源
    を共有するシステムにおいて、前記共有メモリ上の空き
    資源を管理する共有メモリ管理部と、前記共有メモリの
    所定の資源を転記してアクセスするために、前記各プロ
    セッサ毎に個別に設けられたキャッシュメモリと、前記
    キャッシュメモリ上の空き資源を管理するキャッシュメ
    モリ管理部とを設け、前記各プロセッサは、前記キャッ
    シュメモリ管理部に対して、空き資源の割当て要求を行
    い、当該キャッシュメモリに空き資源が無い場合に、前
    記共有メモリ管理部に空き資源の割当て要求を行ない、
    前記キャッシュメモリ上の空き資源は、キャッシュメモ
    リからの資源の追い出し時に、前記共有メモリ管理部へ
    管理を移すことを特徴とする共有資源管理方法。
JP3181502A 1991-06-10 1991-06-10 共有資源管理方法 Expired - Lifetime JPH0799517B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3181502A JPH0799517B2 (ja) 1991-06-10 1991-06-10 共有資源管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3181502A JPH0799517B2 (ja) 1991-06-10 1991-06-10 共有資源管理方法

Publications (2)

Publication Number Publication Date
JPH04362766A JPH04362766A (ja) 1992-12-15
JPH0799517B2 true JPH0799517B2 (ja) 1995-10-25

Family

ID=16101883

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3181502A Expired - Lifetime JPH0799517B2 (ja) 1991-06-10 1991-06-10 共有資源管理方法

Country Status (1)

Country Link
JP (1) JPH0799517B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4310709B2 (ja) 2005-10-21 2009-08-12 コニカミノルタビジネステクノロジーズ株式会社 情報処理装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62204363A (ja) * 1986-03-04 1987-09-09 Fujitsu Ltd 共有メモリ方式

Also Published As

Publication number Publication date
JPH04362766A (ja) 1992-12-15

Similar Documents

Publication Publication Date Title
US6816947B1 (en) System and method for memory arbitration
US7284098B2 (en) Message based inter-process for high volume data
JP2662603B2 (ja) 無効要求を選別する方法及び装置
US7484043B2 (en) Multiprocessor system with dynamic cache coherency regions
JP3748774B2 (ja) キャッシュコヒーレンス共用ディスクコンピュータシステムにおけるi/o転送
US6754739B1 (en) Computer resource management and allocation system
JPH02193248A (ja) 実記憶管理方法
US20090083496A1 (en) Method for Improved Performance With New Buffers on NUMA Systems
US6457107B1 (en) Method and apparatus for reducing false sharing in a distributed computing environment
US7406554B1 (en) Queue circuit and method for memory arbitration employing same
JPH09146904A (ja) アドレス空間共有システム
JPH0799517B2 (ja) 共有資源管理方法
JPH10143382A (ja) 共有メモリ型マルチプロセッサシステムの資源管理方法
JPH06309231A (ja) キャッシュメモリ制御方法
JP3092656B2 (ja) 試験プログラム実行制御方法
US6721858B1 (en) Parallel implementation of protocol engines based on memory partitioning
KR101989033B1 (ko) 플랫폼 관리 장치 및 방법
CN120929222B (zh) 数据访问方法、缓存装置、芯片产品及计算机设备
CN119718539B (zh) 服务器无感知安全容器的内存热插拔控制方法及电子设备
JP2517859B2 (ja) 並列プロセス管理方法
JPH0830512A (ja) スレッド制御方式
JP2613931B2 (ja) バッファ制御方式
CN117667764A (zh) 内存管理方法、装置、电子设备及存储介质
JPH07120305B2 (ja) マルチプロセッサによるデータベース処理方式
JPH0743664B2 (ja) 共有記憶領域割当処理方式

Legal Events

Date Code Title Description
EXPY Cancellation because of completion of term