JP2833814B2 - 入出力バッファ割当て方式 - Google Patents

入出力バッファ割当て方式

Info

Publication number
JP2833814B2
JP2833814B2 JP2021339A JP2133990A JP2833814B2 JP 2833814 B2 JP2833814 B2 JP 2833814B2 JP 2021339 A JP2021339 A JP 2021339A JP 2133990 A JP2133990 A JP 2133990A JP 2833814 B2 JP2833814 B2 JP 2833814B2
Authority
JP
Japan
Prior art keywords
input
output buffer
allocation
area
size
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 - Fee Related
Application number
JP2021339A
Other languages
English (en)
Other versions
JPH03225457A (ja
Inventor
満 東海林
俊幸 木村
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.)
TOHOKU NIPPON DENKI SOFUTOEA KK
NEC Corp
Original Assignee
TOHOKU NIPPON DENKI SOFUTOEA KK
Nippon Electric Co Ltd
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 TOHOKU NIPPON DENKI SOFUTOEA KK, Nippon Electric Co Ltd filed Critical TOHOKU NIPPON DENKI SOFUTOEA KK
Priority to JP2021339A priority Critical patent/JP2833814B2/ja
Publication of JPH03225457A publication Critical patent/JPH03225457A/ja
Application granted granted Critical
Publication of JP2833814B2 publication Critical patent/JP2833814B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Memory System (AREA)
  • Information Transfer Systems (AREA)

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は入出力バッファ割当て方式に関し、特にデー
タ処理装置の入出力に際して主記憶に入出力バッファを
割当てる入出力バッファ割当て方式に関する。
〔従来の技術〕
従来の入出力バッファ割当て方式では、データ処理装
置の入出力に際して、オペレーティングシステムが、ア
プリケーションプログラムから入出力バッファの割当て
を要求されたとき、主記憶上のある領域に固定的に確保
し、共通に使用する共通入出力バッファ領域の中に、フ
ァイル装置を含む入出力装置の入出力ブロック長の大き
さで、入出力バッファを割当てている。
そこで、例えば、アプリケーションプログラムが、あ
るレコードを入力する指令を行うと、オペレーティング
システムは、割当てられている入出力バッファの中に、
要求されたレコードがあるかどうかを判断し、あればそ
のレコードの内容をアプリケーションプログラムに転送
し、なければ入力装置やファイル装置からその要求され
たレコードを含む一つの入出力ブロックを、割当てられ
た入出力バッファに転送してから、その入出力バッファ
の中にある要求されたレコードの内容をアプリケーショ
ンプログラムに転送して入力している。
〔発明が解決しようとする課題〕
一般に、アプリケーションプログラムと入出力バッフ
ァ内のレコードとの間の入出力である論理I/Oは、入出
力バッファと入出力装置との間の入出力である物理I/O
に比較して、103〜104倍の高速度を有している。
しかし、従来は、主記憶が高価だったので、主記憶を
有効に活用しなければならず、主記憶の一部に共通入出
力バッファ領域を固定的に割当て、入出力バッファの大
きさを入出力ブロック長に制限していた。
このため、上述した従来の入出力バッファ割当て方式
は、入出力ブロック長単位に物理I/Oを行っているの
で、1回の物理I/Oにより入出力できるレコード数が少
なく、入出力速度が遅いという欠点がある。
ところで、最近は、主記憶の価格も安くなっているの
で、大容量の主記憶が広く使用され、主記憶上にも空き
領域が存在するようになって来ている。
それにもかかわらず、従来の入出力バッファ割当て方
式は、主記憶の一部に共通入出力バッファ領域を定め、
共通入出力バッファ領域だけを入出力バッファに利用す
るので、主記憶上の空き領域を活用することができない
という問題点がある。
本発明の目的は、主記憶上に空き領域があれば、その
空き領域に多くの入出力ブロックを収容できる大きな入
出力バッファを割当てることにより、物理I/Oの回数を
減少させ、入出力速度を向上させることができる入出力
バッファ割当て方式を提供することにある。
〔課題を解決するための手段〕
本発明の入出力バッファ割当て方式は、 (A)入出力の対象となるファイルのそれぞれに対し
て、ファイル名と、入出力に際して主記憶上にある空き
領域を使用することを要求するための拡張入出力バッフ
ァサイズ要求値と、主記憶からオペレーティングシステ
ムで確保して共通に使用する共通入出力バッファ領域上
にある空き領域を使用することを要求するための入出力
ブロック長要求値とをあらかじめ記憶するファイル情報
記憶手段、 (B)主記憶上にある空き領域の合計サイズと、その中
の各空き領域の個別サイズと、各空き領域の個別アドレ
スとを保有し、それらの変化をリアルタイムに管理する
主記憶空き領域管理手段、 (C)共通入出力バッファ領域上にある空き領域の合計
サイズと、その中の各空き領域の個別サイズと、各空き
領域の個別アドレスとを保有し、それらの変化をリアル
タイムに管理する共通入出力バッファ空き領域管理手
段、 (D)アプリケーションプログラムなど幾つかの要求元
プログラムからの入出力バッファ割当て要求を受けて、
その入出力バッファを必要とするファイル名を抽出する
入出力バッファ割当て要求入力手段、 (E)前記入出力バッファ割当て要求入力手段で抽出さ
れたファイル名により、第1に前記ファイル情報記憶手
段から読出した拡張入出力バッファサイズ要求値に対し
て、前記主記憶空き領域管理手段の情報内容で、主記憶
上にある空き領域の合計サイズを調べて割当てができる
かどうかを判断し、割当てができるときには、まず、主
記憶の各空き領域の個別サイズを調べてその一つの割当
てができるかどうかを判断し、何れも割当てできないと
きには、次に、主記憶の詰直しを実施して割当てを可能
にし、主記憶の空き領域の合計サイズで割当てができな
いときには、第2に前記ファイル情報記憶手段から読出
した入出力ブロック長要求値に対して、前記共通入出力
バッファ空き領域管理手段の情報内容で、共通入出力バ
ッファ領域上にある空き領域の合計サイズを調べて割当
てができるかどうかを判断し、割当てができるときに
は、まず、共通入出力バッファ領域の各空き領域の個別
サイズを調べてその一つの割当てができるかどうかを判
断し、何れも割当てができないときには、次に、共通入
出力バッファ領域の詰直しを実施して割当てを可能に
し、共通入出力バッファ領域の空き領域の合計サイズで
割当てができないときには、割当てができない状態であ
ると判断する記憶領域利用状況判断手段、 (F)前記記憶領域利用状況判断手段からの判断情報に
より、主記憶の空き領域に拡張入出力バッファの割当て
ができるときには、拡張入出力バッファを割当て、共通
入出力バッファ領域に通常入出力バッファの割当てがで
きるときには、通常入出力バッファを割当てて、何れの
場合にもそのアドレスおよびサイズを送出し、割当てが
できないときには、割当てができないことを示す情報を
送出する入出力バッファ割当て手段、 (G)前記入出力バッファ割当て手段から送出された拡
張入出力バッファのアドレスとサイズ、通常入出力バッ
ファのアドレスとサイズ、割当てができないことを示す
情報の何れかを、入出力バッファ割当て要求を行った要
求元プログラムに引渡す入出力バッファ割当て結果出力
手段、 を備えて構成されている。
〔実施例〕
次に本発明の実施例について図面を参照して説明す
る。
第1図は本発明の入出力バッファ割当て方式の一実施
例を示すブロック図である。
第1図に示すファイル情報記憶手段1は、補助記憶装
置にあり、入出力の対象となるすべてのファイルのそれ
ぞれに対して、ファイル名と、入出力に際して主記憶上
にある空き領域を使用することを要求するための拡張入
出力バッファサイズ要求値と、主記憶からオペレーティ
ングシステムが確保して共通に使用する共通入出力バッ
ファ領域上にある空き領域を使用することを要求するた
めの入出力ブロック長要求値とをあらかじめ記憶してい
る。
第2図はファイル情報記憶手段の情報内容を示す情報
構成図である。
ファイルの情報記憶手段1は、第2図に示すように、
ファイル名FN1,FN2,……FNM、拡張入出力バッファサイ
ズ要求値FI1,FI2,……FIM、入出力ブロック長要求値F
C1,FC2,……FCMをあらかじめ記憶している。
なお、ファイル情報記憶手段1の情報内容は、ファイ
ルアロケート時に作成され、ファイルディアロケート時
に削除される。
また、拡張入出力バッファサイズ要求値FIiは、入出
力ブロック長要求値FCiの整数倍の値に、ファイルアロ
ケート時に入力されている。
一方、主記憶空き領域管理手段2は、主記憶上にあ
り、主記憶上にある空き領域の合計サイズと、その中の
各空き領域の個別サイズと、各空き領域の個別アドレス
とを保有して、それらの変化をリアルタイムに管理して
いる。
第3図は主記憶空き領域管理手段の情報内容を示す情
報構成図である。
主記憶空き領域管理手段2は、第3図に示すように、
主記憶上の空き領域の合計サイズIB、主記憶上の各空き
領域の個別サイズIB1,IB2,……IBX、主記憶上の各空き
領域の個別アドレスIA1,IA2,……IAXを記憶している。
なお、IB=IB1+IB2+……IBXであり、IAiはIBiの先
頭位置のアドレスである。
次に、共通入出力バッファ空き領域管理手段3は、主
記憶上にあり、主記憶からオペレーティングシステムが
確保した共通入出力バッファ領域上にある空き領域の合
計サイズと、その中の各空き領域の個別サイズと、各空
き領域の個別アドレスとを保有し、それらの変化をリア
ルタイムに管理している。
第4図は共通入出力バッファ空き領域管理手段の情報
内容を示す情報構成図である。
共通入出力バッファ空き領域管理手段3は、第4図に
示すように、共通入出力バッファ領域上の空き領域の合
計サイズCB、共通入出力バッファ領域上の各空き領域の
個別サイズCB1,CB2,……CBY、共通入出力バッファ領域
上の各空き領域の個別アドレスCA1,CA2,……CAYを記憶
している。
なお、CB=CB1+CB2+……CBYであり、CAiはCBiの先
頭位置のアドレスである。
第5図は本実施例の入出力バッファ割当て方式の入出
力バッファ割当て動作を示す流れ図である。
以下、第5図を参照して本実施例の動作を説明する。
まず、入出力バッファ割当て要求入力手段4は、ステ
ップS1で、アプリケーションプログラムなど幾つかの要
求元プログラムP−1,……P−Nの一つからの入出力バ
ッファ割当て要求を入力して、その入出力バッファを必
要とするファイル名FNiを抽出している。
次に、記憶領域利用状況判断手段5は、ステップS2
で、入出力バッファ割当て要求入力手段4から受けたフ
ァイル名FNiをキーにして、ファイル情報記憶手段1か
ら読出した拡張入出力バッファサイズ要求値FIiを、主
記憶空き領域管理手段2にある主記憶の空き領域の合計
サイズIBに比較して、FIi≦IBかどうかを調べている。
FIi≦IBである(YES)のときには、記憶領域利用状況
判断手段5は、主記憶上の空き領域の割当てができると
判断し、次のステップS3で、拡張入出力バッファサイズ
要求値FIiと、順番に主記憶上の各空き領域の個別サイ
ズIBjとを比較して、FIi≦IBjを満たすIBjがあるかどう
かを調べている。
FIi≦IBjを満たすIBjが一つもない(NO)のときに
は、次のステップS4で、オペレーティングシステムが主
記憶の全使用領域の詰直しを実施し、前に全使用領域、
後に一つの全空き領域となるように変更している。
この結果、全空き領域が一つの主記憶上の空き領域の
個別サイズIBになるので、これを割当てることができる
こととなる。
そこで、この場合と、上記のステップS3で、FIi≦IBj
を満たすIBjがある(YES)のときには、次のステップS5
で、入出力バッファ割当て手段6は、主記憶空き領域管
理手段2の情報内容のIBをIB−FIi、IBjをIBj−FIi、IA
jをIAj+FIiとして、割当てた結果の状態に変更してい
る。
次に、ステップS6で、入出力バッファ割当て手段6
は、要求元プログラムに拡張入出力バッファを割当て
て、そのアドレスおよびサイズを送出するので、次のス
テップS7で、入出力バッファ割当て結果出力手段7は、
入出力バッファ割当て手段6から送出された拡張入出力
バッファのアドレスとサイズを入出力バッファ割当て要
求を行った要求元プログラムP−1,……P−Nの一つに
引渡して通知している。
ステップS2で、FIi≦IBでない(NO)のときには、ス
テップS8で、入出力バッファ割当て要求入力手段4から
受けたファイル名FNiをキーにして、ファイル情報記憶
手段1から読出した入出力ブロック長要求値FCiを、共
通入出力バッファ空き領域管理手段3にある共通入出力
バッファ領域の空き領域の合計サイズCBに比較して、FC
i≦CBかどうかを調べている。
FCi≦CBである(YES)ときには、記憶領域利用状況判
断手段5は、共通入出力バッファ領域の空き領域の割当
てができると判断し、次のステップS9で、入出力ブロッ
ク長要求値FCiと、順番に共通入出力バッファ領域の各
空き領域の個別サイズCBkとを比較して、FCi≦CBkを満
たすCBkがあるかどうかを調べている。
FCi≦CBkを満たすCBkが一つもない(NO)のときに
は、次のステップS10で、オペレーティングシステムが
共通入出力バッファ領域の詰直しを実施し、前に全使用
領域、後に一つの全空き領域となるように変更してい
る。
この結果、全空き領域が一つの共通入出力バッファ領
域上の空き領域の個別サイズCBになるので、これを割当
てることができることとなる。
そこで、この場合と、上記のステップS9で、FCi≦CBk
を満たすCBkがある(YES)のときには、ステップS11
で、入出力バッファ割当て手段6は、共通入出力バッフ
ァ空き領域管理手段3の情報内容のCBをCB−FCi、CBk
CBk−FCi、CAkをCAk+FCiとして、割当てた結果の状態
に変更している。
次に、ステップS12で、入出力バッファ割当て手段6
は、要求元プログラムに通常入出力バッファを割当て
て、そのアドレスおよびサイズを送出するので、次のス
テップS13で、入出力バッファ割当て結果出力手段7
は、入出力バッファ割当て手段6から送出された共通入
出力バッファのアドレスとサイズを入出力バッファ割当
て要求を行った要求元プログラムP−1,……P−Nの一
つに引渡して通知している。
ステップS8で、FCi≦CBでない(NO)ときには、ステ
ップS14で、入出力バッファ割当て手段6は、要求元プ
ログラムに入出力バッファの割当てができず、割当てが
できないことを示す情報を送出するので、入出力バッフ
ァ割当て結果出力手段7は、その割当てができないこと
を示す情報を入出力バッファ割当て要求を行った要求元
プログラムP−1,……P−Nの一つに引渡して通知して
いる。
以上述べたように、本実施例の入出力バッファ割当て
方式は、主記憶上に空き領域があれば、その空き領域に
多くの入出力ブロックを収容できる大きな入出力バッフ
ァを割当てることにより、物理I/Oの回数を減少させ、
入出力速度を向上させることができる。
〔発明の効果〕
以上説明したように、本発明の入出力バッファ割当て
方式は、主記憶上に空き領域があれば、その空き領域に
多くの入出力ブロックを収容できる大きな入出力バッフ
ァを割当てることにより、物理I/Oの回数を減少させ、
入出力速度を向上させることができるという効果を有し
ている。
【図面の簡単な説明】
第1図は本発明の入出力バッファ割当て方式の一実施例
を示すブロック図、第2図はファイル情報記憶手段の情
報内容を示す情報構成図、第3図は主記憶空き領域管理
手段の情報内容を示す情報構成図、第4図は共通入出力
バッファ空き領域管理手段の情報内容を示す情報構成
図、第5図は本実施例の入出力バッファ割当て方式の入
出力バッファ割当て動作を示す流れ図である。 1……ファイル情報記憶手段、2……主記憶空き領域管
理手段、3……共通入出力バッファ空き領域管理手段、
4……入出力バッファ割当て要求入力手段、5……記憶
領域利用状況判断手段、6……入出力バッファ割当て手
段、7……入出力バッファ割当て結果出力手段、P−1
〜P−N……要求元プログラム。
フロントページの続き (58)調査した分野(Int.Cl.6,DB名) G06F 13/10 G06F 12/02

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】(A)入出力の対象となるファイルのそれ
    ぞれに対して、ファイル名と、入出力に際して主記憶上
    にある空き領域を使用することを要求するための拡張入
    出力バッファサイズ要求値と、主記憶からオペレーティ
    ングシステムで確保して共通に使用する共通入出力バッ
    ファ領域上にある空き領域を使用することを要求するた
    めの入出力ブロック長要求値とをあらかじめ記憶するフ
    ァイル情報記憶手段、 (B)主記憶上にある空き領域の合計サイズと、その中
    の各空き領域の個別サイズと、各空き領域の個別アドレ
    スとを保有し、それらの変化をリアルタイムに管理する
    主記憶空き領域管理手段、 (C)共通入出力バッファ領域上にある空き領域の合計
    サイズと、その中の各空き領域の個別サイズと、各空き
    領域の個別アドレスとを保有し、それらの変化をリアル
    タイムに管理する共通入出力バッファ空き領域管理手
    段、 (D)アプリケーションプログラムなど幾つかの要求元
    プログラムからの入出力バッファ割当て要求を受けて、
    その入出力バッファを必要とするファイル名を抽出する
    入出力バッファ割当て要求入力手段、 (E)前記入出力バッファ割当て要求入力手段で抽出さ
    れたファイル名により、第1に前記ファイル情報記憶手
    段から読出した拡張入出力バッファサイズ要求値に対し
    て、前記主記憶空き領域管理手段の情報内容で、主記憶
    上にある空き領域の合計サイズを調べて割当てができる
    かどうかを判断し、割当てができるときには、まず、主
    記憶の各空き領域の個別サイズを調べてその一つの割当
    てができるかどうかを判断し、何れも割当てできないと
    きには、次に、主記憶の詰直しを実施して割当てを可能
    にし、主記憶の空き領域の合計サイズで割当てができな
    いときには、第2に前記ファイル情報記憶手段から読出
    した入出力ブロック長要求値に対して、前記共通入出力
    バッファ空き領域管理手段の情報内容で、共通入出力バ
    ッファ領域上にある空き領域の合計サイズを調べて割当
    てができるかどうかを判断し、割当てができるときに
    は、まず、共通入出力バッファ領域の各空き領域の個別
    サイズを調べてその一つの割当てができるかどうかを判
    断し、何れも割当てができないときには、次に、共通入
    出力バッファ領域の詰直しを実施して割当てを可能に
    し、共通入出力バッファ領域の空き領域の合計サイズで
    割当てができないときには、割当てができない状態であ
    ると判断する記憶領域利用状況判断手段、 (F)前記記憶領域利用状況判断手段からの判断情報に
    より、主記憶の空き領域に拡張入出力バッファの割当て
    ができるときには、拡張入出力バッファを割当て、共通
    入出力バッファ領域に通常入出力バッファの割当てがで
    きるときには、通常入出力バッファを割当てて、何れの
    場合にもそのアドレスおよびサイズを送出し、割当てが
    できないときには、割当てができないことを示す情報を
    送出する入出力バッファ割当て手段、 (G)前記入出力バッファ割当て手段から送出された拡
    張入出力バッファのアドレスとサイズ、通常入出力バッ
    ファのアドレスとサイズ、割当てができないことを示す
    情報の何れかを、入出力バッファ割当て要求を行った要
    求元プログラムに引渡す入出力バッファ割当て結果出力
    手段、 を備えることを特徴とする入出力バッファ割当て方式。
