JPH06301593A - バッファ管理方式 - Google Patents
バッファ管理方式Info
- Publication number
- JPH06301593A JPH06301593A JP9035593A JP9035593A JPH06301593A JP H06301593 A JPH06301593 A JP H06301593A JP 9035593 A JP9035593 A JP 9035593A JP 9035593 A JP9035593 A JP 9035593A JP H06301593 A JPH06301593 A JP H06301593A
- Authority
- JP
- Japan
- Prior art keywords
- buffer
- unit
- acquisition
- request
- system resource
- 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.)
- Withdrawn
Links
- 239000000872 buffer Substances 0.000 title claims abstract description 294
- 238000007726 management method Methods 0.000 claims description 51
- 230000003139 buffering effect Effects 0.000 abstract 4
- 238000000034 method Methods 0.000 description 8
- 230000000717 retained effect Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 2
Abstract
(57)【要約】
【目的】バッファ獲得要求に重み付けを行い、重要度の
高い要求に優先的に対応してバッファ不足によるロック
状態を解消する。又、処理中に解放された重要度の高い
バッファは、再使用を遅らせて障害発生時の原因解析を
容易にする。 【構成】システム資源管理部2とプログラム部4の間に
バッファ管理部3を設ける。バッファ確保手段5は初期
化時にシステム資源部1から規定数のバッファをバッフ
ァリンク部15に確保する。プログラム部4がシステム
資源管理部2からのバッファ獲得に失敗したとき、重み
付けが高ければバッファ獲得手段8がバッファリンク部
15からバッファを切り出し使用させる。バッファ解放
手段11は解放されたバッファを重み付けが高ければバ
ッファリンク部15の末尾に、低ければ先頭に接続し、
バッファ処理終了手段12がプログラムの終了処理時に
バッファリンク部15の先頭から規定数を超すバッファ
をシステム資源部1に戻す。
高い要求に優先的に対応してバッファ不足によるロック
状態を解消する。又、処理中に解放された重要度の高い
バッファは、再使用を遅らせて障害発生時の原因解析を
容易にする。 【構成】システム資源管理部2とプログラム部4の間に
バッファ管理部3を設ける。バッファ確保手段5は初期
化時にシステム資源部1から規定数のバッファをバッフ
ァリンク部15に確保する。プログラム部4がシステム
資源管理部2からのバッファ獲得に失敗したとき、重み
付けが高ければバッファ獲得手段8がバッファリンク部
15からバッファを切り出し使用させる。バッファ解放
手段11は解放されたバッファを重み付けが高ければバ
ッファリンク部15の末尾に、低ければ先頭に接続し、
バッファ処理終了手段12がプログラムの終了処理時に
バッファリンク部15の先頭から規定数を超すバッファ
をシステム資源部1に戻す。
Description
【0001】
【産業上の利用分野】本発明はバッファ管理方式に関
し、特に計算機システム内のメインメモリなどのシステ
ム資源を分割した単位であるバッファの獲得および解放
を管理するためのバッファ管理方式に関する。
し、特に計算機システム内のメインメモリなどのシステ
ム資源を分割した単位であるバッファの獲得および解放
を管理するためのバッファ管理方式に関する。
【0002】
【従来の技術】従来のバッファ管理方式では、プログラ
ムの実行に際してバッファの獲得要求および解放要求が
発生した場合、プログラム部がシステム資源管理部に対
して直接バッファの獲得および解放を要求していた。
ムの実行に際してバッファの獲得要求および解放要求が
発生した場合、プログラム部がシステム資源管理部に対
して直接バッファの獲得および解放を要求していた。
【0003】図5は、従来のバッファ管理方式の一例を
示すシステム構成図である。図5に示すように、従来の
バッファ管理方式は、システム資源部1,システム資源
管理部2,プログラム部4aで構成され、システム資源
管理部2には、バッファ獲得処理を行うシステム資源獲
得手段6と、バッファ解放処理を行うシステム資源解放
手段10とを含み、プログラム部4aには、バッファ獲
得要求を発行するバッファ獲得要求手段7aと、獲得要
求の成否を確認して次の処理に移行する獲得結果通知手
段9と、バッファ解放要求を発行するバッファ解放要求
手段13aと、プログラムの終了処理を行う処理終了手
段14aとが含まれている。
示すシステム構成図である。図5に示すように、従来の
バッファ管理方式は、システム資源部1,システム資源
管理部2,プログラム部4aで構成され、システム資源
管理部2には、バッファ獲得処理を行うシステム資源獲
得手段6と、バッファ解放処理を行うシステム資源解放
手段10とを含み、プログラム部4aには、バッファ獲
得要求を発行するバッファ獲得要求手段7aと、獲得要
求の成否を確認して次の処理に移行する獲得結果通知手
段9と、バッファ解放要求を発行するバッファ解放要求
手段13aと、プログラムの終了処理を行う処理終了手
段14aとが含まれている。
【0004】まず、図5中に示すフローチャートにより
バッファ獲得の動作について詳細に説明する。プログラ
ム部4aのバッファ獲得要求手段7aでバッファ獲得要
求が発生すると(ステップS40)、このバッファ獲得
要求を受けてシステム資源管理部2のシステム資源獲得
手段6がシステム資源部1に対してバッファの獲得指示
をする(ステップS41)。このバッファ獲得指示に基
づいてバッファ獲得が成功したか否かをステップS42
で判定し、成功した場合はそのアドレスを獲得結果通知
手段9に通知して獲得終了となる(ステップS43)。
成功しなかった場合には、獲得に失敗した旨を通知して
処理を終了する(ステップS44)。なお、バッファの
獲得に失敗した場合、直ちに再度獲得要求を行うと、各
プログラムからのバッファ要求がいずれも失敗を繰り返
し、システムがデッドロック状態に陥る場合が少なくな
い。
バッファ獲得の動作について詳細に説明する。プログラ
ム部4aのバッファ獲得要求手段7aでバッファ獲得要
求が発生すると(ステップS40)、このバッファ獲得
要求を受けてシステム資源管理部2のシステム資源獲得
手段6がシステム資源部1に対してバッファの獲得指示
をする(ステップS41)。このバッファ獲得指示に基
づいてバッファ獲得が成功したか否かをステップS42
で判定し、成功した場合はそのアドレスを獲得結果通知
手段9に通知して獲得終了となる(ステップS43)。
成功しなかった場合には、獲得に失敗した旨を通知して
処理を終了する(ステップS44)。なお、バッファの
獲得に失敗した場合、直ちに再度獲得要求を行うと、各
プログラムからのバッファ要求がいずれも失敗を繰り返
し、システムがデッドロック状態に陥る場合が少なくな
い。
【0005】次に、バッファ解放の動作について詳細に
説明する。プログラム部4aのバッファ解放要求手段1
3aでバッファ解放要求が発生すると(ステップS4
5)、このバッファ解放要求を受けてシステム資源解放
手段10がバッファの解放を指示し(ステップS4
6)、バッファはシステム資源部1に返却される。な
お、プログラムの処理を終了する場合は、使用中のバッ
ファがあればバッファ解放要求手段13aで解放した
後、処理終了手段14aが処理終了を要求すると(ステ
ップS47)、バッファに関しては特に処理することな
く他の必要な処理を行って終了となる(ステップS4
8)。
説明する。プログラム部4aのバッファ解放要求手段1
3aでバッファ解放要求が発生すると(ステップS4
5)、このバッファ解放要求を受けてシステム資源解放
手段10がバッファの解放を指示し(ステップS4
6)、バッファはシステム資源部1に返却される。な
お、プログラムの処理を終了する場合は、使用中のバッ
ファがあればバッファ解放要求手段13aで解放した
後、処理終了手段14aが処理終了を要求すると(ステ
ップS47)、バッファに関しては特に処理することな
く他の必要な処理を行って終了となる(ステップS4
8)。
【0006】
【発明が解決しようとする課題】しかしながら、上述し
た従来のバッファ管理方式では、あるプログラムが一つ
か二つのバッファを獲得して処理を実行すれば、そのプ
ログラム内で持っているそれ以上のバッファを解放でき
る場合であっても、システム資源部のバッファが不足状
態であればバッファの獲得要求に応じられないため、バ
ッファ不足は解消されない。このようなバッファ不足の
状態で複数のプログラムからバッファ獲得要求が出され
ると、各プログラムからのバッファ獲得要求がいずれも
失敗を繰り返し、システム全体がデッドロック状態に陥
るという問題点があった。
た従来のバッファ管理方式では、あるプログラムが一つ
か二つのバッファを獲得して処理を実行すれば、そのプ
ログラム内で持っているそれ以上のバッファを解放でき
る場合であっても、システム資源部のバッファが不足状
態であればバッファの獲得要求に応じられないため、バ
ッファ不足は解消されない。このようなバッファ不足の
状態で複数のプログラムからバッファ獲得要求が出され
ると、各プログラムからのバッファ獲得要求がいずれも
失敗を繰り返し、システム全体がデッドロック状態に陥
るという問題点があった。
【0007】又、プログラムでバッファ解放要求が発生
すると、使用していたバッファがシステム資源部に無条
件で解放されるため、解放されたバッファが直ちに別の
目的で使用される可能性があり、このバッファが障害発
生時の原因解析に必要な情報を格納していた場合には、
解析情報が消滅してしまい情報不足で原因解析が困難に
なるという問題点があった。
すると、使用していたバッファがシステム資源部に無条
件で解放されるため、解放されたバッファが直ちに別の
目的で使用される可能性があり、このバッファが障害発
生時の原因解析に必要な情報を格納していた場合には、
解析情報が消滅してしまい情報不足で原因解析が困難に
なるという問題点があった。
【0008】本発明の第1の目的は、一定の条件を満た
すバッファ獲得要求に対して優先的にバッファを供与す
ることにより、上述した第1の問題点を解決できるバッ
ファ管理方式を提供することにある。更に、本発明の第
2の目的は、一定の条件を満たすバッファ解放要求に対
しては該当バッファの再使用順位を考慮することによ
り、上述した第2の問題点も同時に解決できるバッファ
管理方式を提供することである。
すバッファ獲得要求に対して優先的にバッファを供与す
ることにより、上述した第1の問題点を解決できるバッ
ファ管理方式を提供することにある。更に、本発明の第
2の目的は、一定の条件を満たすバッファ解放要求に対
しては該当バッファの再使用順位を考慮することによ
り、上述した第2の問題点も同時に解決できるバッファ
管理方式を提供することである。
【0009】
【課題を解決するための手段】請求項1のバッファ管理
方式は、プログラム部からのバッファ獲得および解放要
求に応答してシステム資源部に対してバッファの獲得お
よび解放を指示し実行させるシステム資源管理部を有す
るバッファ管理方式において、初期化時に規定数のバッ
ファを獲得してバッファリンク部に保持するバッファ確
保手段と、バッファ獲得要求時に前記システム資源管理
部によるバッファ獲得が失敗したときそのバッファ獲得
要求の重み付けが高い場合は前記バッファリンク部から
バッファを切り出して使用させるバッファ獲得手段と、
バッファ解放要求時に解放されたバッファを前記規定数
に達するまで前記バッファリンク部に接続するバッファ
解放手段とを備えて構成されている。
方式は、プログラム部からのバッファ獲得および解放要
求に応答してシステム資源部に対してバッファの獲得お
よび解放を指示し実行させるシステム資源管理部を有す
るバッファ管理方式において、初期化時に規定数のバッ
ファを獲得してバッファリンク部に保持するバッファ確
保手段と、バッファ獲得要求時に前記システム資源管理
部によるバッファ獲得が失敗したときそのバッファ獲得
要求の重み付けが高い場合は前記バッファリンク部から
バッファを切り出して使用させるバッファ獲得手段と、
バッファ解放要求時に解放されたバッファを前記規定数
に達するまで前記バッファリンク部に接続するバッファ
解放手段とを備えて構成されている。
【0010】請求項2のバッファ管理方式は、プログラ
ム部からのバッファ獲得および解放要求に応答してシス
テム資源部に対してバッファの獲得および解放を指示し
実行させるシステム資源管理部を有するバッファ管理方
式において、初期化時に規定数のバッファを獲得してバ
ッファリンク部に保持するバッファ確保手段と、バッフ
ァ獲得要求時に前記システム資源管理部によるバッファ
獲得が失敗したときそのバッファ獲得要求の重み付けが
高い場合には前記バッファリンク部の先頭からバッファ
を切り出して使用させるバッファ獲得手段と、バッファ
解放要求の重み付けが高い場合は解放されたすべてのバ
ッファを前記バッファリンク部の末尾に接続し重み付け
が低い場合には前記バッファリンク部の先頭に接続する
バッファ解放手段と、処理終了要求に応答して前記バッ
ファリンク部に前記規定数を超えるバッファが接続され
ていた場合には超過分を前記バッファリンクの先頭から
前記システム資源管理部に対して解放するバッファ処理
終了手段とを備えて構成されている。
ム部からのバッファ獲得および解放要求に応答してシス
テム資源部に対してバッファの獲得および解放を指示し
実行させるシステム資源管理部を有するバッファ管理方
式において、初期化時に規定数のバッファを獲得してバ
ッファリンク部に保持するバッファ確保手段と、バッフ
ァ獲得要求時に前記システム資源管理部によるバッファ
獲得が失敗したときそのバッファ獲得要求の重み付けが
高い場合には前記バッファリンク部の先頭からバッファ
を切り出して使用させるバッファ獲得手段と、バッファ
解放要求の重み付けが高い場合は解放されたすべてのバ
ッファを前記バッファリンク部の末尾に接続し重み付け
が低い場合には前記バッファリンク部の先頭に接続する
バッファ解放手段と、処理終了要求に応答して前記バッ
ファリンク部に前記規定数を超えるバッファが接続され
ていた場合には超過分を前記バッファリンクの先頭から
前記システム資源管理部に対して解放するバッファ処理
終了手段とを備えて構成されている。
【0011】請求項3のバッファ管理方式は、請求項1
及び請求項2記載のバッファ管理方式において、プログ
ラム部からのバッファ獲得および解放要求に対しプログ
ラム名およびプログラム内のステップ番号等に基づきあ
らかじめ作成されている対照表を照合して前記重み付け
を設定する重み付け手段を備えたことを特徴としてい
る。
及び請求項2記載のバッファ管理方式において、プログ
ラム部からのバッファ獲得および解放要求に対しプログ
ラム名およびプログラム内のステップ番号等に基づきあ
らかじめ作成されている対照表を照合して前記重み付け
を設定する重み付け手段を備えたことを特徴としてい
る。
【0012】
【実施例】次に、本発明の実施例について図面を参照し
て説明する。
て説明する。
【0013】図1は本発明の一実施例のシステム構成を
示すブロック図である。
示すブロック図である。
【0014】図1に示すバッファ管理方式は、プログラ
ム部4からのバッファ獲得および解放要求に応答してシ
ステム資源部1に対してバッファの獲得および解放を指
示し実行させるシステム資源管理部2と、プログラム部
4と、システム資源管理部2とプログラム部4の間に設
けられているバッファ管理部3とで構成されている。こ
のバッファ管理部3には、初期化時にシステム資源獲得
手段6を介してシステム資源部1から規定数のバッファ
をバッファリンク部15に確保するバッファ確保手段5
と、バッファ獲得要求手段7からの獲得要求を仲介し、
システム資源獲得手段6によるバッファ獲得が失敗した
とき、その要求に付与されている重み付けが高い場合に
はバッファリンク部15の先頭からバッファを切り出し
て使用許諾を獲得結果通知手段9に通知するバッファ獲
得手段8と、バッファ解放要求手段13から解放要求を
受けると解放されたバッファをいったんバッファリンク
部15に接続するバッファ解放手段11と、処理終了手
段14からプログラムの終了要求を受けると、バッファ
リンク部15に規定数を超えるバッファが接続されてい
た場合には、システム資源解放手段10に指示して超過
分をリンクの先頭からシステム資源部1に対して解放す
るバッファ処理終了手段12とが含まれている。
ム部4からのバッファ獲得および解放要求に応答してシ
ステム資源部1に対してバッファの獲得および解放を指
示し実行させるシステム資源管理部2と、プログラム部
4と、システム資源管理部2とプログラム部4の間に設
けられているバッファ管理部3とで構成されている。こ
のバッファ管理部3には、初期化時にシステム資源獲得
手段6を介してシステム資源部1から規定数のバッファ
をバッファリンク部15に確保するバッファ確保手段5
と、バッファ獲得要求手段7からの獲得要求を仲介し、
システム資源獲得手段6によるバッファ獲得が失敗した
とき、その要求に付与されている重み付けが高い場合に
はバッファリンク部15の先頭からバッファを切り出し
て使用許諾を獲得結果通知手段9に通知するバッファ獲
得手段8と、バッファ解放要求手段13から解放要求を
受けると解放されたバッファをいったんバッファリンク
部15に接続するバッファ解放手段11と、処理終了手
段14からプログラムの終了要求を受けると、バッファ
リンク部15に規定数を超えるバッファが接続されてい
た場合には、システム資源解放手段10に指示して超過
分をリンクの先頭からシステム資源部1に対して解放す
るバッファ処理終了手段12とが含まれている。
【0015】まず、図2のフローチャートを参照してバ
ッファ獲得時の動作について詳細に説明する。
ッファ獲得時の動作について詳細に説明する。
【0016】システムが起動されると、初期化動作とし
てバッファ管理部3のバッファ確保手段5が動作し、特
別枠としてバッファリンク部15に確保しておくための
規定数のバッファの獲得要求をシステム資源管理部2に
発行する(ステップS1)。これを受け、システム資源
管理部2のシステム資源獲得手段6はシステム資源部1
に対するバッファ獲得を指示する(ステップS2)。こ
のバッファ獲得指示に対してシステム資源部1からのバ
ッファ獲得が成功したか否かを判定し(ステップS
3)、成功した場合は獲得した規定数(以下閾値と称
す)のバッファをバッファリンク部15に確保する(ス
テップS4)。この際、図4に示すように、獲得したバ
ッファはバッファリンク18のようにリンクして接続さ
れ、獲得個数が閾値格納部16及び保持個数格納部17
にそれぞれ設定される。成功しなかった場合にはバッフ
ァ確保手段5は異常終了となる(ステップS5)。
てバッファ管理部3のバッファ確保手段5が動作し、特
別枠としてバッファリンク部15に確保しておくための
規定数のバッファの獲得要求をシステム資源管理部2に
発行する(ステップS1)。これを受け、システム資源
管理部2のシステム資源獲得手段6はシステム資源部1
に対するバッファ獲得を指示する(ステップS2)。こ
のバッファ獲得指示に対してシステム資源部1からのバ
ッファ獲得が成功したか否かを判定し(ステップS
3)、成功した場合は獲得した規定数(以下閾値と称
す)のバッファをバッファリンク部15に確保する(ス
テップS4)。この際、図4に示すように、獲得したバ
ッファはバッファリンク18のようにリンクして接続さ
れ、獲得個数が閾値格納部16及び保持個数格納部17
にそれぞれ設定される。成功しなかった場合にはバッフ
ァ確保手段5は異常終了となる(ステップS5)。
【0017】システムの起動が終了し、プログラムの実
行中にプログラム部4でバッファ獲得要求が発生した場
合について説明する。
行中にプログラム部4でバッファ獲得要求が発生した場
合について説明する。
【0018】プログラム部4の内部のバッファ獲得要求
手段7でバッファ獲得要求が発生すると(ステップS
6)、その要求はバッファ管理部3のバッファ獲得手段
8を介してシステム資源管理部2のシステム資源獲得手
段6に与えられる。ここで、プログラム部4から発行さ
れるバッファ獲得要求には、このバッファ獲得要求の重
要度を示す重み付け情報が付与されているものとする
(ステップS7)。重み付け情報は、重要度が高いか低
いかを示す1ビットの情報でよく、プログラム中にあら
かじめ設定しておくものとする。前述したように、プロ
グラムが一つか二つのバッファを獲得して処理を実行す
れば、そのプログラム内で持っているそれ以上のバッフ
ァを解放できる場合には重み付け情報を高く設定し、そ
れ以外の場合には低く設定しておく。
手段7でバッファ獲得要求が発生すると(ステップS
6)、その要求はバッファ管理部3のバッファ獲得手段
8を介してシステム資源管理部2のシステム資源獲得手
段6に与えられる。ここで、プログラム部4から発行さ
れるバッファ獲得要求には、このバッファ獲得要求の重
要度を示す重み付け情報が付与されているものとする
(ステップS7)。重み付け情報は、重要度が高いか低
いかを示す1ビットの情報でよく、プログラム中にあら
かじめ設定しておくものとする。前述したように、プロ
グラムが一つか二つのバッファを獲得して処理を実行す
れば、そのプログラム内で持っているそれ以上のバッフ
ァを解放できる場合には重み付け情報を高く設定し、そ
れ以外の場合には低く設定しておく。
【0019】要求を受けたシステム資源獲得手段6は、
重み付け情報にかかわらず通常の手順に従ってシステム
資源部1に対してバッファ獲得を指示し(ステップS
8)、バッファ獲得が成功したか否かを判定し(ステッ
プS9)、成功した場合は獲得したバッファのアドレス
をプログラム部4の獲得結果通知手段9に通知して終了
となる(ステップS17)。一方、成功しなかった場合
には、バッファ獲得手段8がバッファ獲得要求に付与さ
れている重み付け情報を参照して重み付けが高いか低い
かを判定する(ステップS10)。なお、バッファ獲得
要求に重み付け情報が付与されていない場合は、重み付
けが低いものと判定する。
重み付け情報にかかわらず通常の手順に従ってシステム
資源部1に対してバッファ獲得を指示し(ステップS
8)、バッファ獲得が成功したか否かを判定し(ステッ
プS9)、成功した場合は獲得したバッファのアドレス
をプログラム部4の獲得結果通知手段9に通知して終了
となる(ステップS17)。一方、成功しなかった場合
には、バッファ獲得手段8がバッファ獲得要求に付与さ
れている重み付け情報を参照して重み付けが高いか低い
かを判定する(ステップS10)。なお、バッファ獲得
要求に重み付け情報が付与されていない場合は、重み付
けが低いものと判定する。
【0020】重み付けが高いバッファ獲得要求の場合、
ステップS11でバッファリンク部15の保持個数格納
部17に格納されている保持個数とバッファ獲得要求の
要求個数とを比較し、(保持個数≧要求個数)を満たさ
ない場合には獲得失敗を獲得結果通知手段9に通知する
(ステップS18)。一方、(保持個数≧要求個数)を
満たした場合にはステップS12に進んで(保持個数−
要求個数)を算出し、算出した個数を新たな保持個数と
して保持個数格納部17の値を更新した後(ステップS
13)、要求個数分のバッファをバッファリンク18の
先頭から獲得して(ステップS14)、獲得結果通知手
段9に連絡して獲得終了となる(ステップS17)。
ステップS11でバッファリンク部15の保持個数格納
部17に格納されている保持個数とバッファ獲得要求の
要求個数とを比較し、(保持個数≧要求個数)を満たさ
ない場合には獲得失敗を獲得結果通知手段9に通知する
(ステップS18)。一方、(保持個数≧要求個数)を
満たした場合にはステップS12に進んで(保持個数−
要求個数)を算出し、算出した個数を新たな保持個数と
して保持個数格納部17の値を更新した後(ステップS
13)、要求個数分のバッファをバッファリンク18の
先頭から獲得して(ステップS14)、獲得結果通知手
段9に連絡して獲得終了となる(ステップS17)。
【0021】重み付けが低いバッファ獲得要求の場合に
は、バッファリンク部15に現在確保されているバッフ
ァ数が閾値を超えており、超過分で対応可能な場合にの
み対応する。すなわち、ステップS15で(保持個数−
閾値)を算出して、算出した値を要求対応個数とし、ス
テップS16で要求対応個数と要求個数とを比較し、
(要求対応個数≧要求個数)を満たさない場合には、獲
得失敗となる(ステップS18)。これに対し、(要求
対応個数≧要求個数)を満たした場合は、ステップS1
2に進んで(保持個数−要求個数)を算出し、ステップ
S13〜S14で保持個数格納部17を更新してバッフ
ァを獲得し、獲得結果通知手段9に連絡して獲得終了と
なる(ステップS17)。
は、バッファリンク部15に現在確保されているバッフ
ァ数が閾値を超えており、超過分で対応可能な場合にの
み対応する。すなわち、ステップS15で(保持個数−
閾値)を算出して、算出した値を要求対応個数とし、ス
テップS16で要求対応個数と要求個数とを比較し、
(要求対応個数≧要求個数)を満たさない場合には、獲
得失敗となる(ステップS18)。これに対し、(要求
対応個数≧要求個数)を満たした場合は、ステップS1
2に進んで(保持個数−要求個数)を算出し、ステップ
S13〜S14で保持個数格納部17を更新してバッフ
ァを獲得し、獲得結果通知手段9に連絡して獲得終了と
なる(ステップS17)。
【0022】次に、図3のフローチャートを参照してバ
ッファ解放時の動作について詳細に説明する。
ッファ解放時の動作について詳細に説明する。
【0023】プログラム実行中にプログラム部4内のバ
ッファ解放要求手段13でバッファ解放要求が発生する
と(ステップS20)、その要求はバッファ管理部3の
バッファ解放手段11に与えられる。この際プログラム
部4から発行されるバッファ解放要求には、このバッフ
ァ解放要求の重要度を示す重み付け情報が付与されてい
るものとする(ステップS21)。重み付け情報は、重
要度が高いか低いかを示す1ビットの情報で、プログラ
ム中にあらかじめ設定しておくものとし、解放するバッ
ファに障害原因解析に有効な情報が格納されている場合
には重み付け情報を高く設定し、それ以外の場合には低
く設定しておく。従って、プログラムの終了時に使用し
ていたすべてのバッファを解放するような場合には、重
み付け情報は低く設定することになる。
ッファ解放要求手段13でバッファ解放要求が発生する
と(ステップS20)、その要求はバッファ管理部3の
バッファ解放手段11に与えられる。この際プログラム
部4から発行されるバッファ解放要求には、このバッフ
ァ解放要求の重要度を示す重み付け情報が付与されてい
るものとする(ステップS21)。重み付け情報は、重
要度が高いか低いかを示す1ビットの情報で、プログラ
ム中にあらかじめ設定しておくものとし、解放するバッ
ファに障害原因解析に有効な情報が格納されている場合
には重み付け情報を高く設定し、それ以外の場合には低
く設定しておく。従って、プログラムの終了時に使用し
ていたすべてのバッファを解放するような場合には、重
み付け情報は低く設定することになる。
【0024】バッファ解放手段11は、与えられたバッ
ファ解放要求の重み付け情報を判定し(ステップS2
2)、重み付けの高いバッファ解放要求の場合、解放す
るバッファをバッファリンク18の最後尾に接続する
(ステップS23)。一方、重み付けの低いバッファ解
放要求の場合は、解放するバッファをバッファリンク1
8の先頭に接続し(ステップS24)、従来の保持個数
に解放個数を加えた値を新たな保持個数として保持個数
格納部17の値を更新する(ステップS25)。
ファ解放要求の重み付け情報を判定し(ステップS2
2)、重み付けの高いバッファ解放要求の場合、解放す
るバッファをバッファリンク18の最後尾に接続する
(ステップS23)。一方、重み付けの低いバッファ解
放要求の場合は、解放するバッファをバッファリンク1
8の先頭に接続し(ステップS24)、従来の保持個数
に解放個数を加えた値を新たな保持個数として保持個数
格納部17の値を更新する(ステップS25)。
【0025】プログラムの終了に際してプログラム部4
の処理終了手段14から処理終了要求が出されると(ス
テップS26)、バッファ管理部3のバッファ処理終了
手段12は、バッファリンク部15の保持個数格納部1
7と閾値格納部16とを比較し(ステップS27)、そ
のときの保持個数が閾値以下の場合はそのままプログラ
ム終了となるが(ステップS33)、保持個数が閾値よ
り多い場合は超過分をバッファリンク部15からシステ
ム資源部1に解放して終了となる。
の処理終了手段14から処理終了要求が出されると(ス
テップS26)、バッファ管理部3のバッファ処理終了
手段12は、バッファリンク部15の保持個数格納部1
7と閾値格納部16とを比較し(ステップS27)、そ
のときの保持個数が閾値以下の場合はそのままプログラ
ム終了となるが(ステップS33)、保持個数が閾値よ
り多い場合は超過分をバッファリンク部15からシステ
ム資源部1に解放して終了となる。
【0026】すなわち、(保持個数≧閾値)を満たす場
合には、ステップS28で(保持個数−閾値)を算出し
て解放対応個数とし、解放対応個数のバッファをバッフ
ァリンク18の先頭から獲得し(ステップS29)、シ
ステム資源管理部2に対して解放対応個数のバッファ解
放を要求する(ステップS30)。このバッファ解放要
求を受けて、システム資源解放手段10がシステム資源
部1に対してバッファ解放を指示することになる(ステ
ップS31)。この後、バッファ処理終了手段12は、
バッファリンク部15の保持個数格納部17を閾値に更
新し(ステップS33)、処理終了となる(ステップS
33)。
合には、ステップS28で(保持個数−閾値)を算出し
て解放対応個数とし、解放対応個数のバッファをバッフ
ァリンク18の先頭から獲得し(ステップS29)、シ
ステム資源管理部2に対して解放対応個数のバッファ解
放を要求する(ステップS30)。このバッファ解放要
求を受けて、システム資源解放手段10がシステム資源
部1に対してバッファ解放を指示することになる(ステ
ップS31)。この後、バッファ処理終了手段12は、
バッファリンク部15の保持個数格納部17を閾値に更
新し(ステップS33)、処理終了となる(ステップS
33)。
【0027】上述したように、本実施例では、あらかじ
め特別枠のバッファをバッファリンク部15に確保して
おき、少数のバッファを獲得すれば遅からずそれ以上の
バッファを解放できるような重み付けの高いバッファ獲
得要求に対しては、バッファリンク部15から優先的に
バッファを充当して使用させるので、バッファ不足のた
め取り合いとなりデッドロック状態に陥るのを防止する
ことができる。又、プログラムから解放されたバッファ
は、障害解析に必要な情報を格納した重み付けの高いバ
ッファはリンク末尾に、その他のバッファはリンク先頭
に接続され、プログラムの終了処理時に閾値を超えるバ
ッファはリンク先頭からシステム資源部1に戻される。
従って、バッファリンク部15のバッファ個数は閾値を
大きく超えることはなく、重要な情報を格納したバッフ
ァは再使用により情報が消滅する確率は非常に少なくな
る。
め特別枠のバッファをバッファリンク部15に確保して
おき、少数のバッファを獲得すれば遅からずそれ以上の
バッファを解放できるような重み付けの高いバッファ獲
得要求に対しては、バッファリンク部15から優先的に
バッファを充当して使用させるので、バッファ不足のた
め取り合いとなりデッドロック状態に陥るのを防止する
ことができる。又、プログラムから解放されたバッファ
は、障害解析に必要な情報を格納した重み付けの高いバ
ッファはリンク末尾に、その他のバッファはリンク先頭
に接続され、プログラムの終了処理時に閾値を超えるバ
ッファはリンク先頭からシステム資源部1に戻される。
従って、バッファリンク部15のバッファ個数は閾値を
大きく超えることはなく、重要な情報を格納したバッフ
ァは再使用により情報が消滅する確率は非常に少なくな
る。
【0028】上述の実施例は、バッファ獲得要求時にバ
ッファ不足のためデッドロック状態に陥るのを防止する
と共に、解放されたバッファの再使用により障害原因解
析に有用な履歴情報が消滅するのを防ぐという二つの目
的を達成するため、バッファ解放要求に対応する手段と
して、重み付けの高いバッファ解放要求の場合は解放さ
れたバッファをバッファリンク部の末尾に、重み付けが
低い場合にはバッファリンク部の先頭に接続するバッフ
ァ解放手段と、プログラムからの処理終了要求を受けバ
ッファリンク部から閾値を超えるバッファをシステム資
源部に戻すバッファ処理終了手段とを備えている。これ
に対し、バッファ獲得要求時にバッファ不足のため発生
するデッドロック状態の防止のみを目的とする場合は、
バッファ解放要求を受けたとき解放されたバッファを閾
値に達するまでバッファリンク部に接続するバッファ解
放手段のみを設ければよく、バッファ処理終了手段は不
要となる。
ッファ不足のためデッドロック状態に陥るのを防止する
と共に、解放されたバッファの再使用により障害原因解
析に有用な履歴情報が消滅するのを防ぐという二つの目
的を達成するため、バッファ解放要求に対応する手段と
して、重み付けの高いバッファ解放要求の場合は解放さ
れたバッファをバッファリンク部の末尾に、重み付けが
低い場合にはバッファリンク部の先頭に接続するバッフ
ァ解放手段と、プログラムからの処理終了要求を受けバ
ッファリンク部から閾値を超えるバッファをシステム資
源部に戻すバッファ処理終了手段とを備えている。これ
に対し、バッファ獲得要求時にバッファ不足のため発生
するデッドロック状態の防止のみを目的とする場合は、
バッファ解放要求を受けたとき解放されたバッファを閾
値に達するまでバッファリンク部に接続するバッファ解
放手段のみを設ければよく、バッファ処理終了手段は不
要となる。
【0029】又、上述の実施例では、重み付け情報はプ
ログラム部内であらかじめ付与されているものとして説
明したが、プログラムを変更することなく重み付け情報
を付与するためには、バッファ管理部内に、プログラム
部からバッファ獲得および解放要求を受けたとき、プロ
グラム名およびプログラム内のステップ番号等を基にし
て、あらかじめ作成されている対照表を照合して重み付
けを設定する重み付け手段を設ければよい。
ログラム部内であらかじめ付与されているものとして説
明したが、プログラムを変更することなく重み付け情報
を付与するためには、バッファ管理部内に、プログラム
部からバッファ獲得および解放要求を受けたとき、プロ
グラム名およびプログラム内のステップ番号等を基にし
て、あらかじめ作成されている対照表を照合して重み付
けを設定する重み付け手段を設ければよい。
【0030】
【発明の効果】以上説明したように、本発明のバッファ
管理方式は、初期化時に規定数のバッファを特別枠とし
て確保し、バッファ獲得要求に付与された重み付け情報
を判断し、重み付けの高いバッファ獲得要求が通常の方
法によるバッファ獲得に失敗した場合には、確保してあ
る特別枠のバッファを充当するため、バッファ不足によ
るデッドロック状態の発生を防止することができ、シス
テムの信頼性を向上させる効果がある。
管理方式は、初期化時に規定数のバッファを特別枠とし
て確保し、バッファ獲得要求に付与された重み付け情報
を判断し、重み付けの高いバッファ獲得要求が通常の方
法によるバッファ獲得に失敗した場合には、確保してあ
る特別枠のバッファを充当するため、バッファ不足によ
るデッドロック状態の発生を防止することができ、シス
テムの信頼性を向上させる効果がある。
【0031】又、バッファ解放要求の重み付けが高い場
合には、解放されたバッファを特別枠のリンク末尾にリ
ンクするため、プログラムの動作履歴を格納したバッフ
ァの再使用を抑止でき、障害発生時の原因解析を容易に
する効果がある。
合には、解放されたバッファを特別枠のリンク末尾にリ
ンクするため、プログラムの動作履歴を格納したバッフ
ァの再使用を抑止でき、障害発生時の原因解析を容易に
する効果がある。
【図1】本発明の一実施例のシステム構成を示すブロッ
ク図である。
ク図である。
【図2】本実施例のバッファ獲得動作を示すフローチャ
ートである。
ートである。
【図3】本実施例のバッファ解放動作を示すフローチャ
ートである。
ートである。
【図4】本実施例のバッファリンク部の内部構成を示す
説明図である。
説明図である。
【図5】従来のバッファ管理方式の一例を示すシステム
構成図である。
構成図である。
1 システム資源部 2 システム資源管理部 3 バッファ管理部 4,4a プログラム部 5 バッファ確保手段 6 システム資源獲得手段 7,7a バッファ獲得要求手段 8 バッファ獲得手段 9 獲得結果通知手段 10 システム資源解放手段 11 バッファ解放手段 12 バッファ処理終了手段 13,13a バッファ解放要求手段 14,14a 処理終了手段 15 バッファリンク部 16 閾値格納部 17 保持個数格納部 18 バッファリンク
Claims (3)
- 【請求項1】 プログラム部からのバッファ獲得および
解放要求に応答してシステム資源部に対してバッファの
獲得および解放を指示し実行させるシステム資源管理部
を有するバッファ管理方式において、初期化時に規定数
のバッファを獲得してバッファリンク部に保持するバッ
ファ確保手段と、バッファ獲得要求時に前記システム資
源管理部によるバッファ獲得が失敗したときそのバッフ
ァ獲得要求の重み付けが高い場合は前記バッファリンク
部からバッファを切り出して使用させるバッファ獲得手
段と、バッファ解放要求時に解放されたバッファを前記
規定数に達するまで前記バッファリンク部に接続するバ
ッファ解放手段とを備えたことを特徴とするバッファ管
理方式。 - 【請求項2】 プログラム部からのバッファ獲得および
解放要求に応答してシステム資源部に対してバッファの
獲得および解放を指示し実行させるシステム資源管理部
を有するバッファ管理方式において、初期化時に規定数
のバッファを獲得してバッファリンク部に保持するバッ
ファ確保手段と、バッファ獲得要求時に前記システム資
源管理部によるバッファ獲得が失敗したときそのバッフ
ァ獲得要求の重み付けが高い場合には前記バッファリン
ク部の先頭からバッファを切り出して使用させるバッフ
ァ獲得手段と、バッファ解放要求の重み付けが高い場合
は解放されたすべてのバッファを前記バッファリンク部
の末尾に接続し重み付けが低い場合には前記バッファリ
ンク部の先頭に接続するバッファ解放手段と、処理終了
要求に応答して前記バッファリンク部に前記規定数を超
えるバッファが接続されていた場合には超過分を前記バ
ッファリンクの先頭から前記システム資源管理部に対し
て解放するバッファ処理終了手段とを備えたことを特徴
とするバッファ管理方式。 - 【請求項3】 プログラム部からのバッファ獲得および
解放要求に対しプログラム名およびプログラム内のステ
ップ番号等に基づきあらかじめ作成されている対照表を
照合して前記重み付けを設定する重み付け手段を備えた
ことを特徴とする請求項1又は請求項2記載のバッファ
管理方式。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP9035593A JPH06301593A (ja) | 1993-04-19 | 1993-04-19 | バッファ管理方式 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP9035593A JPH06301593A (ja) | 1993-04-19 | 1993-04-19 | バッファ管理方式 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH06301593A true JPH06301593A (ja) | 1994-10-28 |
Family
ID=13996233
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP9035593A Withdrawn JPH06301593A (ja) | 1993-04-19 | 1993-04-19 | バッファ管理方式 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH06301593A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH09146830A (ja) * | 1995-11-27 | 1997-06-06 | Nec Corp | メモリ管理方式 |
-
1993
- 1993-04-19 JP JP9035593A patent/JPH06301593A/ja not_active Withdrawn
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH09146830A (ja) * | 1995-11-27 | 1997-06-06 | Nec Corp | メモリ管理方式 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US8161138B2 (en) | Replication system having the capability to accept commands at a standby-system site before completion of updating thereof | |
| EP0221274B1 (en) | Method for ensuring switchover in a restartable data base system | |
| US5530802A (en) | Input sequence reordering method for software failure recovery | |
| US9319281B2 (en) | Resource management method, resource management device, and program product | |
| JPS59195749A (ja) | エラ−回復のための非同期チエツクポインテイングシステム | |
| JP3113841B2 (ja) | 並列トランザクション処理システム | |
| US7454752B2 (en) | Method for generating policy rules and method for controlling jobs using the policy rules | |
| JPH10214199A (ja) | プロセスリスタート方法およびプロセスリスタートを実現するためのシステム | |
| US7536582B1 (en) | Fault-tolerant match-and-set locking mechanism for multiprocessor systems | |
| CN111104254A (zh) | 存储系统数据刷写方法、装置、设备及可读存储介质 | |
| US8132174B2 (en) | Concurrency management in cluster computing of business applications | |
| CN116483628A (zh) | 一种基于加持锁的分布式备份方法及系统 | |
| US20100274758A1 (en) | Data processing method, computer, and data processing program | |
| CN117850998A (zh) | 一种基于Quartz的分布式任务调度框架及其应用 | |
| JPH06301593A (ja) | バッファ管理方式 | |
| US6990608B2 (en) | Method for handling node failures and reloads in a fault tolerant clustered database supporting transaction registration and fault-in logic | |
| US7748003B2 (en) | Hard real-time response | |
| CN111241594B (zh) | 交易信息的加签方法、装置、计算机设备和存储介质 | |
| JP5015410B2 (ja) | ウェブファームへのデータ配布における二相コミットのための方法および装置 | |
| CN119025231A (zh) | 一种延时任务执行方法及装置 | |
| JP4517923B2 (ja) | オブジェクト救済システム及び方法 | |
| CN118860429A (zh) | 机器人后台系统的自动部署方法、系统、机器人及介质 | |
| US8307371B2 (en) | Method for efficient utilization of processors in a virtual shared environment | |
| CN110597563A (zh) | 一种基于容器的保存和恢复的方法、系统及介质 | |
| JPH06231036A (ja) | メモリ不足時におけるリカバリ援助方法 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20000704 |