JPS58161060A - キヤツシユ・メモリ−空間の適合領域区分方法 - Google Patents
キヤツシユ・メモリ−空間の適合領域区分方法Info
- Publication number
- JPS58161060A JPS58161060A JP57208381A JP20838182A JPS58161060A JP S58161060 A JPS58161060 A JP S58161060A JP 57208381 A JP57208381 A JP 57208381A JP 20838182 A JP20838182 A JP 20838182A JP S58161060 A JPS58161060 A JP S58161060A
- Authority
- JP
- Japan
- Prior art keywords
- regions
- region
- storage
- area
- frame
- 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/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/31—Providing disk cache in a specific location of a storage system
- G06F2212/312—In storage controller
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/60—Details of cache memory
- G06F2212/601—Reconfiguration of cache memory
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99951—File or database maintenance
- Y10S707/99956—File allocation
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔発明の属する技術分野〕
本発明は、データの記憶管理および制御技術に関する。
特に、本発明は、種々のテープの長期磁気記憶装置と関
連して使用されるソリッド・ステート・メモリーがメモ
リー・システムに入れられろ種々の要求にも拘らず有効
なキャッシュ・メモリーの使用を確保するように選択さ
れたサイズのブロック即ち「領域」に再分割することが
できるメモリー・システムに関スル。
連して使用されるソリッド・ステート・メモリーがメモ
リー・システムに入れられろ種々の要求にも拘らず有効
なキャッシュ・メモリーの使用を確保するように選択さ
れたサイズのブロック即ち「領域」に再分割することが
できるメモリー・システムに関スル。
〔従来技術および本発明の詳細な説明〕本発明は、主と
して長期磁気ディスク記憶媒体に対する付属物として使
用されるように構成されたソリッド・ステートOキャッ
シュ・メモリー・サブシステムに関するものである。こ
のキャッシュ・メモリーは、キャッシュ・メモリー・シ
ステムが上位コンピュータに対してプラグ・コンパチビ
リティを有しかつソフトウェア互換性を有するように、
このようなソリッド・ステート・メモリー・サブシステ
ムと共に使用するようには特に構成さえtない従来のデ
ータ伝送チャネルの外部で接続されている。特に、本発
明は参考のため本文に′引用する1981年11月27
日出願の係属中のツシュ・メモリー・サツシステムに従
って作動するように構成される。この出願は、記憶ディ
レクタに対し作用的に接続され、この記憶ディレクタが
更に一端部において上位コンピュータと他端部において
制御モジュールとの間に接続されたキャッシュOメモリ
ー・サブシステムについて記述スる。更に、この制御モ
ジュールは実際のディスク・ドライノと接続する。当技
術においては周知の如く、前記ディレクタは上位コンピ
ュータを制御モジュールとインターフェースするように
作用しこの制御モジュールは更に前記ディレクタをディ
スク・ドライブとインターフェースする。この制御モジ
ュールはディスク・ドライブの特定の形式に従って選択
されるが、ディレクタは種々の形式の制御モジュールと
、従って種々の形式のディスク・ドライブと共に使用す
ることがでとる。本発明のこのような用途においては、
キャッシュはディレクタにより種々の種類のディスク・
ドライブと共に使用されるようになっている。
して長期磁気ディスク記憶媒体に対する付属物として使
用されるように構成されたソリッド・ステートOキャッ
シュ・メモリー・サブシステムに関するものである。こ
のキャッシュ・メモリーは、キャッシュ・メモリー・シ
ステムが上位コンピュータに対してプラグ・コンパチビ
リティを有しかつソフトウェア互換性を有するように、
このようなソリッド・ステート・メモリー・サブシステ
ムと共に使用するようには特に構成さえtない従来のデ
ータ伝送チャネルの外部で接続されている。特に、本発
明は参考のため本文に′引用する1981年11月27
日出願の係属中のツシュ・メモリー・サツシステムに従
って作動するように構成される。この出願は、記憶ディ
レクタに対し作用的に接続され、この記憶ディレクタが
更に一端部において上位コンピュータと他端部において
制御モジュールとの間に接続されたキャッシュOメモリ
ー・サブシステムについて記述スる。更に、この制御モ
ジュールは実際のディスク・ドライノと接続する。当技
術においては周知の如く、前記ディレクタは上位コンピ
ュータを制御モジュールとインターフェースするように
作用しこの制御モジュールは更に前記ディレクタをディ
スク・ドライブとインターフェースする。この制御モジ
ュールはディスク・ドライブの特定の形式に従って選択
されるが、ディレクタは種々の形式の制御モジュールと
、従って種々の形式のディスク・ドライブと共に使用す
ることがでとる。本発明のこのような用途においては、
キャッシュはディレクタにより種々の種類のディスク・
ドライブと共に使用されるようになっている。
以上述べた係属中の米国特許出願の発明におけろソリッ
ド・ステート・キャッシュ・メモリーサツシステムの横
部は、このあるデータに対する実際の上位コンピュータ
の要求に先立ってF位コ、ンピュータにより呼出される
ものとして判定されたあるデータを記憶することである
。この判定は、これもまた参考のため本文に引用する1
981年11月27日出願の別の係属中の米国特許出願
第325.350号において開示された発明に従ってな
される5本発明の望ましい一実施態様においては、デー
タの特定のブロックが上位コンピュータにより呼出され
ようとすることを一旦判定するとデータの前記ブロック
を含むディスク・トラック全体が、上位コンピュータに
よる呼出しを見越してキャッシュ・メモリーに一時的に
記憶するため持込まれる。キャッシュ・メモリー・サブ
システムはあるトラックに記憶された様々な量のデータ
を更に有する種々の形式のディスク・ドライブと共働す
るようになってなげればならない限り、種々のサイズの
ディスクのドラックがその内部にトラック単位で記憶さ
れるという事実にも拘らず可能である程度にキャッシュ
・メモリーが有効となる装置を設けなければならな馳。
ド・ステート・キャッシュ・メモリーサツシステムの横
部は、このあるデータに対する実際の上位コンピュータ
の要求に先立ってF位コ、ンピュータにより呼出される
ものとして判定されたあるデータを記憶することである
。この判定は、これもまた参考のため本文に引用する1
981年11月27日出願の別の係属中の米国特許出願
第325.350号において開示された発明に従ってな
される5本発明の望ましい一実施態様においては、デー
タの特定のブロックが上位コンピュータにより呼出され
ようとすることを一旦判定するとデータの前記ブロック
を含むディスク・トラック全体が、上位コンピュータに
よる呼出しを見越してキャッシュ・メモリーに一時的に
記憶するため持込まれる。キャッシュ・メモリー・サブ
システムはあるトラックに記憶された様々な量のデータ
を更に有する種々の形式のディスク・ドライブと共働す
るようになってなげればならない限り、種々のサイズの
ディスクのドラックがその内部にトラック単位で記憶さ
れるという事実にも拘らず可能である程度にキャッシュ
・メモリーが有効となる装置を設けなければならな馳。
例えば、もしキャッシュ・メモリー全体が200キロバ
イト(以下本文においては、200kbと記す)のデー
タを保有するものとすれば、このようなトラックの10
トラツクがキャッシュに対応することになろう。換言す
れば、このキャッシュは10個の20kbの「フレーム
」に分割することができるのである。例えば、全部で1
0のフレームが一杯となって別のトラックをキャッシュ
することが望ましい場合、キャッシュ管理装置は単に1
つのフレーム、例えば最近はとんど使用されなかったデ
ータを保有するフレームの割当てを解除してこのフレー
ムを新たなトラックに割当てることもできる。
イト(以下本文においては、200kbと記す)のデー
タを保有するものとすれば、このようなトラックの10
トラツクがキャッシュに対応することになろう。換言す
れば、このキャッシュは10個の20kbの「フレーム
」に分割することができるのである。例えば、全部で1
0のフレームが一杯となって別のトラックをキャッシュ
することが望ましい場合、キャッシュ管理装置は単に1
つのフレーム、例えば最近はとんど使用されなかったデ
ータを保有するフレームの割当てを解除してこのフレー
ムを新たなトラックに割当てることもできる。
しかし、もし別の形式の例えば25 kbのサイズのト
ラックを有するディスク・ドライブに記憶されたデータ
のステージング操作が必要とされるならば、25kbの
トラックを収容するため2つの隣接する2 0 kbの
フレームの割当てを解除することが必要となり、このた
め15kbの空間が無駄になる。仮に2つの隣接するフ
レームの割当て解除が有効データの損失なしに可能であ
ったとしても、空間の無駄は明らかに望ましいことでは
ない。一方もしソリッド・ステート・メモリー全体が1
つのサイズの唯1本のトラックの記憶のための1つの再
分割部分即ち「領域」に分割され、また別の再分割部分
が別のサイズのトラックの記憶域と比例するならば、メ
モリーの個々の領域は充分な割当てが可能となろう。し
かし、この解決法の使用は2つのサイズのトラックの相
対的な活動状態が時間に関して一定となることを再前提
としこれはこの場合には期待できない。このように、キ
ャッシュを最も有効に使用するためには、ソリッド・ス
テート・メモリーの全領域がキャッシュにより保持され
るどんなトラ゛ツク・サイズに対してアクセス可能であ
ることが望ましい。最優に、全てのトラック・サイズを
非常圧小さな均一サイズの「ページ」、例えばフレーム
内で略々均等に適合する2kb に分割することもでき
る。しかしこの方法は構成のため複雑なハードウェアを
必要とし、更に個々のディスクのトラックが必然的にキ
ャッシュの各部分において記憶されようとする傾向を有
するためキャッシュの効率を付加的に低減させることに
なり、その結果更に多(のサポートを要し、例えば、あ
るトラックの各部分の数多くの記憶場所の呼戻しを惹起
することになる。
ラックを有するディスク・ドライブに記憶されたデータ
のステージング操作が必要とされるならば、25kbの
トラックを収容するため2つの隣接する2 0 kbの
フレームの割当てを解除することが必要となり、このた
め15kbの空間が無駄になる。仮に2つの隣接するフ
レームの割当て解除が有効データの損失なしに可能であ
ったとしても、空間の無駄は明らかに望ましいことでは
ない。一方もしソリッド・ステート・メモリー全体が1
つのサイズの唯1本のトラックの記憶のための1つの再
分割部分即ち「領域」に分割され、また別の再分割部分
が別のサイズのトラックの記憶域と比例するならば、メ
モリーの個々の領域は充分な割当てが可能となろう。し
かし、この解決法の使用は2つのサイズのトラックの相
対的な活動状態が時間に関して一定となることを再前提
としこれはこの場合には期待できない。このように、キ
ャッシュを最も有効に使用するためには、ソリッド・ス
テート・メモリーの全領域がキャッシュにより保持され
るどんなトラ゛ツク・サイズに対してアクセス可能であ
ることが望ましい。最優に、全てのトラック・サイズを
非常圧小さな均一サイズの「ページ」、例えばフレーム
内で略々均等に適合する2kb に分割することもでき
る。しかしこの方法は構成のため複雑なハードウェアを
必要とし、更に個々のディスクのトラックが必然的にキ
ャッシュの各部分において記憶されようとする傾向を有
するためキャッシュの効率を付加的に低減させることに
なり、その結果更に多(のサポートを要し、例えば、あ
るトラックの各部分の数多くの記憶場所の呼戻しを惹起
することになる。
従って、本発明の目的はソリッド・ステート・キャッシ
ュ・メモリーにおいて使用可能な記憶域が最も有効に使
用できる装置の提供にある。
ュ・メモリーにおいて使用可能な記憶域が最も有効に使
用できる装置の提供にある。
本発明の別の目的はソリッド・ステート・キャッシュ・
メモリー・サブシステムが種々のサイズのデータ・レコ
ードの記憶のため有効に作動できる方法の提供にある。
メモリー・サブシステムが種々のサイズのデータ・レコ
ードの記憶のため有効に作動できる方法の提供にある。
本発明の更に別の目的は、使用可能な記憶空間を完全に
使用するように、実際の使用に従って複数のクラスの領
域に前身て分割されたキャッシュ・メモリーを「適正に
」即ち「動的に」再構成するための装置の提供にある。
使用するように、実際の使用に従って複数のクラスの領
域に前身て分割されたキャッシュ・メモリーを「適正に
」即ち「動的に」再構成するための装置の提供にある。
前述の当技術の要望事項および本発明の諸口的は、ソ1
1ツド・ステート・メモリーが領域に再分割される本発
明によって満たされるのである。この領域のサイズは、
例えば1つのクラスの装置からの6つの50 kbのト
ラックが別のクラスからの2つの75 kbのトラック
と同じ150 kbの領域内に適合するように、その内
部に記憶することを要するトラック・サイズの各々の略
々整数倍となるように選択される。従って、個々の領域
はある1つの形式の素子からのトラックの記憶のため割
当てられ、次いで個々のトラックが書込まれるトラック
・サイズのフレームに分割される。領域の使用に関して
は統計が行なわれる。もしある特定形式の素子からステ
ージ操作されたデータが他を支配することを表示するな
らば、使用可能な総記憶空間の有効使用を確保するため
別の領域が第2の素子形式から第1の素子形式へ再割当
てされる。このように、同じ記憶領域における種々のト
ラック・サイズの混在のための断片化が避けられるので
ある。
1ツド・ステート・メモリーが領域に再分割される本発
明によって満たされるのである。この領域のサイズは、
例えば1つのクラスの装置からの6つの50 kbのト
ラックが別のクラスからの2つの75 kbのトラック
と同じ150 kbの領域内に適合するように、その内
部に記憶することを要するトラック・サイズの各々の略
々整数倍となるように選択される。従って、個々の領域
はある1つの形式の素子からのトラックの記憶のため割
当てられ、次いで個々のトラックが書込まれるトラック
・サイズのフレームに分割される。領域の使用に関して
は統計が行なわれる。もしある特定形式の素子からステ
ージ操作されたデータが他を支配することを表示するな
らば、使用可能な総記憶空間の有効使用を確保するため
別の領域が第2の素子形式から第1の素子形式へ再割当
てされる。このように、同じ記憶領域における種々のト
ラック・サイズの混在のための断片化が避けられるので
ある。
〔図面による説明〕一
本発明については図面を照合すれば更によく理解されよ
う。
う。
前述の如く、本発明の適合領域の区分方法は、上位コン
ピュータによるその呼出しを予期してデ、イスク・メモ
リー上に記憶されるデータを保有するように操作される
ソリッド・ステート・キャッシュ・メモリー・サブシス
テムにおいて使用されるように構成されている。
ピュータによるその呼出しを予期してデ、イスク・メモ
リー上に記憶されるデータを保有するように操作される
ソリッド・ステート・キャッシュ・メモリー・サブシス
テムにおいて使用されるように構成されている。
第1図はこのようなシステムの簡単なブロック図を示し
ている。上位コンピュータ10は記憶ディレクタ16に
対して従来のチャネル・インターフェース12により接
続されている。この記憶ディレクタは更に、図示の如(
異なる形式のものでよいディスク・ドライブ14をそれ
自体が制御する複数の制御モジュール18に対してイン
ターフェースする。特に、ディスク14の1つのあるト
ラック上に記憶されたデータ量は変動し得る。例えば、
参考のため本文に引用する1981年11月27日出願
の減属中の米国特許出願第325.350号によるキャ
ッシュ管理装置24によってソリツド・ステート・キャ
ッシュ・メモリーのアレー22におけるあるトラックの
全内容を記憶することが望ましいとする判定が行なわれ
る時、ディスク14上のトラックの長さに対してサイズ
において対応するキャッシュの多数の場所、即ちキャッ
シュの場所のあるrフレーム」がこのデータに対して割
当てられなげればならない。キャッシュ管理装置により
、ある特定のトラックをキャッシュ・アレー22におけ
るあるフレームにステージング操作することが必要な時
、1つのフレームがこのトラックに対して割当てられ、
操作が進行する。
ている。上位コンピュータ10は記憶ディレクタ16に
対して従来のチャネル・インターフェース12により接
続されている。この記憶ディレクタは更に、図示の如(
異なる形式のものでよいディスク・ドライブ14をそれ
自体が制御する複数の制御モジュール18に対してイン
ターフェースする。特に、ディスク14の1つのあるト
ラック上に記憶されたデータ量は変動し得る。例えば、
参考のため本文に引用する1981年11月27日出願
の減属中の米国特許出願第325.350号によるキャ
ッシュ管理装置24によってソリツド・ステート・キャ
ッシュ・メモリーのアレー22におけるあるトラックの
全内容を記憶することが望ましいとする判定が行なわれ
る時、ディスク14上のトラックの長さに対してサイズ
において対応するキャッシュの多数の場所、即ちキャッ
シュの場所のあるrフレーム」がこのデータに対して割
当てられなげればならない。キャッシュ管理装置により
、ある特定のトラックをキャッシュ・アレー22におけ
るあるフレームにステージング操作することが必要な時
、1つのフレームがこのトラックに対して割当てられ、
操作が進行する。
本発明は、このキャッシュ・アレー22の再分割部分即
ち「領域」への有効な分割に関するものである。この値
域のサイズは、種々の長さのディスク・トラックの略々
全数が各領域における「フレーム」に適合するように選
択されている。このように、この領域のある特定のトラ
ック長さに対する割当ての後、この領域はトラックの長
さと対応するサイドの「フレーム」に分割されるのであ
る。
ち「領域」への有効な分割に関するものである。この値
域のサイズは、種々の長さのディスク・トラックの略々
全数が各領域における「フレーム」に適合するように選
択されている。このように、この領域のある特定のトラ
ック長さに対する割当ての後、この領域はトラックの長
さと対応するサイドの「フレーム」に分割されるのであ
る。
ある時一点においては、−ある特定の長さのトラックに
対して割当てられた全ての領域の使用頻度が大きいが他
の形式のディスクのトラックに対して割当てられたもの
はそれ程ではないことを予期することができる。本発明
の重要な特質によれば、この領域は、異なる形式のディ
スク・メモリー素子に格納されたデータを保持するよう
に有効に再割当てすることができるように全てが同じサ
イズとなるように選択されている。これら領域は、使用
状態に従って異なるサイズのフレームに「動的に」再区
分される。このため、この領域サイズはこれら領域が種
々のサイズの整数個のフレームを保有するように選択さ
れている。第2図はこれを如何にして行なうかを示す一
例を示している。この場合、領域のサイズは略々256
kb である。
対して割当てられた全ての領域の使用頻度が大きいが他
の形式のディスクのトラックに対して割当てられたもの
はそれ程ではないことを予期することができる。本発明
の重要な特質によれば、この領域は、異なる形式のディ
スク・メモリー素子に格納されたデータを保持するよう
に有効に再割当てすることができるように全てが同じサ
イズとなるように選択されている。これら領域は、使用
状態に従って異なるサイズのフレームに「動的に」再区
分される。このため、この領域サイズはこれら領域が種
々のサイズの整数個のフレームを保有するように選択さ
れている。第2図はこれを如何にして行なうかを示す一
例を示している。この場合、領域のサイズは略々256
kb である。
ある望ましい実施態様においては、キャッシュは略々3
メガバイトの総容量に対してこのような領域を12保有
している。6つの可能な領域の再分割の手法が第2図に
示されている。
メガバイトの総容量に対してこのような領域を12保有
している。6つの可能な領域の再分割の手法が第2図に
示されている。
第2A図は、本発明の譲受人であるStorageTe
chnology社が市販するモデル8650デイスク
・ドライブと共に使用される領域に対し適合し得る方式
を示し、この場合には各トラックは19,069バイト
、プラス「見出し」情報を識別する数ノミイトを保有し
ている。このようなトラックの内見出しを有する13ト
ラツクが256 kbの領域内に適合する。Stora
ge Technology社のモデル8375デイス
ク・ドライブは約37.000バイトのトラック・サイ
ズを有する。第2B図に示されるように、見出しを有す
るこのように37.000kbの6つのトラックが25
6kbの領域内に適合する0最後に、Storage
Technology 社のモデル8580デイスク・
ドライブは47.476バイトのトラック・サイズを有
する。第2C図は見出し付きのこのようなフレームが5
つ256kbの領域サイズに充分適合することを啄して
いる。
chnology社が市販するモデル8650デイスク
・ドライブと共に使用される領域に対し適合し得る方式
を示し、この場合には各トラックは19,069バイト
、プラス「見出し」情報を識別する数ノミイトを保有し
ている。このようなトラックの内見出しを有する13ト
ラツクが256 kbの領域内に適合する。Stora
ge Technology社のモデル8375デイス
ク・ドライブは約37.000バイトのトラック・サイ
ズを有する。第2B図に示されるように、見出しを有す
るこのように37.000kbの6つのトラックが25
6kbの領域内に適合する0最後に、Storage
Technology 社のモデル8580デイスク・
ドライブは47.476バイトのトラック・サイズを有
する。第2C図は見出し付きのこのようなフレームが5
つ256kbの領域サイズに充分適合することを啄して
いる。
本発明によれば、キャッシュの空間割当ての動的な再分
割は使用頻度に従って行なわれる。このため、ひどい断
片化を生じることなく高い記憶効率が可能となる。断片
化は、使用可能なフレームのサイズと使用可能なフレー
ムに記憶されるべきトラック・サイズとの間の対応の欠
如による空間の無駄である。ひどい断片化状感は、必要
に応じて再フレーミングによっである素子から他の素子
へ再割当てを行なうことが可能であるために避けられる
。一時に1つの領域しか再割当てが行なわれず、このた
めキャッシュ全体の構成を無効にする必要を排除するこ
とにより安定化および簡素化が提供される。「領域使用
頻度カウント」を保持してどのクラスの領域が大きな使
用頻度を有するかを追跡する。これにより、領域のその
時の割当てが如何なる特定の時点においてもシステムの
使用頻度に関して最も効率的であるかを判定することを
可能にする。これについては第6図および第4図に関し
て以下に論述する。
割は使用頻度に従って行なわれる。このため、ひどい断
片化を生じることなく高い記憶効率が可能となる。断片
化は、使用可能なフレームのサイズと使用可能なフレー
ムに記憶されるべきトラック・サイズとの間の対応の欠
如による空間の無駄である。ひどい断片化状感は、必要
に応じて再フレーミングによっである素子から他の素子
へ再割当てを行なうことが可能であるために避けられる
。一時に1つの領域しか再割当てが行なわれず、このた
めキャッシュ全体の構成を無効にする必要を排除するこ
とにより安定化および簡素化が提供される。「領域使用
頻度カウント」を保持してどのクラスの領域が大きな使
用頻度を有するかを追跡する。これにより、領域のその
時の割当てが如何なる特定の時点においてもシステムの
使用頻度に関して最も効率的であるかを判定することを
可能にする。これについては第6図および第4図に関し
て以下に論述する。
アドレス指定されなければならない事前の問題はフレー
ムの割当て、即ち、最適のフレームを選んでキャッシュ
Oアレーに対してステージング操作を行なうためあるト
ラックを割当てることである。この「最適なフレーム」
は、どれかのトラック忙その時割当てが行なわれないも
のである。しかし、もしフレームが全く自由状態になけ
れば、あるフレームがその時割当てられていたトラック
からこのフレームを「取外し」、ステージ操作を行なう
べき新たなトラックに対して再割当てされなければなら
ない。この取外しに最適のフレームは、上位コンピュー
タによりもはや読出されないものである。上位コン上0
ユータにより以前として読出されつ、つあるフレームは
、データが読出される前にフレームが取外されるならば
トラックのステージング操作に費やされるオーバーヘッ
ドは回復されない故に、取外すべきではない。本発明の
現在望ましい実施態様においては、フレームの割当ては
「最近はとんど使用されないJ (LRlJ)手法を用
いて実施される。このLRU法はフレームのリストによ
って構成される。このリストは、最も後で使用されたフ
レームが配される頂部と、最近使用されなかったフレー
ムおよび自由状態にあるフレームに対応する底部とを有
する。このためあるフレームが使用されると、即ちステ
ージング操作または読出し力で行なわれる時、その名前
が前されると、これはリストの底部に移動される。この
状態は、上位コンピュータが書込み操作をこれから前記
フレームの内容がステージング操作されたディスクにお
ける領域に送る時に生じて前記フレームにおけるデータ
を無効化し、あるいは全てのレコードが前記トラックか
ら読出された時に生じる。このようrtc、前記リスト
の底部は自由状態のフレームまたは最近はとんど使用さ
れなかったフレームを保有し、このリストの底部にある
フレームは一般にステージ操作されるトラックへの割当
てに最適のものである。熱論、フレームが割当てられる
時、このフレームは前記リストの頂部に移動されてこれ
が最も最近使用されたことを表示するO しかし、仮にLRU法によっても、もし1つ以上のクラ
スの異なるサイズの領域がキャッシュ・メモリーに存在
するならば、第1の形式のものは第2の形式のものより
も遥かに頻繁に使用されることになり、その結果第1の
領域形式は、例えば第2の領域形式のリストよりも比較
的少ない自由状態のフレームを有することになる。一般
に、システムの性能は、第2の形式の記憶域から第1の
形式の記憶域に領域を再割当てすることにより改善する
ことができる。この領域の再割当て法はキャッシュ空間
の有効な使用を可能にする。ある特定の素子に適するフ
レームに対する需要は時と共に変化するため、領域を需
要に基づいた素子形式への動的な割当ておよび割当て解
除を行なうことが特に望ましい。本発明の重要な特質は
適合即ち動的な領域割当て手法に関し、望ましい実施態
様においては、本発明は異なるトラック記憶容量を有す
る2つの形式のディスク記憶素子を支持するものであり
、1つのキャッシュにおいて6つ以上のクラスの領域を
提供することも可能であるが、例えば、素子形式Aから
素子形式Bへの領域の再割当てを行なうこ、とができる
。このように、キャッシュ空間は入出力動作に比例して
割当てられるものである。
ムの割当て、即ち、最適のフレームを選んでキャッシュ
Oアレーに対してステージング操作を行なうためあるト
ラックを割当てることである。この「最適なフレーム」
は、どれかのトラック忙その時割当てが行なわれないも
のである。しかし、もしフレームが全く自由状態になけ
れば、あるフレームがその時割当てられていたトラック
からこのフレームを「取外し」、ステージ操作を行なう
べき新たなトラックに対して再割当てされなければなら
ない。この取外しに最適のフレームは、上位コンピュー
タによりもはや読出されないものである。上位コン上0
ユータにより以前として読出されつ、つあるフレームは
、データが読出される前にフレームが取外されるならば
トラックのステージング操作に費やされるオーバーヘッ
ドは回復されない故に、取外すべきではない。本発明の
現在望ましい実施態様においては、フレームの割当ては
「最近はとんど使用されないJ (LRlJ)手法を用
いて実施される。このLRU法はフレームのリストによ
って構成される。このリストは、最も後で使用されたフ
レームが配される頂部と、最近使用されなかったフレー
ムおよび自由状態にあるフレームに対応する底部とを有
する。このためあるフレームが使用されると、即ちステ
ージング操作または読出し力で行なわれる時、その名前
が前されると、これはリストの底部に移動される。この
状態は、上位コンピュータが書込み操作をこれから前記
フレームの内容がステージング操作されたディスクにお
ける領域に送る時に生じて前記フレームにおけるデータ
を無効化し、あるいは全てのレコードが前記トラックか
ら読出された時に生じる。このようrtc、前記リスト
の底部は自由状態のフレームまたは最近はとんど使用さ
れなかったフレームを保有し、このリストの底部にある
フレームは一般にステージ操作されるトラックへの割当
てに最適のものである。熱論、フレームが割当てられる
時、このフレームは前記リストの頂部に移動されてこれ
が最も最近使用されたことを表示するO しかし、仮にLRU法によっても、もし1つ以上のクラ
スの異なるサイズの領域がキャッシュ・メモリーに存在
するならば、第1の形式のものは第2の形式のものより
も遥かに頻繁に使用されることになり、その結果第1の
領域形式は、例えば第2の領域形式のリストよりも比較
的少ない自由状態のフレームを有することになる。一般
に、システムの性能は、第2の形式の記憶域から第1の
形式の記憶域に領域を再割当てすることにより改善する
ことができる。この領域の再割当て法はキャッシュ空間
の有効な使用を可能にする。ある特定の素子に適するフ
レームに対する需要は時と共に変化するため、領域を需
要に基づいた素子形式への動的な割当ておよび割当て解
除を行なうことが特に望ましい。本発明の重要な特質は
適合即ち動的な領域割当て手法に関し、望ましい実施態
様においては、本発明は異なるトラック記憶容量を有す
る2つの形式のディスク記憶素子を支持するものであり
、1つのキャッシュにおいて6つ以上のクラスの領域を
提供することも可能であるが、例えば、素子形式Aから
素子形式Bへの領域の再割当てを行なうこ、とができる
。このように、キャッシュ空間は入出力動作に比例して
割当てられるものである。
本発明の現在望ましい実施態様によれば、領域割当て決
定法により3つの問題点が考えられろ。
定法により3つの問題点が考えられろ。
即ち、
領域の切換え頻度はどの程度か?
何時領域の切換えを行なうか?
どの領域を切換えるか?
である。第1の問題に関して、現在望ましい実施態様に
おいては領域の切換えは1000 回のステージング操
作毎に1回程度、即ち1000回毎に1つのデータ・ト
ラックがキャッシュ・メモリ □−に読込まれる
のである。本発明の比較的大きな実施態様の場合には、
上記の頻度は略々60乃至60秒毎に生じることが予測
される。
おいては領域の切換えは1000 回のステージング操
作毎に1回程度、即ち1000回毎に1つのデータ・ト
ラックがキャッシュ・メモリ □−に読込まれる
のである。本発明の比較的大きな実施態様の場合には、
上記の頻度は略々60乃至60秒毎に生じることが予測
される。
第2の問題は何時領域の切換えを行なうかの問題である
。この判定は、素子形式Bに対する素子形式Aのキャッ
シュ入出力アクテイビテイ化量の不平衡状態に基づかな
ければならない。この入出力アクティビティの適当な測
定方法は、各素子形式に対して割当てられた領域に対す
るステージ操作をカウントすることである。このステー
ジ操作カウント比率は理想的なFフレーム使用可能」率
と等しくなければならない。更に、フレームの使用可能
率は、領域当りのフレーム数が既知のため理想的な「割
当てられた領域」比率の計算に使用することができる。
。この判定は、素子形式Bに対する素子形式Aのキャッ
シュ入出力アクテイビテイ化量の不平衡状態に基づかな
ければならない。この入出力アクティビティの適当な測
定方法は、各素子形式に対して割当てられた領域に対す
るステージ操作をカウントすることである。このステー
ジ操作カウント比率は理想的なFフレーム使用可能」率
と等しくなければならない。更に、フレームの使用可能
率は、領域当りのフレーム数が既知のため理想的な「割
当てられた領域」比率の計算に使用することができる。
もし実際の領域の割当て比率が理想的な領域割当て率と
異なるならば、これが領域を切換えるべき時間である。
異なるならば、これが領域を切換えるべき時間である。
このように、単に領域形式のアクティビティを測定する
場合とは対照的に種々のフレームの相対的サイズについ
ての配慮が取除かれる。
場合とは対照的に種々のフレームの相対的サイズについ
ての配慮が取除かれる。
第6の最も難しい問題はどの領域を切換えるべきかの判
定である。多くの最近使用されたフレームを有する領域
は明らかに切換えのための良好な候補ではない。切換え
に最適な領域は、その代り多くの古い自由状態のフレー
ムを有する領域である。2つの代替的な場合が考えられ
る。第1に、前述のLFtUリストは各領域のフレーム
の相対的な履歴を示すから、このリストはどの領域を切
換えるかの決定のため使用することができる。前述のリ
ストにおける予め定めた数のフレームの走査を行なうこ
とができ−この領域に帰属するフレームがリスト上に見
出された時各領域に対するカウンタな増進させる。従っ
て、この走査の終りにおける最も小さなカウントを有す
る領域は、その時はとんど活動状態にないものである。
定である。多くの最近使用されたフレームを有する領域
は明らかに切換えのための良好な候補ではない。切換え
に最適な領域は、その代り多くの古い自由状態のフレー
ムを有する領域である。2つの代替的な場合が考えられ
る。第1に、前述のLFtUリストは各領域のフレーム
の相対的な履歴を示すから、このリストはどの領域を切
換えるかの決定のため使用することができる。前述のリ
ストにおける予め定めた数のフレームの走査を行なうこ
とができ−この領域に帰属するフレームがリスト上に見
出された時各領域に対するカウンタな増進させる。従っ
て、この走査の終りにおける最も小さなカウントを有す
る領域は、その時はとんど活動状態にないものである。
この走査はリストの頂部に対して限定すべきであるが、
これはここでアクティビティが生じる場所であるためで
ある。これが古い無効なフレームが集まる場所であるた
め、このリストの最下位が最も有利に索引することがで
きる。しかし、もし唯1つの活動状態ノフレームしか多
数の古いフレームと同じ領域にない場合には、好ましか
らざる領域再割当て操作により充分に無効化されよう。
これはここでアクティビティが生じる場所であるためで
ある。これが古い無効なフレームが集まる場所であるた
め、このリストの最下位が最も有利に索引することがで
きる。しかし、もし唯1つの活動状態ノフレームしか多
数の古いフレームと同じ領域にない場合には、好ましか
らざる領域再割当て操作により充分に無効化されよう。
2番目の代替策は、最近はとんど使用されなかったフレ
ームのリストを検査する代りに各領域に対するステージ
ング操作をカウントすることである。これにより再び相
対的なアクティビティの表示が得られることになろう。
ームのリストを検査する代りに各領域に対するステージ
ング操作をカウントすることである。これにより再び相
対的なアクティビティの表示が得られることになろう。
このように、本発明による領域切換え法は2つの部分を
有することが明らかであろう。即ち、領域を1つのクラ
スから他のクラスに切換えることが望ましいかどうかを
判定する判断部分と、切換えるべき領域を決定する実際
の切換え部分である。
有することが明らかであろう。即ち、領域を1つのクラ
スから他のクラスに切換えることが望ましいかどうかを
判定する判断部分と、切換えるべき領域を決定する実際
の切換え部分である。
特定の望ましい実施態様においては、この判断部分は実
行時間を節減するため駆動される表でありこれは即ち素
子がONになる時、その結果の再割当ての決定がその時
単に複雑な計算を要さずに索引法によることができるよ
うな相対的なアクティビティ・しばルを変更するため領
域の理想的な割当てを表示する索引表が生成されて記憶
される。
行時間を節減するため駆動される表でありこれは即ち素
子がONになる時、その結果の再割当ての決定がその時
単に複雑な計算を要さずに索引法によることができるよ
うな相対的なアクティビティ・しばルを変更するため領
域の理想的な割当てを表示する索引表が生成されて記憶
される。
領域の切換え操作が2つの素子形式の間に生じる本発明
の望ましい実施態様において使用可能なこのような領域
切換え決定表を第3図に示す。
の望ましい実施態様において使用可能なこのような領域
切換え決定表を第3図に示す。
この表は事後工MPL時間に(即ち、素子の最初のロー
ディングと同時に)全ての可能な領域切換え決定の実施
により構成され、これによりこの決定が実際に行なわれ
る時計算時間を短縮する。この決定は、このように、例
えば素子形式Aに対して割当てられた領域数および「領
域使用頻度」−形式Aの素子からの実際のステージング
操作を表わす数−に基づく特定の時点の簡単な表の索引
となるのである。第6図の実施態様においては、この表
は素子形式Aの領域に対するステージング操作の相対数
を表わす水平軸に沿った零と15(即ち、16進数にお
けるF)との間の数を示している。各欄はこのためAの
使用頻度数を表わす。この表は、その各々がある時点に
おいて素子Aに対して割当てられた領域数を表わすある
時点における1つの水平方向の「行」により構成される
。このように、各行毎、即ちA型の素子に対して割当て
られた各領域数毎に、理想的な目標の素子Aの使用頻度
が存在する。このため、木表は素子Aに割当てられた領
域の数とある時点における段階Aの相対数との間の相互
関係を提供する。もしこの対応が見出されなげれば、領
域の切換え操作を実施すべきことは明らかである。目標
の素子Aの使用頻度は、理想的なキャッシュの区分が下
記の状態において達成されるという前提に基づいて計算
される。即ち、 フレームA ステージA フレームB ステージB 「目標Aステージ」なる用語を定義することができるが
、これはもしステージング操作がキャッシュの割当てと
均衡していた場合に素子形式Aに対して割当てられた領
域について生じることになるステージ数である。これは
、実際のフレームAの使用頻度と比較することができる
目標Aフレーム使用頻度をもたらし、どれだけの頻度で
実際のステージ・アクティビティを理想とされる頻度と
比較するかを決定する。このよ5に、第3はの表におい
ては、各水平方向の行はある素子に対して割当てられた
ある領域数を表わす。この目標A使用頻度はこの時この
行について同じである。3つの表示の内の1つがこの時
実際の使用による前記性の各位置に対して充填される。
ディングと同時に)全ての可能な領域切換え決定の実施
により構成され、これによりこの決定が実際に行なわれ
る時計算時間を短縮する。この決定は、このように、例
えば素子形式Aに対して割当てられた領域数および「領
域使用頻度」−形式Aの素子からの実際のステージング
操作を表わす数−に基づく特定の時点の簡単な表の索引
となるのである。第6図の実施態様においては、この表
は素子形式Aの領域に対するステージング操作の相対数
を表わす水平軸に沿った零と15(即ち、16進数にお
けるF)との間の数を示している。各欄はこのためAの
使用頻度数を表わす。この表は、その各々がある時点に
おいて素子Aに対して割当てられた領域数を表わすある
時点における1つの水平方向の「行」により構成される
。このように、各行毎、即ちA型の素子に対して割当て
られた各領域数毎に、理想的な目標の素子Aの使用頻度
が存在する。このため、木表は素子Aに割当てられた領
域の数とある時点における段階Aの相対数との間の相互
関係を提供する。もしこの対応が見出されなげれば、領
域の切換え操作を実施すべきことは明らかである。目標
の素子Aの使用頻度は、理想的なキャッシュの区分が下
記の状態において達成されるという前提に基づいて計算
される。即ち、 フレームA ステージA フレームB ステージB 「目標Aステージ」なる用語を定義することができるが
、これはもしステージング操作がキャッシュの割当てと
均衡していた場合に素子形式Aに対して割当てられた領
域について生じることになるステージ数である。これは
、実際のフレームAの使用頻度と比較することができる
目標Aフレーム使用頻度をもたらし、どれだけの頻度で
実際のステージ・アクティビティを理想とされる頻度と
比較するかを決定する。このよ5に、第3はの表におい
ては、各水平方向の行はある素子に対して割当てられた
ある領域数を表わす。この目標A使用頻度はこの時この
行について同じである。3つの表示の内の1つがこの時
実際の使用による前記性の各位置に対して充填される。
もし実際の素子Aの使用頻度が目標素子A使用頻度より
も大きければB対Aの領域の再割当てが継続中である、
即ち望ましいことを表示する小さなaで埋められ、これ
により、もしAフレームの割当てに対する要求がその時
の割当てに基づいて満たすことができなければ、フレー
ムのBからAへの切換えが受入れるべき動作であること
を表示する。同様に、もし素子Aの使用頻度が目標素子
Aの使用頻度よりも小さければ、継続中のAからBへの
切換えを表示する小さなりで埋められる。さもなければ
、「切換え要求がない」条件を示すnが充填される。
も大きければB対Aの領域の再割当てが継続中である、
即ち望ましいことを表示する小さなaで埋められ、これ
により、もしAフレームの割当てに対する要求がその時
の割当てに基づいて満たすことができなければ、フレー
ムのBからAへの切換えが受入れるべき動作であること
を表示する。同様に、もし素子Aの使用頻度が目標素子
Aの使用頻度よりも小さければ、継続中のAからBへの
切換えを表示する小さなりで埋められる。さもなければ
、「切換え要求がない」条件を示すnが充填される。
表■から判るように、各行に対する列のいくつかの典型
的な列6は切換えが継続中でないことを示すnを有する
。これは、生じることが予期できる短い期間にわたる領
域形式当りのステージ数の統計的な賓動の故の不必要な
領域の切換えを阻止するために望ましいが、領域の再割
当てが要求されることは表示しない。このように、列に
おける複数のnが本発明による領域の切換えに対する擬
似的な減衰効果を生じるのである。
的な列6は切換えが継続中でないことを示すnを有する
。これは、生じることが予期できる短い期間にわたる領
域形式当りのステージ数の統計的な賓動の故の不必要な
領域の切換えを阻止するために望ましいが、領域の再割
当てが要求されることは表示しない。このように、列に
おける複数のnが本発明による領域の切換えに対する擬
似的な減衰効果を生じるのである。
前述の如く、領域の切換えは1つのフレームに対する要
求に基づき、また統計保持操作において生じた「領域切
換え存続中」の値に基づいて開始される。その後、もし
データが一時保管され適正な素子形式に対するフレーム
が自由状態でなく、また適正な素子形式のフレームを提
供することになる領域切換え操作の続行中であれば、こ
の領域切換え操作が開始されるのである。
求に基づき、また統計保持操作において生じた「領域切
換え存続中」の値に基づいて開始される。その後、もし
データが一時保管され適正な素子形式に対するフレーム
が自由状態でなく、また適正な素子形式のフレームを提
供することになる領域切換え操作の続行中であれば、こ
の領域切換え操作が開始されるのである。
領域切換え操作において実施される最初のタスクは、切
換えのためにはどの領域が最適であるかの判定である。
換えのためにはどの領域が最適であるかの判定である。
「出発点」の素子形式の最近はとんど使用されないリス
トを走査して、最近はとんど使用されなかったリストの
頂部の半分において最も少ないフレームをどの領域が有
するかを判定する。もしこの領域が更に「使用中」もし
くは「進行中のステージ」なる表示を付したフレームを
持たなければ、これが切換えのため最適のものであると
される。さもなければ、最近はとんど使用されないリス
トの頂部における次に頻度の少ないフレームを有する領
域が選択される。一旦ある領域が切換えのため選択され
ると、この領域は新たな素子形式に変換される。この領
域に属する全ての有効フレームは割当てが解除される。
トを走査して、最近はとんど使用されなかったリストの
頂部の半分において最も少ないフレームをどの領域が有
するかを判定する。もしこの領域が更に「使用中」もし
くは「進行中のステージ」なる表示を付したフレームを
持たなければ、これが切換えのため最適のものであると
される。さもなければ、最近はとんど使用されないリス
トの頂部における次に頻度の少ないフレームを有する領
域が選択される。一旦ある領域が切換えのため選択され
ると、この領域は新たな素子形式に変換される。この領
域に属する全ての有効フレームは割当てが解除される。
この領域における全てのフレームは「出発点の」素子形
式の最近はとんど使用されないリストから外される。新
たな領域と適合する新たなフレーム数は新たな素子の形
式の最近はとんど使用されないリストの底部に関連付け
られる。最後に、キャッシュ・アレーに対する新たなポ
インタが新たな素子形式のフレーム・サイズに従って各
フレームに対して割当てられる。このように、領域変換
ルーチンが終了すると、新たなフレームが新たな素子形
式の最近はとんど使用されないフレーム・リストの底部
に置かれて自由状態である旨の表示がなされる。
式の最近はとんど使用されないリストから外される。新
たな領域と適合する新たなフレーム数は新たな素子の形
式の最近はとんど使用されないリストの底部に関連付け
られる。最後に、キャッシュ・アレーに対する新たなポ
インタが新たな素子形式のフレーム・サイズに従って各
フレームに対して割当てられる。このように、領域変換
ルーチンが終了すると、新たなフレームが新たな素子形
式の最近はとんど使用されないフレーム・リストの底部
に置かれて自由状態である旨の表示がなされる。
第4図は、本発明による判定法を示す概略図である。前
述の如く、プログラムの初期ロードにおいて、本発明に
よる判定法を示す概略図である。
述の如く、プログラムの初期ロードにおいて、本発明に
よる判定法を示す概略図である。
前述の如く、初期プログラム・ローディング即ち30の
rIMPL時間」においては、本表はブロック62にお
ける如く全ての可能な判定により書込まれ、次いで本表
は第6図の如く示されろ。この情報はその時領域切書込
判定モジ・ニールろ4により使用可能である。この判定
法はまた、領域の使用状態がその時領域の割当てと対応
するかどうかについて表示するブロック66における如
き領域の切換え情況値が与えられろ。従って、参考のた
め本文に引用する1981年11月27日出願の係属中
の米国特許出願第、325.650号にオ6いて論述さ
れるように、キャッシュ管理装置24によりブロック3
8における如くステージ要求が有効化されると同時に、
領域の切換え統計情報が検査されて切換えるべき領域が
存在するならばどの領域を切換えるべきかについて判定
する。典型的には、この操作は例えば1000ステージ
毎に実施される。もし第6図のブロックろ2における如
く表のアクセスによりある不平衡状態が検出されると、
切換えが継続中である旨のフラッグがセットされる。然
る後、1つのフレームがあるデータ・レコードに対する
割当て要求と同時に、もし自由状態のフレームが得られ
ず、またもし適当な切換えが継続中であれば、最近はと
んど使用されない領域が前述の如(ブロック14に示さ
れるように切換えられろ。このようにブロック46にお
いて変換された領域はこの時新たな素子形式、例えば形
式Aに割当てられ、木表はこの事実を反映するためブロ
ック48において更新され、使用可能なフレームの登録
簿も同様にブロック50において更新されるのである。
rIMPL時間」においては、本表はブロック62にお
ける如く全ての可能な判定により書込まれ、次いで本表
は第6図の如く示されろ。この情報はその時領域切書込
判定モジ・ニールろ4により使用可能である。この判定
法はまた、領域の使用状態がその時領域の割当てと対応
するかどうかについて表示するブロック66における如
き領域の切換え情況値が与えられろ。従って、参考のた
め本文に引用する1981年11月27日出願の係属中
の米国特許出願第、325.650号にオ6いて論述さ
れるように、キャッシュ管理装置24によりブロック3
8における如くステージ要求が有効化されると同時に、
領域の切換え統計情報が検査されて切換えるべき領域が
存在するならばどの領域を切換えるべきかについて判定
する。典型的には、この操作は例えば1000ステージ
毎に実施される。もし第6図のブロックろ2における如
く表のアクセスによりある不平衡状態が検出されると、
切換えが継続中である旨のフラッグがセットされる。然
る後、1つのフレームがあるデータ・レコードに対する
割当て要求と同時に、もし自由状態のフレームが得られ
ず、またもし適当な切換えが継続中であれば、最近はと
んど使用されない領域が前述の如(ブロック14に示さ
れるように切換えられろ。このようにブロック46にお
いて変換された領域はこの時新たな素子形式、例えば形
式Aに割当てられ、木表はこの事実を反映するためブロ
ック48において更新され、使用可能なフレームの登録
簿も同様にブロック50において更新されるのである。
本文に付属書Aとして添付され参考のため本文に引用さ
れているのは、本発明の装置の実施のため使用される方
法の詳細な記述である「モジュール:領域の切換え法」
なる題名の文献である。この文献は主として擬似コード
と呼ばれる従来の速記言語の形態で書かれ、その文法は
これもまた本文に添付されて参考として引用された付属
書A−1としてrCHINOOK Pseudo Go
de Conventions jと題された文献にお
いて説明されている。解説要の擬似コード文法書と共に
付属書類Aの領域切換え法の文献を読めば、当業者なら
ば本発明の方法の実施に何等の困難もないであろう。
れているのは、本発明の装置の実施のため使用される方
法の詳細な記述である「モジュール:領域の切換え法」
なる題名の文献である。この文献は主として擬似コード
と呼ばれる従来の速記言語の形態で書かれ、その文法は
これもまた本文に添付されて参考として引用された付属
書A−1としてrCHINOOK Pseudo Go
de Conventions jと題された文献にお
いて説明されている。解説要の擬似コード文法書と共に
付属書類Aの領域切換え法の文献を読めば、当業者なら
ば本発明の方法の実施に何等の困難もないであろう。
当業者は、本文に述べた本発明の技術的要件および諸口
的を充足するソリッド・ステート・メモリーを分割する
ための領域区分システムについての記述であることが認
識されよう。特に、共通にアクセスされるデータ量、例
えばトラックが充分に適合するサイズを有する領域の使
用により、古いレコードを新たなデータにより重ね書き
する際に断片化を生じることなくデータの有効な格納を
行なうものである。特に、適合する領域切換え法の提供
により、仮に相対的な領域の使用状態が時間的に変化す
る場合でも、メモリーの有効な使用を可能にするもので
ある。更に、本発明の方法は特定、的に本文に記述した
2つの素子の実施態様を越える摘要性を有するものであ
ること、また従って本文に述べた本発明の内容はその範
囲を限定するものと考えるべきものではなくその単なる
例示であり、本発明の範囲は頭書の特許請求の範囲によ
ってのみ更に適正に限定されるものであることが理解さ
れよう。
的を充足するソリッド・ステート・メモリーを分割する
ための領域区分システムについての記述であることが認
識されよう。特に、共通にアクセスされるデータ量、例
えばトラックが充分に適合するサイズを有する領域の使
用により、古いレコードを新たなデータにより重ね書き
する際に断片化を生じることなくデータの有効な格納を
行なうものである。特に、適合する領域切換え法の提供
により、仮に相対的な領域の使用状態が時間的に変化す
る場合でも、メモリーの有効な使用を可能にするもので
ある。更に、本発明の方法は特定、的に本文に記述した
2つの素子の実施態様を越える摘要性を有するものであ
ること、また従って本文に述べた本発明の内容はその範
囲を限定するものと考えるべきものではなくその単なる
例示であり、本発明の範囲は頭書の特許請求の範囲によ
ってのみ更に適正に限定されるものであることが理解さ
れよう。
第1図は本発明のシステムを示すブロック図、第2図は
個々の領域をその内部に記憶することを要するトラック
・サイズに従って再分割することができる方法を示す図
、第6図はある特定q時点においてどの領域を切換える
かを判定する再使用される領域切換え判定表を示す図、
および第4図は領域切換え判定を実際の切換え操作の実
施のため使用する方法および手順が進行するに伴って制
御表の更新の方法を示す図である。 10・・・上位コンピュータ、12・・・チャネル・イ
ンターフェース、14・・・ディスク・ト9ライブ、1
6・・・記憶ディレクタ、18・・・制御モジュール、
20・・・キャッシュ・メモリー・サブシステム、22
・・・キャッシュ・アレー、24・・・キャッシュ管理
装置。 特許出願人 ストレージ・テクノロジー・コーポレーシ
ョン (外4名) −二rυ、f −二U勾、2 n神、J 第1頁の続き 0発 明 者 ロパート・ジエイ・モレノアメリカ合衆
国コロラド州8030 3ボールダー・ホルメス・ブレ イス5169 0発 明 者 ディーン・ピー・キナードアメリカ合衆
国コロラド州8050 10ングモント・ゴマンチ・ロ ード8922
個々の領域をその内部に記憶することを要するトラック
・サイズに従って再分割することができる方法を示す図
、第6図はある特定q時点においてどの領域を切換える
かを判定する再使用される領域切換え判定表を示す図、
および第4図は領域切換え判定を実際の切換え操作の実
施のため使用する方法および手順が進行するに伴って制
御表の更新の方法を示す図である。 10・・・上位コンピュータ、12・・・チャネル・イ
ンターフェース、14・・・ディスク・ト9ライブ、1
6・・・記憶ディレクタ、18・・・制御モジュール、
20・・・キャッシュ・メモリー・サブシステム、22
・・・キャッシュ・アレー、24・・・キャッシュ管理
装置。 特許出願人 ストレージ・テクノロジー・コーポレーシ
ョン (外4名) −二rυ、f −二U勾、2 n神、J 第1頁の続き 0発 明 者 ロパート・ジエイ・モレノアメリカ合衆
国コロラド州8030 3ボールダー・ホルメス・ブレ イス5169 0発 明 者 ディーン・ピー・キナードアメリカ合衆
国コロラド州8050 10ングモント・ゴマンチ・ロ ード8922
Claims (1)
- 【特許請求の範囲】 1、 複数のクラスの記憶素子とは異なる予め定めた長
さで受取るデータの記憶のための領域にメモリー・アレ
ーを分割する方法において、前記アレーを、これに記憶
したデータの前記の予め定めた長さの実質的に整数倍で
あるサイズの領域に再分割する工程を含むことを特徴と
する方法。 2、前記領域が初期化段階において1つのクラスの素子
に割当てられることを特徴とする特許請求の範囲第1項
記載の方法。 ろ、前記領域の割当てが時間的経過に従っである素子ク
ラスから他の素子クラスへ変更することができ、この変
更は前記領域の相対的な使用状態に対するある特定の素
子形式に対し割当てられた領域数の化上に従って制御さ
れることを特徴とする特許請求の範囲第2項記載の方法
。 4、前記のデータの予め定めた長さは磁気ディスク記憶
媒体に記憶される完全なデータ、・トラックと相等する
ことを特徴とする特許請求の等間第1項記載の方法。 5、複数の異なる予め定めた長さのデータ・レコードの
記憶のため使用されるべき記憶場所のアレーを構成する
方法において、 前記の全ての複数の子め定めたデータ長さの実質的に整
数倍である領域サイズを決定し、前記アレーをこのよう
に決定した領域に分割し前記領域の各々を前記の予め定
めたデータ長さの1つに割当てる工程を含むことを特徴
とする方 −法。 6、前記領域の各々の割当ては時間的に前記領域のクラ
スの各々の使用状態に従って変動することができること
を特徴とする特許請求の範囲第5項記載の方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US325351 | 1981-11-27 | ||
US06/325,351 US4430712A (en) | 1981-11-27 | 1981-11-27 | Adaptive domain partitioning of cache memory space |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS58161060A true JPS58161060A (ja) | 1983-09-24 |
Family
ID=23267530
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP57208381A Pending JPS58161060A (ja) | 1981-11-27 | 1982-11-27 | キヤツシユ・メモリ−空間の適合領域区分方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US4430712A (ja) |
EP (1) | EP0080877A3 (ja) |
JP (1) | JPS58161060A (ja) |
CA (1) | CA1198813A (ja) |
Families Citing this family (43)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4503501A (en) * | 1981-11-27 | 1985-03-05 | Storage Technology Corporation | Adaptive domain partitioning of cache memory space |
CA1253627A (en) * | 1982-11-09 | 1989-05-02 | Paul B. Brown | Dynamic addressing for variable track length cache memory |
JPS59100964A (ja) * | 1982-12-01 | 1984-06-11 | Hitachi Ltd | ディスク制御システム及びその並列データ転送方法 |
US4499539A (en) * | 1982-12-20 | 1985-02-12 | International Business Machines Corporation | Method and apparatus for limiting allocated data-storage space in a data-storage unit |
US4724518A (en) * | 1983-07-29 | 1988-02-09 | Hewlett-Packard Company | Odd/even storage in cache memory |
US4875155A (en) * | 1985-06-28 | 1989-10-17 | International Business Machines Corporation | Peripheral subsystem having read/write cache with record access |
GB2184267A (en) * | 1985-12-13 | 1987-06-17 | Hitachi Ltd | File allocation |
US5283791A (en) * | 1988-08-02 | 1994-02-01 | Cray Research Systems, Inc. | Error recovery method and apparatus for high performance disk drives |
US5218689A (en) * | 1988-08-16 | 1993-06-08 | Cray Research, Inc. | Single disk emulation interface for an array of asynchronously operating disk drives |
US4947319A (en) * | 1988-09-15 | 1990-08-07 | International Business Machines Corporation | Arbitral dynamic cache using processor storage |
JP2804115B2 (ja) * | 1988-09-19 | 1998-09-24 | 株式会社日立製作所 | ディスクファイルシステム |
US4905141A (en) * | 1988-10-25 | 1990-02-27 | International Business Machines Corporation | Partitioned cache memory with partition look-aside table (PLAT) for early partition assignment identification |
EP0389151A3 (en) * | 1989-03-22 | 1992-06-03 | International Business Machines Corporation | System and method for partitioned cache memory management |
US5394531A (en) * | 1989-04-03 | 1995-02-28 | International Business Machines Corporation | Dynamic storage allocation system for a prioritized cache |
DE69128741T2 (de) * | 1990-05-18 | 1998-07-16 | Koninkl Philips Electronics Nv | Mehrstufiger Befehlscachespeicher und Verwendungsverfahren dafür |
US5276832A (en) * | 1990-06-19 | 1994-01-04 | Dell U.S.A., L.P. | Computer system having a selectable cache subsystem |
US5875464A (en) * | 1991-12-10 | 1999-02-23 | International Business Machines Corporation | Computer system with private and shared partitions in cache |
US5367653A (en) * | 1991-12-26 | 1994-11-22 | International Business Machines Corporation | Reconfigurable multi-way associative cache memory |
FR2688612A1 (fr) * | 1992-03-13 | 1993-09-17 | Inst Nat Rech Inf Automat | Dispositif d'antememoire. |
JP2772205B2 (ja) * | 1992-09-22 | 1998-07-02 | 北海道日本電気ソフトウェア株式会社 | データ領域生成方式 |
US6081623A (en) * | 1995-10-11 | 2000-06-27 | Citrix Systems, Inc. | Method for lossless bandwidth compression of a series of glyphs |
US6016535A (en) * | 1995-10-11 | 2000-01-18 | Citrix Systems, Inc. | Method for dynamically and efficiently caching objects by subdividing cache memory blocks into equally-sized sub-blocks |
US5914906A (en) | 1995-12-20 | 1999-06-22 | International Business Machines Corporation | Field programmable memory array |
US5802003A (en) * | 1995-12-20 | 1998-09-01 | International Business Machines Corporation | System for implementing write, initialization, and reset in a memory array using a single cell write port |
US6034945A (en) * | 1996-05-15 | 2000-03-07 | Cisco Technology, Inc. | Method and apparatus for per traffic flow buffer management |
US6057857A (en) | 1996-06-12 | 2000-05-02 | Citrix Systems, Inc. | Method for the lossless compression of lines in a distributed computer system |
US5826006A (en) * | 1996-09-30 | 1998-10-20 | International Business Machines Corporation | Method and apparatus for testing the data output system of a memory system |
US5689514A (en) * | 1996-09-30 | 1997-11-18 | International Business Machines Corporation | Method and apparatus for testing the address system of a memory system |
US6487202B1 (en) | 1997-06-30 | 2002-11-26 | Cisco Technology, Inc. | Method and apparatus for maximizing memory throughput |
US6430191B1 (en) | 1997-06-30 | 2002-08-06 | Cisco Technology, Inc. | Multi-stage queuing discipline |
US6526060B1 (en) | 1997-12-05 | 2003-02-25 | Cisco Technology, Inc. | Dynamic rate-based, weighted fair scheduler with explicit rate feedback option |
US6370622B1 (en) | 1998-11-20 | 2002-04-09 | Massachusetts Institute Of Technology | Method and apparatus for curious and column caching |
US6775292B1 (en) | 2000-01-24 | 2004-08-10 | Cisco Technology, Inc. | Method for servicing of multiple queues carrying voice over virtual circuits based on history |
US7142558B1 (en) | 2000-04-17 | 2006-11-28 | Cisco Technology, Inc. | Dynamic queuing control for variable throughput communication channels |
US7127525B2 (en) * | 2000-05-26 | 2006-10-24 | Citrix Systems, Inc. | Reducing the amount of graphical line data transmitted via a low bandwidth transport protocol mechanism |
US7275135B2 (en) * | 2001-08-31 | 2007-09-25 | Intel Corporation | Hardware updated metadata for non-volatile mass storage cache |
US20030074524A1 (en) | 2001-10-16 | 2003-04-17 | Intel Corporation | Mass storage caching processes for power reduction |
US20050138296A1 (en) * | 2003-12-18 | 2005-06-23 | Coulson Richard L. | Method and system to alter a cache policy |
US7877547B2 (en) * | 2004-12-29 | 2011-01-25 | International Business Machines Corporation | Method, system and circuit for efficiently managing a cache storage device |
US8423673B2 (en) | 2005-03-14 | 2013-04-16 | Citrix Systems, Inc. | Method and apparatus for updating a graphical display in a distributed processing environment using compression |
US8171169B2 (en) * | 2005-03-14 | 2012-05-01 | Citrix Systems, Inc. | Method and apparatus for updating a graphical display in a distributed processing environment |
US9514055B2 (en) * | 2009-12-31 | 2016-12-06 | Seagate Technology Llc | Distributed media cache for data storage systems |
US9223710B2 (en) | 2013-03-16 | 2015-12-29 | Intel Corporation | Read-write partitioning of cache memory |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5228231A (en) * | 1975-06-23 | 1977-03-03 | Ibm | Storage device |
JPS55157054A (en) * | 1979-05-25 | 1980-12-06 | Nec Corp | Disc cash unit |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3840863A (en) * | 1973-10-23 | 1974-10-08 | Ibm | Dynamic storage hierarchy system |
GB2052118A (en) * | 1979-06-04 | 1981-01-21 | Memorex Corp | Disc Cache Subsystem |
-
1981
- 1981-11-27 US US06/325,351 patent/US4430712A/en not_active Expired - Lifetime
-
1982
- 1982-11-25 CA CA000416383A patent/CA1198813A/en not_active Expired
- 1982-11-26 EP EP82306314A patent/EP0080877A3/en not_active Withdrawn
- 1982-11-27 JP JP57208381A patent/JPS58161060A/ja active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5228231A (en) * | 1975-06-23 | 1977-03-03 | Ibm | Storage device |
JPS55157054A (en) * | 1979-05-25 | 1980-12-06 | Nec Corp | Disc cash unit |
Also Published As
Publication number | Publication date |
---|---|
EP0080877A3 (en) | 1985-06-26 |
CA1198813A (en) | 1985-12-31 |
EP0080877A2 (en) | 1983-06-08 |
US4430712A (en) | 1984-02-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPS58161060A (ja) | キヤツシユ・メモリ−空間の適合領域区分方法 | |
US4503501A (en) | Adaptive domain partitioning of cache memory space | |
US6473830B2 (en) | System and method for organizing data stored in a log structured array | |
EP0120330B1 (en) | Digital computing apparatus and method for operating the same | |
US5530850A (en) | Data storage library array with log-structured file system which allows simultaneous write and garbage collection | |
US6988165B2 (en) | System and method for intelligent write management of disk pages in cache checkpoint operations | |
KR100324867B1 (ko) | 압축레코드저장을위한메모리공간할당방법및메모리공간을할당하도록컴퓨터를제어하는메모리매체 | |
US6185665B1 (en) | File management apparatus, file management method, and recording medium containing file management program | |
US5666560A (en) | Storage method and hierarchical padding structure for direct access storage device (DASD) data compression | |
US5345575A (en) | Write optimized disk storage device | |
EP0747806B1 (en) | Data compression method and structure for a direct access storage device | |
US20050021900A1 (en) | Magnetic disk unit, file management system, and file management method | |
USRE36989E (en) | Virtual storage system and method | |
US20240094936A1 (en) | Storage system, memory management method, and management node | |
GB2377049A (en) | Billing for utilisation of a data storage array | |
KR20100077156A (ko) | 씬 프로비저닝 이송 및 스크러빙 방법 | |
US6223267B1 (en) | Dynamically allocable RAM disk | |
US4580211A (en) | Method for controlling storage of data sets in memory unit | |
US9009440B2 (en) | Adjustment of data storage capacity provided by a storage system | |
US5761710A (en) | Information apparatus with cache memory for data and data management information | |
JP4585052B2 (ja) | データ記録システム | |
JPH08101783A (ja) | ファイルシステム | |
KR102482191B1 (ko) | 하이브리드 메모리 장치 및 이의 관리 방법 | |
JPH0282332A (ja) | 索引ファイルのインデックス用入出力バッファ方式 | |
JP6273678B2 (ja) | ストレージ装置 |