JP2021339A 1990-01-30 1990-01-30 入出力バッファ割当て方式 Expired - Fee Related JP2833814B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2021339A JP2833814B2 (ja) 1990-01-30 1990-01-30 入出力バッファ割当て方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021339A JP2833814B2 (ja) 1990-01-30 1990-01-30 入出力バッファ割当て方式

Publications (2)

Publication Number Publication Date
JPH03225457A JPH03225457A (ja) 1991-10-04
JP2833814B2 true JP2833814B2 (ja) 1998-12-09

Family

ID=12052358

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021339A Expired - Fee Related JP2833814B2 (ja) 1990-01-30 1990-01-30 入出力バッファ割当て方式

Country Status (1)

Country Link
JP (1) JP2833814B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05143372A (ja) * 1991-11-20 1993-06-11 Nec Corp プールセマフオ管理装置

Also Published As

Publication number Publication date
JPH03225457A (ja) 1991-10-04

Similar Documents

Publication Publication Date Title
US6047356A (en) Method of dynamically allocating network node memory's partitions for caching distributed files
US5983293A (en) File system for dividing buffer areas into different block sizes for system and user data
US6023744A (en) Method and mechanism for freeing disk space in a file system
US5414826A (en) System and method for memory management in microcomputer
JPH11511272A (ja) 実時間データ移送のシステムおよびスパースファイルを用いる方法
JPH0412846B2 (ja)
US7032093B1 (en) On-demand allocation of physical storage for virtual volumes using a zero logical disk
EP0493012A2 (en) Control system for cache storage unit
US7672980B2 (en) System, apparatus and method for reading data
US5678024A (en) Method and system for dynamic performance resource management within a computer based system
JPH06161846A (ja) ファイル管理装置
JPH08137754A (ja) ディスクキャッシュ装置
JP2833814B2 (ja) 入出力バッファ割当て方式
CN115168317A (zh) 一种lsm树存储引擎构建方法和***
US7430649B2 (en) Input/output device, computer, computer system, input/output control program, OS, page management program, and page management method
JPS5848289A (ja) バツフアメモリ制御方式
JP2903605B2 (ja) ファイル領域管理処理方法
JPH026094B2 (ja)
JPH06348572A (ja) マルチ機構ディスクシステム
JPS60140448A (ja) 記憶階層制御方式
JP2583403B2 (ja) バッキングストア管理方式
JPH09282227A (ja) マルチプロセッサシステム
JPS62160545A (ja) 直接アクセス記憶装置の未使用領域管理方式
JPS6162152A (ja) 記憶装置の空き領域管理方式
JPH05233400A (ja) キャッシュ付きディスク制御装置

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees