JP5222381B2 - 使用可能なメモリ資源を管理するための構成および方法 - Google Patents
使用可能なメモリ資源を管理するための構成および方法 Download PDFInfo
- Publication number
- JP5222381B2 JP5222381B2 JP2011168824A JP2011168824A JP5222381B2 JP 5222381 B2 JP5222381 B2 JP 5222381B2 JP 2011168824 A JP2011168824 A JP 2011168824A JP 2011168824 A JP2011168824 A JP 2011168824A JP 5222381 B2 JP5222381 B2 JP 5222381B2
- Authority
- JP
- Japan
- Prior art keywords
- free
- pointer
- block
- memory
- blocks
- 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
Links
Images
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/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Description
(1.技術分野)
本発明は、デジタルデータ処理システム、特に、使用可能なメモリ資源を管理するためのデジタルデータ処理システムにおける構成および方法に関する。
全般的に、以下の説明において、デジタルデータ処理システムの当業者にとっては慣れ親しんだ各専門用語が最初に現れる時にイタリック体で表す。さらに、新しいと考えられる、あるいは新しいと考えられる文脈において用いられる用語を最初に紹介する場合、その用語をボールド体で表し、その用語に適用する定義を与える。本発明者らの発明は特にデジタルデータ処理システムでの利用を意図したものであることから、この特定当業者によく知られた用語をしばしば用いることになる。例えば、このようなシステムのメモリ構成要素の特定アドレスに保存された情報の個々の要素に関して、その要素そのものではなく、言及されている要素のアドレスを含む別個の互いに異なる要素に言及するためにポインタという用語を典型的に用いる。本発明者らが用いる分野の他の共通用語としては:ビットに対するbやバイトに対するB、最上位ビットに対するmsbや最下位ビットに対するlsb、メガバイトに対するMBといったものがある。
注記:複数の図において、対応するリンクにおいてさらにブロックがあるということを示すために点連結線を用いているが、これは図示を不必要に複雑にすることを避けるために示されていないものがある。
1.ヘッド20から、フリーリスト4のヘッドにあるブロック、すなわちブロックBZ16に向けたポインタを検索する;
2.ブロックBZ16から、フリーリスト4の次に低いブロック、すなわちブロックBY14に向けたポインタを検索する;
3.ヘッド20のブロックBY14に向けたポインタを保存する。
注記:処理_Aに対してブロックに向けたポインタを与えるだけといったことを含め、割り当てられたブロックの場所(およびサイズ)について処理_Aに通知するため、さまざまな方法が提案されている。ある応用例は、処理_Aで「所有される」ブロックのリストに対して新たに割り当てられるブロックにメモリ割り当て処理をリンクさせることが望ましいというものである。
1.メモリのレベルAでの読み出しサイクル;
2.メモリのレベルBでの読み出しサイクル;
3.メモリのレベルAでの書き込みサイクル。
1.ヘッド20から、フリーリスト4のヘッドにあるブロック、すなわちブロックBy14に向けたポインタを検索する;
2.ブロックBY14に向けたポインタをブロックBZ16の前向きリンクに保存する;
3.ヘッド20のブロックBZ16に向けたポインタを保存する。
注記:上述のとおり、処理_Aに対してメモリ割り当て処理が、処理で所有されるブロックのリストを維持する場合、メモリ割り当て解除処理は、割り当て解除されているブロックを処理_Aのリストから切り離す役割をもつ。
これにより、図1に示されるような階層的に構成されたメモリにおいて、ブロック割り当て解除でも同じく少なくとも3つのメモリアクセスが必要である:
1.メモリのレベルAでの読み出しサイクル;
2.メモリのレベルBでの書き込みサイクル;
3.メモリのレベルAでの書き込みサイクル。
本発明者らの発明の簡単な実施例により、メモリ構成要素をもつデジタルデータ処理システムを用いるための、このメモリ中の使用可能な資源を管理するための方法を提供する。この実施例において、メモリの第1の部分をまず、少なくとも第1および第2のブロックに区画し、第1ブロックを第1のポインタブロックとして割り当てる。次に、第2ブロックを指す第1ポインタを生成する。最後に、第1のポインタブロックの第1ポインタを保存し、これによりここで第1ポインタがフリーポインタリストの第1部材を含む。第2ブロックが割り当てられると、第1ポインタがフリーポインタリストから除去され;第2ブロックの割り当てが解除されると、第1ポインタが再生成されてフリーポインタリストに追加し直される。第1ポインタリストはこれにより、動的に拡大縮小するようにされ、これによりメモリの第1部分の使用可能ブロックの全てに対してフリーポインタの組を常に備えるようにできる。
例えば、本発明は以下の項目を提供する。
(項目1)
メモリ構成要素をもつデジタルデータ処理システムにおいて、前記メモリにおける使用可能な資源を管理するための方法であって、この方法が:
前記メモリの第1の部分をn個のブロックに区画するステップと;
前記ブロックのうちm個をポインタブロックとして割り当て、それぞれが最大s個のポインタを保存するようにされ、ここで(n>m)、(n>s)かつ((m*s)≧(n−m))であるステップと;
前記(n−m)個のブロックおのおのに対して、前記ブロックを指すポインタを生成するステップと;
前記ポインタブロックの最初の(m−1)個おのおのの前記ポインタのうちs個を保存するステップと;
前記ポインタブロックの最後の前記ポインタの残りの((n−m)−(m−1)*s))個を保存するステップとを含む方法であって;
前記ポインタブロックに保存されたポインタがフリーポインタリストを含むことを特徴とする方法。
(項目2)
項目1に記載の方法であって、この方法がさらに:
第1のブロックを割り当てる第1の割り当て要求に応じて:
前記ポインタリストの第1のポインタで指されるブロックを割り当てのため選択するステップと;
前記第1ブロックとして前記選択ブロックを割り当てるステップと;
前記ポインタリストから前記第1ポインタを除去するステップとを含む方法。
(項目3)
項目2に記載の方法であって、この方法がさらに:
前記の第1の割り当て要求に応じて前記ポインタブロックの最後が0個のポインタを保存する場合、第2ブロックを割り当てるための第2割り当て要求に応じて、前記の最後のポインタブロックを前記の第2ブロックとして割り当てるステップを含む方法であって;これにより、前記ポインタブロックの次の1つが前記の最後のポインタブロックになる方法。
(項目4)
項目2に記載の方法であって、この方法がさらに:
前記第1ブロックの割り当てを解除する第1の割り当て解除要求に応じて:
前記第1ブロックの割り当てを解除するステップと;
前記第1ブロックを指す第2ポインタを生成するステップと;
前記ポインタリストに前記第2ポインタを追加するステップとを含む方法。
(項目5)
項目4に記載の方法であって、この方法がさらに:
前記の第1の割り当て解除要求に応じて前記ポインタブロックの最後がs個のポインタを保存する場合、第2ブロックの割り当てを解除するための第2割り当て解除要求に応じて:
前記第2ブロックの割り当てを解除するステップと;
前記第2ブロックをポインタブロックとして割り当てるステップとを含む方法であって;
これにより前記第2ブロックが最後のポインタブロックになる方法。
(項目6)
項目1に記載の方法であって、この方法がさらに:
ポインタブロックのリンクされたリストを形成するために前記のm個のポインタブロックをリンクするステップと;
前記のリンクされたリストに保存された前記ポインタの最後の除去の際に前記のリンクされたリストの前記ポインタブロックの最後を除去するステップと;
前記のリンクされたリストの前記ポインタブロックの最後にs番目のポインタを追加する際にポインタブロックを前記のリンクされたリストに追加するステップとを含む方法。
(項目7)
項目1に記載の方法であって、前記フリーポインタリストの選択された部分が前記メモリの第2部分に保存されることを特徴とする方法。
(項目8)
項目7に記載の方法であって、前記メモリの第2部分が、第1部分に対して、サイズは小さいが動作が速いことを特徴とする方法。
(項目9)
メモリ構成要素をもつデジタルデータ処理システムにおいて、前記メモリにおける使用可能な資源を管理するための方法であって、この方法が:
前記メモリの第1の部分を少なくとも第1と第2のブロックに区画するステップと;
前記第1ブロックを第1ポインタブロックとして割り当てるステップと;
前記第2ブロックを指す第1ポインタを生成するステップと;
前記第1ポインタを前記第1ポインタブロックに保存するステップとを含む方法であって;
前記ポインタブロックに保存されたポインタがフリーポインタリストを含むことを特徴とする方法。
(項目10)
項目9に記載の方法であって、この方法がさらに:
ブロックを割り当てる第1の割り当て要求に応じて:
前記第1ポインタで指されるブロックを割り当てのため選択するステップと;
前記の選択されたブロックを割り当てるステップと;
前記ポインタリストから前記第1ポインタを除去するステップとを含む方法。
(項目11)
項目10に記載の方法であって、この方法がさらに:
前記の第1の割り当て要求に応じて前記の第1ポインタブロックが0個のポインタを保存してから、その後、第2の割り当て要求に応じて第1ポインタブロックを割り当てるステップを含む方法であって:
これによりフリーポインタリストが空になる方法。
(項目12)
項目11に記載の方法であって、この方法がさらに:
割り当てられたブロックの割り当てを解除する第1の割り当て解除要求に応じて:
前記の割り当てされたブロックの割り当てを解除するステップと;
前記第1ポインタブロックとして前記の割り当て解除されたブロックを再割り当てするステップとを含む方法。
(項目13)
項目12に記載の方法であって、この方法がさらに:
前記の第1の割り当て解除要求に応じて前記の第1ポインタブロックが所定数未満のポインタを保存する場合、割り当てられたブロックの割り当てを解除するための第2割り当て解除要求に応じて:
前記の割り当てされたブロックの割り当てを解除するステップと;
前記の割り当て解除されたブロックを指す第2ポインタを生成するステップと;
前記ポインタリストに前記第2ポインタを追加するステップとを含む方法。
(項目14)
項目9に記載の方法であって、前記フリーポインタリストの選択された部分が前記メモリの第2部分に保存されることを特徴とする方法。
(項目15)
項目14に記載の方法であって、前記メモリの第2部分が、第1部分に対して、サイズは小さいが動作が速いことを特徴とする方法。
(項目16)
メモリ構成要素をもつデジタルデータ処理システムにおいて、前記メモリにおける使用可能な資源を管理するための方法であって、この方法が:
前記メモリの第1の部分をブロックに区画するステップと;
ポインタで構成されるフリーポインタを生成し、ポインタのおのおのが前記ブロックのそれぞれ1つを指すステップと;
ブロックが割り当てられると、前記フリーポインタリストから各ポインタを除去するステップと;
ブロックの割り当てが解除されると、前記フリーポインタリストに各ポインタを追加するステップとを含む方法。
(項目17)
項目16に記載の方法であって、フリーポインタリストが、前期ブロックのリンクされたリストに保存され、各ブロックが、所定数の前記フリーポインタを保存することを特徴とする方法。
(項目18)
項目17に記載の方法であって、リンクされたリストのヘッドにあるブロックで保存されたフリーポインタの最後を除去すると同時に前記ブロックが、リンクされたリストのヘッドから除去され、これにより、前記のリンクされたリストの次のブロックが、前記リストのヘッドになる方法。
(項目19)
項目17に記載の方法であって、前記のリンクされたリストのヘッドにあるブロックに対して前記の所定数のポインタを追加すると同時に、前記のリンクされたリストのヘッドにブロックが追加され、これにより、前記のリンクされたリストの前記の追加されたブロックが、前記のリンクされたリストのヘッドになる方法。
(項目20)
項目16に記載の方法であって、前記フリーポインタリストの選択された部分が前記メモリの第2部分に保存されることを特徴とする方法。
(項目21)
項目20に記載の方法であって、前記メモリの第2部分が、第1部分に対して、サイズは小さいが動作が速いことを特徴とする方法。
(項目22)
メモリ構成要素をもつデジタルデータ処理システムにおいて、前記メモリにおける使用可能な資源を管理するための方法であって、この方法が:
前記メモリの第1の部分をフリーブロックの組に区画するステップと;
前記フリーブロックの第1組のリンクされたリストをフリーポインタとして維持し、前記フリーブロックの第2組のフリーブロックのおのおのに対してフリーポインタの処理された組を保存するステップと;
前記システムからの第1の要求に応じて:
前記フリーポインタリストのヘッドにあるフリーポインタにより指された前記フリーブロック組のブロックを割り当てるステップと;
前記フリーポインタリストからこのリストのヘッドにある前記ポインタを除去するステップと;
前記システムからの第2の要求に応じて:
割り当てられたブロックを前記フリーブロックの組に戻すステップと;
このリストのヘッドにある前記フリーポインタリストに対して、前記の戻されたブロックを指すフリーポインタを追加するステップとを含む方法。
(項目23)
項目22に記載の方法であって、前記フリーポインタリストの選択された部分が前記メモリの第2部分に保存されることを特徴とする方法。
(項目24)
項目23に記載の方法であって、前記メモリの第2部分が、第1部分に対して、サイズは小さいが動作が速いことを特徴とする方法。
(項目25)
メモリ構成要素をもつデジタルデータ処理システムにおいて、前記メモリにおける使用可能な資源を管理するための方法であって、この方法が:
前記メモリの第1の部分を少なくともn+1個のフリーブロックに区画するステップと;
前記フリーブロックの最初の1つをフリーポインタブロックとして割り当て、前記の第1のフリーブロックが、前記ブロック内の各スロットにおいておのおのが少なくともn個のフリーポインタを保存するような大きさをもつステップと;
前記フリーポインタブロックの前記スロットの最初の1つを指すようヘッドポインタを初期化するステップと;
前記のn個の他のフリーブロックのおのおのに対して:
前記ヘッドポインタで指された前記フリーポインタブロックのスロットに対して、前記のn個のフリーブロックの各1つに対するフリーポインタを保存するステップと;
前記フリーポインタブロックの次に続くスロットを指すよう前記ヘッドポインタを前進させるステップと;
前記システムからの第1の要求に応じて:
前記フリーポインタブロックから、前記ヘッドポインタにより指され保存された前記フリーポインタの1つを検索するステップと;
前記の検索されたフリーポインタにより指されたフリーブロックを割り当てるステップと;
前記フリーポインタブロックの次に続くスロットを指すよう前記ヘッドポインタを後退させるステップと;
前記システムからの第2の要求に応じて:
前記フリーポインタブロックの次に続くスロットを指すよう前記ヘッドポインタを前進させるステップと;
割り当てられたブロックを前記フリーブロックの組に戻すステップと;
前記ヘッドポインタで指された前記の第1フリーポインタブロックのスロットに対して、前記の戻されたフリーブロックに対するフリーポインタを保存するステップとを含む方法。
(項目26)
項目25に記載の方法であって、前記ポインタリストの選択された部分が前記メモリの第2部分に保存されることを特徴とする方法。
(項目27)
項目26に記載の方法であって、前記メモリの第2部分が、第1部分に対して、サイズは小さいが動作が速いことを特徴とする方法。
本発明者らの発明の好ましい実施例により、メモリのフリーブロックそのものではなく、むしろフリーブロックに向けたポインタを保存するために割り当てられたメモリのブロックのリンクされたリストを維持することで使用可能なメモリ資源を管理する。引用の利便性のため、本発明者らのリストをフリーポインタリストと呼び、ポインタそのものはフリーポインタと呼ぶ。
注記:図2において、ヘッド20が、現行のフリーポイントブロックのうちの任意のフリーポインタスロットを(さらに、実際には前向きリンクを同様に)指すことができるということを示すため点連結線を用いたが、図示を過度に複雑にすることを防ぐために、とる可能性のあるあらゆる変数を示していない。
注記:アクティブフリーポインタブロックの有効なフリーポインタと無効なフリーポインタとの間の境界を追跡するためにヘッド20を用いることにより、有効なフリーポインタを含まないスロットにゼロポインタを保存する必要がなく、この保存を実際に行うことでメモリ書き込みアクセス数が増加し、臨界メモリ帯域を消費する。
1.ヘッド20から、アクティブフリーポインタブロックBD30のフリー2スロットに向けたポインタを検索する;
2.アクティブフリーポインタBD30のフリー2スロットから、必要とするフリーブロックBZ34に向けたポインタを検索する;
3.アクティブフリーポインタブロックBD30のフリー1スロットを指すようヘッド20を更新する。
これにより、図2および図3で示されるような階層的に構成されたメモリにおいて、ブロック割り当てでは少なくとも次の3つのメモリアクセスが必要である:
1.メモリのレベルAでの読み出しサイクル;
2.メモリのレベルAでの読み出しサイクル;
3.メモリのレベルAでの書き込みサイクル。
1.ヘッド20から、アクティブフリーポインタブロックBD30のフリー2スロットに向けたポインタを検索する;
2.アクティブフリーポインタブロックBD30のフリー2スロットを指すようヘッド20を更新する;
3.アクティブフリーポインタBD30のフリー2スロットに対して、現時点でフリーのブロックBZ34に向けたポインタを保存する。
これにより、図2および図3で示されるような階層的に構成されたメモリにおいて、ブロック割り当て解除では少なくとも次の3つのメモリアクセスが必要である:
1.メモリのレベルAでの読み出しサイクル;
2.メモリのレベルAでの書き込みサイクル;
3.メモリのレベルBでの書き込みサイクル。
Claims (2)
- フリーブロックのリンクされたリストに区分された速いが小さいレベルAメモリと、遅いが大きいレベルBメモリとを有するデジタルデータ処理システムにおいて、前記レベルBメモリにおける使用可能な資源を管理する方法であって、前記方法は、
前記レベルAメモリの一部分をフリーポインタ格納部として割り当てることと、
前記フリーブロックに対するポインタを前記フリーポインタ格納部に格納することと、
前記フリーポインタ格納部が所定の最大レベルに到達した場合に、プッシュ動作を開始することであって、前記プッシュ動作は、フリーブロックの前記リンクされたリストにおける第1のフリーブロックを識別し、かつ、それを第1のフリーポインタブロックとして指定し、かつ、前記フリーポインタ格納部から前記第1のフリーポインタブロックに前記ポインタを移動させる、ことと、
前記フリーブロックに対する全てのポインタが格納されるまで、前記フリーポインタ格納部にポインタを格納するステップと、前記フリーポインタ格納部から、フリーブロックの前記リンクされたリストから識別された後続のフリーポインタブロックに前記ポインタを移動させるプッシュ動作を開始するステップを繰り返すことと
を含む、方法。 - 割り当て要求に応答して、前記フリーポインタ格納部におけるポインタを用いて、フリーブロックを割り当てることと、
前記第1のフリーポインタブロックを識別し、かつ、前記フリーポインタ格納部におけるポインタ数が所定の最小値に到達した場合に、前記第1のフリーポインタブロックから前記フリーポインタ格納部にポインタを移動させるプル動作を開始することと、
前記フリーポインタ格納部におけるポインタを用いてフリーブロックを割り当てるステップと、前記フリーポインタ格納部におけるポインタ数が所定の最小値に到達した場合に、後続のフリーポインタブロックから前記フリーポインタ格納部にポインタを移動させるプル動作を開始するステップとを繰り返すことと
をさらに含む、請求項1に記載の方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/376,354 US6907508B2 (en) | 2003-02-26 | 2003-02-26 | Structure and method for managing available memory resources |
US10/376,354 | 2003-02-26 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006503370A Division JP4879014B2 (ja) | 2003-02-26 | 2004-02-06 | 使用可能なメモリ資源を管理するための構成および方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011248920A JP2011248920A (ja) | 2011-12-08 |
JP5222381B2 true JP5222381B2 (ja) | 2013-06-26 |
Family
ID=32869088
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006503370A Expired - Fee Related JP4879014B2 (ja) | 2003-02-26 | 2004-02-06 | 使用可能なメモリ資源を管理するための構成および方法 |
JP2011168824A Expired - Fee Related JP5222381B2 (ja) | 2003-02-26 | 2011-08-01 | 使用可能なメモリ資源を管理するための構成および方法 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006503370A Expired - Fee Related JP4879014B2 (ja) | 2003-02-26 | 2004-02-06 | 使用可能なメモリ資源を管理するための構成および方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US6907508B2 (ja) |
EP (1) | EP1599802A2 (ja) |
JP (2) | JP4879014B2 (ja) |
TW (1) | TWI340385B (ja) |
WO (1) | WO2004077229A2 (ja) |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7330956B1 (en) * | 2002-04-16 | 2008-02-12 | Emc Corporation | Bucket based memory allocation |
US7185029B1 (en) * | 2003-06-27 | 2007-02-27 | Unisys Corporation | Method and apparatus for maintaining, and updating in-memory copies of the first and second pointers to reference the new versions of the first and second control structures that indicate available and allocated portions of usable space in the data file |
US7127505B2 (en) | 2003-08-15 | 2006-10-24 | Internet Associates, Llc | Methods, computer systems, and computer readable media for generating displays of sets of network addresses with status indicators |
US7073040B2 (en) * | 2003-09-23 | 2006-07-04 | Intel Corporation | Multilevel segmented memory |
US7343513B1 (en) * | 2003-09-24 | 2008-03-11 | Juniper Networks, Inc. | Systems and methods for recovering memory |
US7330907B2 (en) * | 2003-10-02 | 2008-02-12 | Internet Associates, Llc | Methods, computer systems, and computer readable media for controlling the status of network address space |
US7523284B1 (en) | 2004-08-10 | 2009-04-21 | American Megatrends, Inc. | Method and apparatus for providing memory management within a system management mode |
US8225327B2 (en) * | 2005-09-15 | 2012-07-17 | International Business Machines Corporation | Synchronizing access to a shared resource utilizing selective locking |
US7469329B2 (en) | 2006-03-30 | 2008-12-23 | International Business Machines Corporation | Methods for dynamically resizing memory pools |
US9311227B2 (en) * | 2006-10-31 | 2016-04-12 | Hewlett Packard Enterprise Development Lp | Memory management |
US9778882B2 (en) * | 2008-06-30 | 2017-10-03 | Hitachi Data Systems Engineering UK Limited | Dynamic write balancing in a data storage system |
CA2806626C (en) | 2010-07-28 | 2016-04-05 | Nippon Steel & Sumitomo Metal Corporation | Hot-rolled steel sheet, cold-rolled steel sheet, galvanized steel sheet, and methods of manufacturing the same |
US20130061009A1 (en) * | 2011-09-06 | 2013-03-07 | Futurewei Technologies, Inc. | High Performance Free Buffer Allocation and Deallocation |
US8793464B2 (en) * | 2011-11-07 | 2014-07-29 | Sap Ag | Memory management in multi-threaded multi-processor computing system |
US9092318B2 (en) * | 2012-02-06 | 2015-07-28 | Vmware, Inc. | Method of allocating referenced memory pages from a free list |
US9367439B2 (en) * | 2012-04-30 | 2016-06-14 | Oracle International Corporation | Physical memory usage prediction |
US10055267B2 (en) * | 2015-03-04 | 2018-08-21 | Sandisk Technologies Llc | Block management scheme to handle cluster failures in non-volatile memory |
CN109690498B (zh) * | 2016-09-28 | 2020-12-25 | 华为技术有限公司 | 内存管理方法和设备 |
US11093403B2 (en) | 2018-12-04 | 2021-08-17 | Vmware, Inc. | System and methods of a self-tuning cache sizing system in a cache partitioning system |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2609705B2 (ja) * | 1988-10-28 | 1997-05-14 | 日本電気株式会社 | ファイル制御方式 |
JP3030030B2 (ja) * | 1989-01-30 | 2000-04-10 | 富士通株式会社 | 領域管理処理方式 |
US5426639A (en) * | 1991-11-29 | 1995-06-20 | At&T Corp. | Multiple virtual FIFO arrangement |
JP3325729B2 (ja) * | 1994-11-28 | 2002-09-17 | 富士通株式会社 | メモリ管理装置 |
JPH08328946A (ja) * | 1995-06-05 | 1996-12-13 | Fuji Xerox Co Ltd | 2次記憶領域の管理方法 |
US6754795B2 (en) * | 2001-12-21 | 2004-06-22 | Agere Systems Inc. | Methods and apparatus for forming linked list queue using chunk-based structure |
US7111289B2 (en) * | 2001-12-21 | 2006-09-19 | Agere Systems, Inc. | Method for implementing dual link list structure to enable fast link-list pointer updates |
US6754744B2 (en) * | 2002-09-10 | 2004-06-22 | Broadcom Corporation | Balanced linked lists for high performance data buffers in a network device |
US20040131055A1 (en) * | 2003-01-06 | 2004-07-08 | Juan-Carlos Calderon | Memory management free pointer pool |
-
2003
- 2003-02-26 US US10/376,354 patent/US6907508B2/en not_active Expired - Lifetime
-
2004
- 2004-02-06 WO PCT/US2004/003427 patent/WO2004077229A2/en not_active Application Discontinuation
- 2004-02-06 EP EP04709024A patent/EP1599802A2/en not_active Withdrawn
- 2004-02-06 JP JP2006503370A patent/JP4879014B2/ja not_active Expired - Fee Related
- 2004-02-25 TW TW093104772A patent/TWI340385B/zh not_active IP Right Cessation
-
2011
- 2011-08-01 JP JP2011168824A patent/JP5222381B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
EP1599802A2 (en) | 2005-11-30 |
JP4879014B2 (ja) | 2012-02-15 |
US20040168037A1 (en) | 2004-08-26 |
TWI340385B (en) | 2011-04-11 |
WO2004077229A3 (en) | 2004-12-02 |
US6907508B2 (en) | 2005-06-14 |
JP2006519438A (ja) | 2006-08-24 |
TW200502953A (en) | 2005-01-16 |
JP2011248920A (ja) | 2011-12-08 |
WO2004077229A2 (en) | 2004-09-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5222381B2 (ja) | 使用可能なメモリ資源を管理するための構成および方法 | |
EP2791806B1 (en) | Working set swapping using a sequentially ordered swap file | |
US5651136A (en) | System and method for increasing cache efficiency through optimized data allocation | |
JP3611305B2 (ja) | 永続的且つロバストな記憶割当てシステム及び方法 | |
US6175900B1 (en) | Hierarchical bitmap-based memory manager | |
JP2571664B2 (ja) | コンピュータ主記憶域管理システムおよび方法 | |
US5109336A (en) | Unified working storage management | |
US7337201B1 (en) | System and method to increase memory allocation efficiency | |
JP2858795B2 (ja) | 実記憶割り当て方法 | |
CN1226687C (zh) | 用于持久和稳固的存储管理的系统和方法 | |
JP2007523412A (ja) | メモリ割当て | |
US5390315A (en) | Allocation of uniform contiguous blocks of DASD storage by maintaining both a bit and a bit map record of available storage | |
US6804761B1 (en) | Memory allocation system and method | |
US6842826B1 (en) | Method and apparatus for providing efficient management of least recently used (LRU) algorithm insertion points corresponding to defined times-in-cache | |
CN108959113B (zh) | 用于闪存感知堆存储器管理的方法和系统 | |
US9778872B2 (en) | Storage region management method, storage region allocation method and program | |
CN104133642B (zh) | SSD Cache填充方法及装置 | |
US6976021B2 (en) | Method, system, and computer program product for managing a re-usable resource with linked list groups | |
US8274521B2 (en) | System available cache color map | |
US8429371B2 (en) | System and method for robust and efficient free chain management | |
CN113535392B (zh) | 基于cma实现支持大内存连续分配的内存管理方法及系统 | |
JP2005157714A (ja) | メモリ管理システム | |
JPH06103157A (ja) | 記憶空間管理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120410 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20130212 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130308 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20160315 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5222381 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: R3D02 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: R3D04 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R360 | Written notification for declining of transfer of rights |
Free format text: JAPANESE INTERMEDIATE CODE: R360 |
|
R360 | Written notification for declining of transfer of rights |
Free format text: JAPANESE INTERMEDIATE CODE: R360 |
|
R371 | Transfer withdrawn |
Free format text: JAPANESE INTERMEDIATE CODE: R371 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |