JPS59108158A - デイスクリ−ド命令の処理方式 - Google Patents
デイスクリ−ド命令の処理方式Info
- Publication number
- JPS59108158A JPS59108158A JP57217102A JP21710282A JPS59108158A JP S59108158 A JPS59108158 A JP S59108158A JP 57217102 A JP57217102 A JP 57217102A JP 21710282 A JP21710282 A JP 21710282A JP S59108158 A JPS59108158 A JP S59108158A
- Authority
- JP
- Japan
- Prior art keywords
- record
- disk
- registered
- cache
- directory table
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0864—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using pseudo-associative means, e.g. set-associative or hashing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔発明の技術分野〕
本発明は中央処理装置がディスクコントローラを介して
ディスク装置に接続されているデジタル情報処理システ
ム等で、中央処理装置のリード命令でディスクコントロ
ーラがディスク内のファイルから指定のレコードを読み
込む際の処理方式に関する。
ディスク装置に接続されているデジタル情報処理システ
ム等で、中央処理装置のリード命令でディスクコントロ
ーラがディスク内のファイルから指定のレコードを読み
込む際の処理方式に関する。
従来、ディスク内のファイルからフローrを読み込む場
合、中央処理装置(CPUと称する)はフローr毎にフ
ァイル内の位置を指定して、リード(READ)命令を
ディスクコントローラに与エロ。ディスクコントローラ
ではり−r命令を受取る毎にディスクに対してディスク
I10を行なう。例えば、ディスクに保持されたフロー
Pをフローrの一部をキーとして、このキーの昇順、あ
るいは降順にフローFをソートする場合、先ずソートの
対象となるキーをソートシ、ソートされた順番にそのキ
ーを含むレコードを読み込んで出力ファイルに書込み、
ディスク内のファイルかう指定のフローrを読み込む処
理を行なっていた。
合、中央処理装置(CPUと称する)はフローr毎にフ
ァイル内の位置を指定して、リード(READ)命令を
ディスクコントローラに与エロ。ディスクコントローラ
ではり−r命令を受取る毎にディスクに対してディスク
I10を行なう。例えば、ディスクに保持されたフロー
Pをフローrの一部をキーとして、このキーの昇順、あ
るいは降順にフローFをソートする場合、先ずソートの
対象となるキーをソートシ、ソートされた順番にそのキ
ーを含むレコードを読み込んで出力ファイルに書込み、
ディスク内のファイルかう指定のフローrを読み込む処
理を行なっていた。
ところで、上記のような従来の方式では、ランダムにリ
ード要求されるフローrをその都度ディスクから読み込
んでいるため、例えば、1ooO件のフローPがあると
1000回のディスク■10が行なわれ、ディスク内の
ファイルかう指定のレコ−Yを読み込む処理時間のほと
んどがこれに費やされるという欠点があった。
ード要求されるフローrをその都度ディスクから読み込
んでいるため、例えば、1ooO件のフローPがあると
1000回のディスク■10が行なわれ、ディスク内の
ファイルかう指定のレコ−Yを読み込む処理時間のほと
んどがこれに費やされるという欠点があった。
本発明の目的は、上記の欠点に鑑み、ディスク内のファ
イルから指定のフローPを高速で読み込むことができる
ディスクリート命令の処理方式を提供することにある。
イルから指定のフローPを高速で読み込むことができる
ディスクリート命令の処理方式を提供することにある。
本発明は、ディスク装置にディスクコントローラを介し
てCPUを接続してなるシステムにおいて、ディスクコ
ントローラにキャツシニノ2ツファとディレクトリテー
ブルとを設け、CPUからの(キャッジ−)リーr命令
”iディスクコントローラが受取ると、キャツシニパッ
ファ内に指定されたレコードがあるかどうかディレクト
リテーブルを走査し、存在しない場合は指定されたフロ
ー1を含む連続したレコード群をディスク内のファイル
カラキャッシュバッファに読み込み、再ヒキャツシーパ
ツファ内に指定されたフローrがあるかどうかディレク
トリテーブルを走査し、あった場合はこの指定されたレ
コードのキャッジ瓢バッファ内アPレスを算出して該当
フローFを読出してCPUに送出するディスクキャッシ
ュ制御命令の処理方式を採ると共に、上記ディスクコン
トローラの制御をファームウェア化することによυ、上
記目的を達成する。
てCPUを接続してなるシステムにおいて、ディスクコ
ントローラにキャツシニノ2ツファとディレクトリテー
ブルとを設け、CPUからの(キャッジ−)リーr命令
”iディスクコントローラが受取ると、キャツシニパッ
ファ内に指定されたレコードがあるかどうかディレクト
リテーブルを走査し、存在しない場合は指定されたフロ
ー1を含む連続したレコード群をディスク内のファイル
カラキャッシュバッファに読み込み、再ヒキャツシーパ
ツファ内に指定されたフローrがあるかどうかディレク
トリテーブルを走査し、あった場合はこの指定されたレ
コードのキャッジ瓢バッファ内アPレスを算出して該当
フローFを読出してCPUに送出するディスクキャッシ
ュ制御命令の処理方式を採ると共に、上記ディスクコン
トローラの制御をファームウェア化することによυ、上
記目的を達成する。
以下本発明の一実施例を図面に従って説明する。
第1図は本発明のディスクリート命令の処理方式におい
て使用されるディスクキャッジ−制御装置の一実施例を
示した構成図である。CPUIがディスクを制御するデ
ィスクコントローラ(MPC)2を介してディスクキャ
ッシュの対象となるファイルを有する複数台のディスク
装置3に接続されている。
て使用されるディスクキャッジ−制御装置の一実施例を
示した構成図である。CPUIがディスクを制御するデ
ィスクコントローラ(MPC)2を介してディスクキャ
ッシュの対象となるファイルを有する複数台のディスク
装置3に接続されている。
第2図は上記ディスクコントローラ2内の構成を示す模
式図である。即ち、ディスクコントローラ2のメモリ内
はフローP制御ビットマツプテーブル(ビットマツプテ
ーブルと称す)21、キャッシュディレクトリテーブル
(ディレクトリテーブルと称f)22及びディスクフロ
ーrキャツシュノ2ツファ(キャソシネノζソファと称
す)23を有シている。フローP制御ビットマツプテー
ブル21 Vi、リ−rすべき入力ファイルのフローP
位置と物理的に対応してフロー12の生死をビットのオ
ン/オフで表わす機能を有する。
式図である。即ち、ディスクコントローラ2のメモリ内
はフローP制御ビットマツプテーブル(ビットマツプテ
ーブルと称す)21、キャッシュディレクトリテーブル
(ディレクトリテーブルと称f)22及びディスクフロ
ーrキャツシュノ2ツファ(キャソシネノζソファと称
す)23を有シている。フローP制御ビットマツプテー
ブル21 Vi、リ−rすべき入力ファイルのフローP
位置と物理的に対応してフロー12の生死をビットのオ
ン/オフで表わす機能を有する。
ディスクレコードキャッシュノマツファ23U、入力レ
コードが読み込寸れるとこれを格納する機能を有し、ギ
ヤラン−ディレクトリテーブル22は キャッシュツマ
ソファ23内の格納フローrと対応1.てフローPのフ
ァイル内の位置を表わすブロック番号とブロック内のオ
フセット情報をlする機能がある。
コードが読み込寸れるとこれを格納する機能を有し、ギ
ヤラン−ディレクトリテーブル22は キャッシュツマ
ソファ23内の格納フローrと対応1.てフローPのフ
ァイル内の位置を表わすブロック番号とブロック内のオ
フセット情報をlする機能がある。
次に本実施例の動作について説明する。第1図(7)C
PUIからディスクコントローラ2に対し先ずキャッシ
ュイニシエイト命令が出されると、ディスクコントロー
ラ2はi31]のフローチャートに示すように、ステッ
プ301で対象となるファイルのフローr全てについて
第2図のビットマツプテーブル21の対応するビットを
オンにし、次にステップ302にてディレクトリテーブ
ル22を初期化する。
PUIからディスクコントローラ2に対し先ずキャッシ
ュイニシエイト命令が出されると、ディスクコントロー
ラ2はi31]のフローチャートに示すように、ステッ
プ301で対象となるファイルのフローr全てについて
第2図のビットマツプテーブル21の対応するビットを
オンにし、次にステップ302にてディレクトリテーブ
ル22を初期化する。
次にCPUIはディスクコントローラ2にキャツシーリ
−Y(READ命令)命令を出力する。
−Y(READ命令)命令を出力する。
するとディスクコントローラ2は第4図に示すフローチ
ャートに示す如くステップ401で指定のレフ−2位置
を示すブロック番号とオフセット値をCPUIから受け
とる。次にステップ402で前記ブロック番号とオフセ
ット値に基づいてディレクトリテーブル22に該当のレ
コードが登録されているかどうかを調べ、もし登録され
ていれば(ヒツトすれば)ステップ403にてディレク
トリのエントリ番号から当該フローrが登録されている
キャッシュノマツファのアPレスヲ算出し、ステップ4
04にてこのアドレスに基づいて該当のレコードをキャ
ッシュ/マッファから読み出してこれをCPU1へ送る
。次にステップ405にてディレクトリテーブル22か
ら当該フローr情報を削除し、ステップ406にて当該
フローrに対応するフローP制御ビットマツプテーブル
21のビットをオフにする。もし、ステップ402にて
該当フローrがヒツトをしなかった場合は、キャッジ−
バッファ23がおいている数だけステップ407にて指
定されたレコードを含む連続したレコード群をディスク
装置3のファイルからキャッシュバッファ内に読み込み
、ステップ408にてそれらをディレクトリテーブルに
登録してこのディレクトリテーブルを更新し、その後ス
テップ402によってディレクトリテーブル22の走査
(ザーチ)を再び行なう。
ャートに示す如くステップ401で指定のレフ−2位置
を示すブロック番号とオフセット値をCPUIから受け
とる。次にステップ402で前記ブロック番号とオフセ
ット値に基づいてディレクトリテーブル22に該当のレ
コードが登録されているかどうかを調べ、もし登録され
ていれば(ヒツトすれば)ステップ403にてディレク
トリのエントリ番号から当該フローrが登録されている
キャッシュノマツファのアPレスヲ算出し、ステップ4
04にてこのアドレスに基づいて該当のレコードをキャ
ッシュ/マッファから読み出してこれをCPU1へ送る
。次にステップ405にてディレクトリテーブル22か
ら当該フローr情報を削除し、ステップ406にて当該
フローrに対応するフローP制御ビットマツプテーブル
21のビットをオフにする。もし、ステップ402にて
該当フローrがヒツトをしなかった場合は、キャッジ−
バッファ23がおいている数だけステップ407にて指
定されたレコードを含む連続したレコード群をディスク
装置3のファイルからキャッシュバッファ内に読み込み
、ステップ408にてそれらをディレクトリテーブルに
登録してこのディレクトリテーブルを更新し、その後ス
テップ402によってディレクトリテーブル22の走査
(ザーチ)を再び行なう。
次にディスクキャッシュバッファ制御アルザリズムを説
明する。キャッジ瓢バッファ23内の格納レコードとデ
ィレクトリテーブル22内のフローr登録情報(エント
リ情報)は常に上から間に空きがないようにコン・ぐク
トされている。即ち、L/ フ−f’ カヒットしその
レコードがキャッシュバッファ23内に不要となると、
第4図のステップ409にてキャッシュバッファ23中
、最下位に位置するフローPイメージが新しく空きとな
った(ヒノトフローrが削除された後)ノζソファへ挿
入される。このような制御にょカキャッシーノ々ツフア
23内の空きエリアも常に連続して存在することになり
、次に新しいフローPをキャツシュノ々ツファ23内に
読み込む必要が生じた場合に、ノ々ツファ内を整理する
ことなくすぐに複数のレコードをディスク装置3から読
み込むことができる。次にステップ410でディレクト
リテーブル220更新を行なう。なお、ディスク装置3
内の要求レコードを含むブロックをディスクコントロー
ラ2が読み込むためのキャッジ昆バッファ23内の空き
バッファが不足している場合はキャツシーノζツファ2
3の1番下に登録されているフローPから必要な数だけ
削除して必要なフローrを読み込む。
明する。キャッジ瓢バッファ23内の格納レコードとデ
ィレクトリテーブル22内のフローr登録情報(エント
リ情報)は常に上から間に空きがないようにコン・ぐク
トされている。即ち、L/ フ−f’ カヒットしその
レコードがキャッシュバッファ23内に不要となると、
第4図のステップ409にてキャッシュバッファ23中
、最下位に位置するフローPイメージが新しく空きとな
った(ヒノトフローrが削除された後)ノζソファへ挿
入される。このような制御にょカキャッシーノ々ツフア
23内の空きエリアも常に連続して存在することになり
、次に新しいフローPをキャツシュノ々ツファ23内に
読み込む必要が生じた場合に、ノ々ツファ内を整理する
ことなくすぐに複数のレコードをディスク装置3から読
み込むことができる。次にステップ410でディレクト
リテーブル220更新を行なう。なお、ディスク装置3
内の要求レコードを含むブロックをディスクコントロー
ラ2が読み込むためのキャッジ昆バッファ23内の空き
バッファが不足している場合はキャツシーノζツファ2
3の1番下に登録されているフローPから必要な数だけ
削除して必要なフローrを読み込む。
これはキャッシュバッファ23内に登録されているレコ
ードは必らずいつかヒツトし、しかも、こレハキャツシ
ュノ々ツファ23に読ミ込マレタフローrの順番とは全
く無関係であるからである。
ードは必らずいつかヒツトし、しかも、こレハキャツシ
ュノ々ツファ23に読ミ込マレタフローrの順番とは全
く無関係であるからである。
本実施例によれば、ディスクコントローラ2Vi、CP
U1からキャッジユリ−r命令を受は取ると、ディスク
コントローラ2内のキャッシュ/マッファ23内に該当
のレコードが登録されているか否かをディレクトリテー
ブル22を走査する。そして、そのフローrが登録され
ていれば該当フローPが存在スるキャッシュバッファ2
3のアドレスを算出して該当レコードを読み出しCPU
Iへ送出する。該当のフローrが登録されていない場合
は、該当フローrを含む連続したレコード群をディスク
装置3からキャツシエノ々ツファ23内に読み込み、再
びキャッシュディレクトリテーブル22を走査するとい
う処理を行なう。従って、キャッシュバッファ23の容
量を犬きくすればする程該当フローrのヒツト確率が犬
きくなり、ディスクI10の回数を減らすことができる
。また、ディレクトリテーブル22にて指定されたフロ
ーPを容易に走査し得る構成となっているため、無駄時
間がなく指定のレコードを高速で読み込むことができる
。またキャッシュノマツファ制御ルーチンヲティスクコ
ントローラ2内でファームウェア化しているためCPU
Iの負荷を軽減することができる。
U1からキャッジユリ−r命令を受は取ると、ディスク
コントローラ2内のキャッシュ/マッファ23内に該当
のレコードが登録されているか否かをディレクトリテー
ブル22を走査する。そして、そのフローrが登録され
ていれば該当フローPが存在スるキャッシュバッファ2
3のアドレスを算出して該当レコードを読み出しCPU
Iへ送出する。該当のフローrが登録されていない場合
は、該当フローrを含む連続したレコード群をディスク
装置3からキャツシエノ々ツファ23内に読み込み、再
びキャッシュディレクトリテーブル22を走査するとい
う処理を行なう。従って、キャッシュバッファ23の容
量を犬きくすればする程該当フローrのヒツト確率が犬
きくなり、ディスクI10の回数を減らすことができる
。また、ディレクトリテーブル22にて指定されたフロ
ーPを容易に走査し得る構成となっているため、無駄時
間がなく指定のレコードを高速で読み込むことができる
。またキャッシュノマツファ制御ルーチンヲティスクコ
ントローラ2内でファームウェア化しているためCPU
Iの負荷を軽減することができる。
又、ビットマツプテーブル21を設けたことにより、レ
コードの生死をビットマツプに反映させることができ、
キャッジ−バッファ23に読み込むフローr数を最適化
することができる。
コードの生死をビットマツプに反映させることができ、
キャッジ−バッファ23に読み込むフローr数を最適化
することができる。
なお、上記実施例で1iデイスク装置3とし−C磁気デ
ィスク装置を例にとって述べてきたが、他のランダムア
クセス装置のコントローラにも本発明を適用して同様の
効果を得ることができる。また、キャツシュノζツファ
制御ルーチンヲティスクコントローラ2内でファームウ
ェア化できない場合はソフトウェアで実現しても同様の
効果を期待することができる。
ィスク装置を例にとって述べてきたが、他のランダムア
クセス装置のコントローラにも本発明を適用して同様の
効果を得ることができる。また、キャツシュノζツファ
制御ルーチンヲティスクコントローラ2内でファームウ
ェア化できない場合はソフトウェアで実現しても同様の
効果を期待することができる。
以上記述した如く本発明のディスクリl:′命令の処理
方式によれば、ディスクコントローラがCPUからキャ
ツシーリーP命令を受取るとディスクコントローラはそ
の指定フローPを含む連続した複数のフローl′をディ
スクコントローラ内のキャツシュノ々ツファに読み込ん
でおきこのバッファを効率良く制御することにより、指
定のレコードを高速で読み込む効果がある。
方式によれば、ディスクコントローラがCPUからキャ
ツシーリーP命令を受取るとディスクコントローラはそ
の指定フローPを含む連続した複数のフローl′をディ
スクコントローラ内のキャツシュノ々ツファに読み込ん
でおきこのバッファを効率良く制御することにより、指
定のレコードを高速で読み込む効果がある。
第1図は本発明のディスクリ−P命令の処理方式を適用
したシステムの一実施例を示した掃成図、第2図は本実
施例のディスクコントローラの構成を示した模式図、第
3図及び第4図は本実施例のディスクコントローラの動
作チャート図である。 l・・・CPU、2・・・ディスクコントローラ(MP
C)、3・・・ディスク装置、21・・・レコード制御
ビットマツプテーブル、22・°・ヤヤソシュディレク
トリテーブル、23・・・ディスクレコードキャッシュ
バッファ。 代理人 弁理士 則 近 憲 佑(ほか1名)
したシステムの一実施例を示した掃成図、第2図は本実
施例のディスクコントローラの構成を示した模式図、第
3図及び第4図は本実施例のディスクコントローラの動
作チャート図である。 l・・・CPU、2・・・ディスクコントローラ(MP
C)、3・・・ディスク装置、21・・・レコード制御
ビットマツプテーブル、22・°・ヤヤソシュディレク
トリテーブル、23・・・ディスクレコードキャッシュ
バッファ。 代理人 弁理士 則 近 憲 佑(ほか1名)
Claims (2)
- (1)CPUからのり−P命令をディスクコントローラ
が受けるとディスクコントローラはディスクI10を行
なってディスク装置内に格納されているファイルから指
定のレコーrを読み込む構成のシステムにおいて、ディ
スクコントローラのメモリ内に、指定されたレコーPを
含む連続した複数のレコーPをディスク装置から読み込
んで格納するキャッシュバッファと、キャッシュバッフ
ァにイ各納されているレコードを登録するディレクトリ
テーブルとを設け、リード命令によりディスクコントロ
ーラはディレクトリテーブルを走査して指定のレコード
が登録されているがどうかを調べ、登録されている場合
はキャッシュノζツファに格納されている当該レコーr
のアドレスに基づいて当該レコーrを読み出してCPU
に送出し、登録されていない場合は指定のレコードを含
む連続したレコード群をディスク装置のファイルからキ
ャッシュバッファに読み込むと共にこれらレコードの登
録をディレクトリテーブルに行ない、再び指定のレコー
rが登録されているかどうかディレクトリテーブルを走
査することを特徴とするディスクリ−r命令の処理方式
。 - (2) 7’イスクコントローラ内に、キャッシュバ
ッファに記憶されているレコードと対応してレコーrの
生死をビットのオン、オフで表わすレコード制御ビット
マツプテーブルを設けたことを特徴とする特許請求の範
囲第1項記載のディスクリ−P命令の処理方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP57217102A JPS59108158A (ja) | 1982-12-13 | 1982-12-13 | デイスクリ−ド命令の処理方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP57217102A JPS59108158A (ja) | 1982-12-13 | 1982-12-13 | デイスクリ−ド命令の処理方式 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS59108158A true JPS59108158A (ja) | 1984-06-22 |
Family
ID=16698874
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP57217102A Pending JPS59108158A (ja) | 1982-12-13 | 1982-12-13 | デイスクリ−ド命令の処理方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS59108158A (ja) |
-
1982
- 1982-12-13 JP JP57217102A patent/JPS59108158A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPS62177621A (ja) | デイスク装置 | |
US4809214A (en) | Information searching apparatus | |
JPS59108158A (ja) | デイスクリ−ド命令の処理方式 | |
JPH01184763A (ja) | データ格納方法および装置 | |
JPS62226375A (ja) | 画像情報検索方式 | |
US5170479A (en) | File block managing system using next record header position data and delete history data from block header and record headers to locate requested record block | |
JPS593567A (ja) | ツリ−構造のバツフア数設定方式 | |
JP2556841B2 (ja) | ファイルアクセス装置及びそのファイルにアクセスする方法 | |
JPH02151944A (ja) | データ処理装置 | |
JPH0239225A (ja) | ファイルシステム | |
JP3585264B2 (ja) | データベースシステム及びデータ検索方法 | |
JPS6139285A (ja) | 情報検索装置 | |
JPH02116936A (ja) | 再編成方式 | |
JPS60142416A (ja) | 画像情報記憶検索装置 | |
JPH05151037A (ja) | 業務処理中データベース再編成処理方式 | |
JP2594385B2 (ja) | 電子ファイル装置 | |
JP3103209B2 (ja) | 画像ファイル装置 | |
JP2507399B2 (ja) | デ―タベ―ス装置 | |
JP2537862B2 (ja) | 表示デ−タ読込み制御方式 | |
JPH0588949A (ja) | デイスクフアイル管理装置 | |
JPS61213920A (ja) | デイスクフアイル制御方式 | |
JPH06149647A (ja) | マルチメディアファイル管理方式 | |
JPH069042B2 (ja) | 共用記憶媒体の順次アクセス制御装置 | |
JPS62229291A (ja) | 像形成方式 | |
JPS63197166A (ja) | 電子フアイリングシステム |