JPH04302339A - 共有メモリエリア管理機構 - Google Patents

共有メモリエリア管理機構

Info

Publication number
JPH04302339A
JPH04302339A JP9109791A JP9109791A JPH04302339A JP H04302339 A JPH04302339 A JP H04302339A JP 9109791 A JP9109791 A JP 9109791A JP 9109791 A JP9109791 A JP 9109791A JP H04302339 A JPH04302339 A JP H04302339A
Authority
JP
Japan
Prior art keywords
memory area
shared memory
user
user program
shared
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
JP9109791A
Other languages
English (en)
Inventor
Yuji Ono
祐二 小野
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP9109791A priority Critical patent/JPH04302339A/ja
Publication of JPH04302339A publication Critical patent/JPH04302339A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、共有メモリエリアをシ
ステムから動的に確保して複数の利用者プログラム間で
共用し、また使用の終えた共有メモリエリアを動的に解
放するようにした計算機における共有メモリエリア管理
機構に関する。
【0002】
【従来の技術】従来、この種の計算機においては、共有
メモリエリアの確保処理と解放処理とは各利用者プログ
ラム自身が行っていた。
【0003】即ち、共有メモリエリアを利用しようとす
る利用者プログラムは、先ず目的とする共有メモリエリ
アが既に確保されているか否かを調べ、確保されていな
ければ即ち当該共有メモリエリアを利用する複数の利用
者プログラムのうちで自プログラムが最初にその共有メ
モリエリアを利用しようとした場合には、確保処理を行
ってシステムから目的とする共有メモリエリアを確保し
、その利用を開始する。なお、既に確保されている場合
即ち当該メモリエリアを既に他の利用者プログラムが利
用している場合には確保処理は不要であり、その確保済
の共有メモリエリアを利用する。
【0004】また、共有メモリエリアの利用を終了しよ
うとする利用者プログラムは、自身がその共有メモリエ
リアを最後に使用する者か否かを調べ、最後に使用する
者であれば解放処理を行ってその共有メモリエリアを解
放する。なお、最後の利用者でなければ、他の利用者プ
ログラムがその共有メモリエリアを使用中なので、解放
処理は行わない。
【0005】
【発明が解決しようとする課題】上述したように、共有
メモリエリアを動的に確保,解放しつつ複数の利用者プ
ログラム間で共用する場合、従来は、必要な確保処理と
解放処理とを利用者プログラム側で行う必要があった。
【0006】そのため、各利用者プログラムは、最初の
利用であるか否かを正確に判断し、若し最初の利用であ
れば確保処理を行わなければならないという煩わしさが
ある。
【0007】また、各利用者プログラムは、最後の利用
であるか否かを正確に判断し、若し最後の利用であれば
解放処理を行わなければならないという煩わしさがある
【0008】そこで本発明の第1の目的は、共有メモリ
エリアの確保処理を利用者プログラムに意識させずに自
動的に行うことができる共有メモリエリア管理機構を提
供することにある。
【0009】また本発明の第2の目的は、共有メモリエ
リアの解放処理を利用者プログラムに意識させずに自動
的に行うことができる共有メモリエリア管理機構を提供
することにある。
【0010】
【課題を解決するための手段】本発明の共有メモリエリ
ア管理機構は上記第1の目的を達成するために、動的に
確保した共有メモリエリアを複数の利用者プログラム間
で共用する計算機において、共有メモリエリアの利用状
況を管理するメモリ管理テーブルと、共有メモリエリア
の利用を要求した利用者プログラムがその利用を要求し
た共有メモリエリアを最初に利用する者か否かを前記メ
モリ管理テーブルを参照して判定する最初利用者判定手
段と、利用者プログラムからの共有メモリエリアの利用
要求に応答して、前記最初利用者判定手段を起動して最
初の利用者プログラムか否かの判定を行わせ、最初の利
用者プログラムの場合には要求された共有メモリエリア
を確保してその共有メモリエリアについて、また最初の
利用者プログラムでない場合には既に確保されている共
有メモリエリアについて、それぞれ利用するための情報
を要求元の利用者プログラムに返却し且つ前記メモリ管
理テーブルを更新するメモリエリア確保手段とを備えて
いる。
【0011】また、上記第2の目的をも達成するために
、共有メモリエリアの利用の終了を通知した利用者プロ
グラムがその通知した共有メモリエリアを最後に利用す
る者か否かを前記メモリ管理テーブルを参照して判定す
る最終利用者判定手段と、利用者プログラムからの共有
メモリエリアの利用終了通知に応答して、前記最終利用
者判定手段を起動して最後の利用者プログラムか否かの
判定を行わせ、最後の利用者プログラムの場合には前記
通知にかかる共有メモリエリアを解放してその共有メモ
リエリアについて、また最後の利用者プログラムでない
場合には終了通知にかかる共有メモリエリアについて、
それぞれ前記メモリ管理テーブルの内容を更新するメモ
リエリア解放手段とを有している。
【0012】
【作用】本発明の共有メモリエリア管理機構においては
、メモリ管理テーブルが、どのような共有メモリエリア
が確保されており、またその利用者数は幾つかといった
如き共有メモリエリアの利用状況を管理しており、利用
者プログラムから共有メモリエリアの利用要求が出され
ると、メモリエリア確保手段が、最初利用者判定手段を
起動してその利用者プログラムがその共有メモリエリア
を最初に利用する者であるか否かを判定させる。最初の
利用者プログラムである場合、該当する共有メモリエリ
アは未確保なので、メモリエリア確保手段はその要求さ
れた共有メモリエリアを確保し、その共有メモリエリア
について利用するための情報を要求元の利用者プログラ
ムに返却し且つメモリ管理テーブルを更新する。また、
最初の利用者プログラムでない場合、該当する共有メモ
リエリアは確保済なので、メモリエリア確保手段は既に
確保されている共有メモリエリアについて利用するため
の情報を要求元の利用者プログラムに返却し且つメモリ
管理テーブルを更新する。
【0013】他方、利用者プログラムから共有メモリエ
リアの利用終了通知が出されると、メモリエリア解放手
段が、最終利用者判定手段を起動してその利用者プログ
ラムがその共有メモリエリアを最後に使用する者である
か否かを判定させる。最後の利用者プログラムの場合、
メモリエリア解放手段は前記通知にかかる共有メモリエ
リアを解放してそのメモリエリアについてメモリ管理テ
ーブルの内容を更新する。また、最後の利用者プログラ
ムでない場合、メモリエリア解放手段は解放処理を行わ
ず、終了通知にかかるメモリエリアについてメモリ管理
テーブルの内容を更新する。
【0014】
【実施例】次に、本発明の実施例について図面を参照し
て詳細に説明する。
【0015】図1を参照すると、本発明の共有メモリエ
リア管理機構の一実施例は、共有メモリエリア2−1〜
2−mをシステムから動的に確保して複数の利用者プロ
グラム1−1〜1−n間で共用させ、また使用の終えた
共有メモリエリア2−1〜2−mを動的に解放するため
に、メモリエリア確保手段3と、メモリ管理テーブル4
と、最初利用者判定手段5と、メモリエリア解放手段6
と、最終利用者判定手段7とを備えている。
【0016】メモリ管理テーブル4は、共有メモリエリ
ア2−1〜2−mの利用状況を管理するテーブルである
【0017】図2はメモリ管理テーブル4に登録される
1共有メモリエリア分の管理情報40の内容例を示す。 この例の管理情報40は、共有メモリエリアの論理名4
1と、共有メモリエリアの先頭アドレスおよびサイズ等
を含むエリアアドレス42と、利用者数カウンタ43と
から構成されている。
【0018】最初利用者判定手段5は、共有メモリエリ
ア2−1〜2−mの利用を要求した利用者プログラム1
−1〜1−nがその利用要求した共有メモリエリアを最
初に利用する者か否かをメモリ管理テーブル4を参照し
て判定する手段である。
【0019】メモリエリア確保手段3は、利用者プログ
ラム1−1〜1−nからの共有メモリエリアの利用要求
に応答して、最初利用者判定手段5を起動して最初の利
用者プログラムか否かの判定を行わせ、最初の利用者プ
ログラムの場合には要求された共有メモリエリアを確保
し、その共有メモリエリアについて利用するための情報
(本実施例では先頭アドレス)を要求元に返却し、また
最初の利用者プログラムでない場合には既に確保されて
いる共有メモリエリアの先頭アドレスを要求元に返却し
、且つ各々の場合に合わせてメモリ管理テーブル4を更
新する手段である。
【0020】最終利用者判定手段7は、共有メモリエリ
ア2−1〜2−mの利用の終了を通知した利用者プログ
ラム1−1〜1−nがその通知した共有メモリエリアを
最後に利用する者か否かをメモリ管理テーブル4を参照
して判定する手段である。
【0021】メモリエリア解放手段6は、利用者プログ
ラム1−1〜1−nからの共有メモリエリア2−1〜2
−mの利用終了通知に応答して、最終利用者判定手段7
を起動して最後の利用者プログラムか否かの判定を行わ
せ、最後の利用者プログラムの場合には前記通知にかか
る共有メモリエリアを解放し、そのメモリエリアについ
てのメモリ管理テーブル4の内容を更新し、また最後の
利用者プログラムでない場合には解放処理は行わず、終
了通知にかかるメモリエリアについてのメモリ管理テー
ブル4の内容を更新する手段である。
【0022】次に上述のように構成された本実施例の共
有メモリエリア管理機構の動作を説明する。
【0023】先ず、図3の流れ図に沿って利用者プログ
ラムが共有メモリエリアの共用利用を要求した際の動作
を説明する。
【0024】例えば、未だ確保されていない論理名M1
,サイズL1の共有メモリエリア2−1の利用要求を利
用者プログラム1−1がメモリエリア確保手段3に出し
たとすると(図3のS1)、メモリエリア確保手段3は
先ず最初利用者判定手段5を起動する(S2)。
【0025】最初利用者判定手段5は論理名M1でメモ
リ管理テーブル4を検索し、論理名M1を図2の論理名
41に持つ管理情報40の有無を調べる。今の場合、論
理名M1の共有メモリエリア2−1は未だ確保されてい
ないので、そのような管理情報40は存在しない。これ
により最初利用者判定手段5は論理名M1の共有メモリ
エリア2−1はシステムで最初の利用(すなわち未確保
)と判断し(S3でYES)、その旨をメモリエリア確
保手段3に通知する。
【0026】メモリエリア確保手段3はこれに応答して
システムメモリの共有メモリエリアとして使用可能なエ
リアからサイズL1の共有メモリエリア2−1を確保し
、図2の論理名41に論理名M1を、エリアアドレス4
2に上記確保した共有メモリエリア2−1の先頭アドレ
スおよびサイズを、利用者数カウンタ43に初期値「0
」を、それぞれセットした管理情報40をメモリ管理テ
ーブル4に登録する(S4)。
【0027】次にメモリエリア確保手段3は、ステップ
S4で登録した管理情報40の利用者数カウンタ43を
+1して「1」にする(S5)。
【0028】そしてメモリエリア確保手段3は、利用者
プログラム1−1に論理名M1の共有メモリエリア2−
1の先頭アドレスを返却する(S6)。これにより、利
用者プログラム1−1は共有メモリメモリ2−1の利用
が可能になる。
【0029】次に、論理名M1の共有メモリエリア2−
1を利用者プログラム1−1が利用している際中に、利
用者プログラム1−nが論理名M1の共有メモリエリア
2−1の共用利用を要求したとする(S1)。
【0030】このときもメモリエリア確保手段3は最初
利用者判定手段5を起動し(S2)、最初利用者判定手
段5は論理名M1の共有メモリエリア2−1がシステム
で最初の利用か否かを判定するが(S3)、今の場合、
論理名M1の共有メモリエリア2−1に対応する管理情
報40がメモリ管理テーブル4に登録されているので、
最初の利用でない旨が最初利用者判定手段5からメモリ
エリア確保手段3に通知される。
【0031】これによりメモリエリア確保手段3は、確
保処理S4をスキップし、メモリ管理テーブル4の論理
名M1に対応する管理情報40の利用者数カウンタ43
を+1して「2」とし(S5)、利用者プログラム1−
nに論理名M1の共有メモリエリア2−1の先頭アドレ
スを返却する(S6)。これにより、利用者プログラム
1−nは論理名M1の共有メモリエリア2−1の利用が
可能になる。
【0032】次に、図4の流れ図に沿って利用者プログ
ラムが共有メモリエリアの利用終了通知を出した際の動
作を説明する。
【0033】例えば、上述のようにして論理名M1の共
有メモリエリア2−1を利用者プログラム1−1,1−
nが共用している状況において、利用者プログラム1−
nがその利用を終えたことから利用終了通知をメモリエ
リア解放手段6に出すと(図4のS11)、メモリエリ
ア解放手段6は先ず最終利用者判定手段7を起動する(
S12)。
【0034】最終利用者判定手段7は論理名M1でメモ
リ管理テーブル4を検索し、論理名M1を持つ管理情報
40の利用者数カウンタ43の値が1か否かを調べる(
S13)。今の場合、論理名M1の共有メモリエリア2
−1は他に利用者プログラム1−1も利用しているので
、利用者数カウンタ43は「2」になっている。これに
より最終利用者判定手段7は共有メモリエリア2−1は
システムで最後の利用でないと判断し(S13でNO)
、その旨をメモリエリア解放手段6に通知する。
【0035】メモリエリア解放手段6はこれに応答して
解放処理S14をスキップし、メモリ管理テーブル4の
論理名M1に対応する管理情報40の利用者数カウンタ
43を−1して「1」とする(S15)。
【0036】その後、論理名M1の共有メモリエリア2
−1の利用を利用者プログラム1−1が終え、その利用
終了通知をメモリエリア解放手段6に出したとする(S
11)。
【0037】このときもメモリエリア解放手段6は最終
利用者判定手段7を起動し(S12)、最終利用者判定
手段7は論理名M1に対応する管理情報40の利用者カ
ウンタ43の値を調べる。今の場合、論理名M1の共有
メモリエリア2−1は他の利用者プログラムで利用され
ていないので、その値は「1」である。そこで、最終利
用者判定手段7は論理名M1の共有メモリエリア2−1
がシステムで最後の利用である旨をメモリエリア解放手
段6に通知する。
【0038】メモリエリア解放手段6はこれに応答して
、論理名M1の共有メモリエリア2−1をシステムに解
放し、メモリ管理テーブル4の論理名M1を持つ管理情
報40の論理名41およびエリアアドレス42をリセッ
トする(S14)。
【0039】そして、メモリエリア解放手段6は、次の
ステップS15において上記管理情報40の利用者数カ
ウンタ43を−1して「0」とする(S15)。
【0040】以上本発明の実施例について説明したが、
本発明は以上の実施例にのみ限定されずその他各種の付
加変更が可能である。例えば、メモリ管理テーブル4に
おける管理情報中の利用者数カウンタ43の代わりに、
その共有メモリエリアを使用している利用者プログラム
名を登録するようにしても良い。
【0041】
【発明の効果】以上説明したように、本発明の共有メモ
リエリア管理機構はメモリ管理テーブルと最初利用者判
定手段とメモリエリア確保手段とを備えたことにより、
各利用者プログラムは共有メモリエリアの確保処理を意
識することなく動的に共用したい共有メモリエリアを任
意の契機で利用することができる。
【0042】また、最終利用者判定手段とメモリエリア
解放手段とを備えたことにより、各利用者プログラムは
共有メモリエリアの解放処理を意識することなく共有メ
モリエリアの利用を終えることができる。
【図面の簡単な説明】
【図1】本発明の一実施例の共有メモリエリア管理機構
の構成図である。
【図2】メモリ管理テーブル4に登録される管理情報の
説明図である。
【図3】利用者プログラムが共有メモリエリアの共用利
用を要求した際の動作を説明するための流れ図である。
【図4】利用者プログラムが共有メモリエリアの共用利
用の終了を通知した際の動作を説明するための流れ図で
ある。
【符号の説明】
1−1〜1−n…利用者プログラム 2−1〜2−m…共有メモリエリア 3…メモリエリア確保手段 4…メモリ管理テーブル 5…最初利用者判定手段 6…メモリエリア解放手段 7…最終利用者判定手段

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】  動的に確保した共有メモリエリアを複
    数の利用者プログラム間で共用する計算機において、共
    有メモリエリアの利用状況を管理するメモリ管理テーブ
    ルと、共有メモリエリアの利用を要求した利用者プログ
    ラムがその利用を要求した共有メモリエリアを最初に利
    用する者か否かを前記メモリ管理テーブルを参照して判
    定する最初利用者判定手段と、利用者プログラムからの
    共有メモリエリアの利用要求に応答して、前記最初利用
    者判定手段を起動して最初の利用者プログラムか否かの
    判定を行わせ、最初の利用者プログラムの場合には要求
    された共有メモリエリアを確保してその共有メモリエリ
    アについて、また最初の利用者プログラムでない場合に
    は既に確保されている共有メモリエリアについて、それ
    ぞれ利用するための情報を要求元の利用者プログラムに
    返却し且つ前記メモリ管理テーブルを更新するメモリエ
    リア確保手段とを含むことを特徴とする共有メモリエリ
    ア管理機構。
  2. 【請求項2】  共有メモリエリアの利用の終了を通知
    した利用者プログラムがその通知した共有メモリエリア
    を最後に利用する者か否かを前記メモリ管理テーブルを
    参照して判定する最終利用者判定手段と、利用者プログ
    ラムからの共有メモリエリアの利用終了通知に応答して
    、前記最終利用者判定手段を起動して最後の利用者プロ
    グラムか否かの判定を行わせ、最後の利用者プログラム
    の場合には前記通知にかかる共有メモリエリアを解放し
    てその共有メモリエリアについて、また最後の利用者プ
    ログラムでない場合には終了通知にかかる共有メモリエ
    リアについて、それぞれ前記メモリ管理テーブルの内容
    を更新するメモリエリア解放手段とを含むことを特徴と
    する請求項1記載の共有メモリエリア管理機構。
JP9109791A 1991-03-29 1991-03-29 共有メモリエリア管理機構 Pending JPH04302339A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9109791A JPH04302339A (ja) 1991-03-29 1991-03-29 共有メモリエリア管理機構

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9109791A JPH04302339A (ja) 1991-03-29 1991-03-29 共有メモリエリア管理機構

Publications (1)

Publication Number Publication Date
JPH04302339A true JPH04302339A (ja) 1992-10-26

Family

ID=14017019

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9109791A Pending JPH04302339A (ja) 1991-03-29 1991-03-29 共有メモリエリア管理機構

Country Status (1)

Country Link
JP (1) JPH04302339A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07319714A (ja) * 1993-12-15 1995-12-08 Microsoft Corp 適切なオブジェクト・オーナシップ・モデルを選択的に適用する方法およびシステム
US7328438B2 (en) 2003-03-27 2008-02-05 International Business Machines Corporation Deallocation of computer data in a multithreaded computer
WO2009133722A1 (ja) * 2008-04-30 2009-11-05 日本電気株式会社 プロセス間通信システム、その通信に用いる共有メモリおよび通信方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS628234A (ja) * 1985-07-03 1987-01-16 Nec Corp 共用プログラム制御方式
JPS63141148A (ja) * 1986-12-03 1988-06-13 Nec Corp 共用デ−タエリア自動解放制御方式

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS628234A (ja) * 1985-07-03 1987-01-16 Nec Corp 共用プログラム制御方式
JPS63141148A (ja) * 1986-12-03 1988-06-13 Nec Corp 共用デ−タエリア自動解放制御方式

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07319714A (ja) * 1993-12-15 1995-12-08 Microsoft Corp 適切なオブジェクト・オーナシップ・モデルを選択的に適用する方法およびシステム
US7328438B2 (en) 2003-03-27 2008-02-05 International Business Machines Corporation Deallocation of computer data in a multithreaded computer
US8209692B2 (en) 2003-03-27 2012-06-26 International Business Machines Corporation Deallocation of computer data in a multithreaded computer
US8234645B2 (en) 2003-03-27 2012-07-31 International Business Machines Corporation Deallocation of computer data in a multithreaded computer
WO2009133722A1 (ja) * 2008-04-30 2009-11-05 日本電気株式会社 プロセス間通信システム、その通信に用いる共有メモリおよび通信方法

Similar Documents

Publication Publication Date Title
CA1244555A (en) Process transparent multi storage mode data transfer and buffer control
JP2705717B2 (ja) ロック装置及び方法、ロック要求の細分性を判別するための装置及び方法
US8244888B2 (en) Method and mechanism for implementing tagged session pools
US5226143A (en) Multiprocessor system includes operating system for notifying only those cache managers who are holders of shared locks on a designated page by global lock manager
US5386536A (en) Apparatus and method for managing memory allocation
US20060010031A1 (en) System and method for computer resource marketing
US20040078339A1 (en) Priority based licensing
US6697901B1 (en) Using secondary resource masters in conjunction with a primary resource master for managing resources that are accessible to a plurality of entities
JPH0628053B2 (ja) マルチプロセッサシステムの資源の割当制御方法
JPH10301834A (ja) 共用メモリの管理方法
JPH04299440A (ja) 共有レジスタ制御方式
JPH08241207A (ja) セキュリティ・レベルを設定する方法およびシステム
US20070214089A1 (en) Managing a virtual persona through selective association
US20020007408A1 (en) Resource management
JP2001092702A (ja) 情報処理システム、サーバ装置、クライアント装置、及び記録媒体
JP6653710B2 (ja) 計算機および計算機の制御方法
US6330612B1 (en) Method and apparatus for serializing access to a shared resource in an information handling system
JP2003288266A (ja) メモリ割当方法及びそのプログラム
JP2020087395A (ja) 予約管理システム、予約管理方法、及び予約管理プログラム
JPH04302339A (ja) 共有メモリエリア管理機構
US9088569B2 (en) Managing access to a shared resource using client access credentials
JP4211645B2 (ja) 専用プロセッサの備わった計算機システム
JP2588175B2 (ja) ハツシユ・テ−ブル・エントリ排他処理装置
JP7360035B2 (ja) 配席支援システム、配席支援方法、及び配席支援プログラム
JP3036468B2 (ja) 排他制御処理装置及び排他制御処理方法並びに排他制御処理プログラムを記憶した記憶媒体