TW201530555A - 記憶體陣列中呈現資料無效之技術 - Google Patents
記憶體陣列中呈現資料無效之技術 Download PDFInfo
- Publication number
- TW201530555A TW201530555A TW103144301A TW103144301A TW201530555A TW 201530555 A TW201530555 A TW 201530555A TW 103144301 A TW103144301 A TW 103144301A TW 103144301 A TW103144301 A TW 103144301A TW 201530555 A TW201530555 A TW 201530555A
- Authority
- TW
- Taiwan
- Prior art keywords
- metadata
- memory
- data
- management
- color
- Prior art date
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/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/0284—Multiple user address space allocation, e.g. using different base addresses
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0652—Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0611—Improving I/O performance in relation to response time
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0688—Non-volatile semiconductor memory arrays
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Retry When Errors Occur (AREA)
Abstract
一種在一記憶體陣列中呈現資料無效的方法被描述。該方法包括為在一記憶體陣列中之一記憶體位置建立管理元資料。該方法還包含有接收一請求以從該記憶體位置檢索資料。該方法還包括判定與該資料相關聯的色彩元資料是否匹配該管理元資料。該方法還包括當該色彩元資料匹配該管理元資料時傳回該資料。該方法還包括當該色彩元資料不匹配該管理元資料時傳回該無效的資料。
Description
本發明係有關於記憶體陣列中呈現資料無效之技術。
記憶體陣列被使用來儲存資料。在一些實例中不同的應用可以存取一記憶體陣列。舉例來說,一第一應用可以在一時間週期中對一記憶體陣列讀取和寫入資料,而且一第二應用可以在另一時間週期中對該記憶體陣列讀取和寫入資料。一應用可以是在某個時間點上可存取一記憶體陣列之任何的實體、計算裝置、程式、或其他的應用。
依據本發明之一實施例,係特地提出一種在一記憶體陣列中呈現資料無效的方法,其包含有:為在一記憶體陣列中的一記憶體位置建立管理元資料;接收一請求以從該記憶體位置檢索資料;判定與該資料相關聯的色彩元資料是否匹配該管理元資料;當該色彩元資料匹配該管理元資料時傳回該資料;以及當該色彩元資料不匹配該管理元資料時傳回該無效的資料。
100‧‧‧系統
101‧‧‧記憶體管理器
102‧‧‧建立模組
103‧‧‧比較模組
104‧‧‧傳回模組
105‧‧‧記憶體陣列
106-1、106-2、106-3‧‧‧記憶體位置
107-1、107-2、107-3、107-4‧‧‧應用
200‧‧‧方法
201~205‧‧‧方塊
300‧‧‧方法
301~309‧‧‧方塊
400‧‧‧系統
401‧‧‧記憶體管理器
405‧‧‧記憶體陣列
406-1‧‧‧第一記憶體位置
406-n‧‧‧第N記憶體位置
407‧‧‧應用
409‧‧‧建立管理元資料
410-1、410-2‧‧‧寫入資料和色彩元資料
411‧‧‧請求資料
412‧‧‧比較
413-1‧‧‧傳回無效的資料
413-2‧‧‧傳回資料
414‧‧‧改變管理元資料
415-1、415-2‧‧‧比較和更新
500‧‧‧方法
501~507‧‧‧方塊
601‧‧‧記憶體管理器
616‧‧‧處理資源
617‧‧‧記憶體資源
618‧‧‧管理元資料建立器
619‧‧‧請求接收器
620‧‧‧色彩元資料比較器
621‧‧‧資料傳回器
622‧‧‧巡查清除器
623‧‧‧資料寫入器
624‧‧‧更新防止器
625‧‧‧快取刷新器
626‧‧‧管理元資料更新器
627‧‧‧巡查清除指示器
該等附圖圖示出本文所描述之該等原理的各種實例,並且是本說明書的一部分。該等圖示出的實例並不限制該等請求項的範疇。
圖1根據本文所描述之該等原理的一實例係在一記憶體陣列中呈現資料無效之一系統示意圖。
圖2根據本文所描述之該等原理的一實例係在一記憶體陣列中呈現資料無效之一方法流程圖。
圖3根據本文所描述之該等原理的一實例係另一在一記憶體陣列中呈現資料無效之一方法流程圖。
圖4根據本文所描述之該等原理的一實例係在一記憶體陣列中呈現資料無效之一執行緒示意圖。
圖5根據本文所描述之該等原理的一實例係巡視清除一記憶體陣列之一方法流程圖。
圖6根據本文所描述之該等原理的一實例係在一記憶體陣列中呈現資料無效之一記憶體管理器示意圖。
在該等圖示中,相同的參考號碼代表類似的,但不一定是完全相同的,元件。
記憶體陣列可以被使用來儲存資料。記憶體陣列可以在不同的時間點上由不同的應用來存取。舉例來說,一程式可以在一給定的時間週期對一第一記憶體陣列進行讀取和寫入,而另一程式可以在另一時間週期對該第一記憶體陣列進行讀取和寫入。在另一實例中,一虛擬機器可
以在一給定的時間週期對該第一記憶體陣列進行讀取和寫入,而另一虛擬機器可以在另一時間週期對該第一記憶體陣列進行讀取和寫入。換句話說,一群記憶體陣列可被使用來服務數個應用。藉由減少被使用來服務一給定數量應用之該記憶體陣列的總數量,這樣做會是有益的。然而,如此的一共享系統會有一定的低效率。
舉例來說,可跨越機器重新啟動和橫跨電源週期讓資料持續的記憶體陣列,其增加的容量所面臨的挑戰為需要系統可快速地無效化記憶體,使得其可以由相同的應用以不同的目的被重新使用,或使得其可以由另一個應用來使用。舉例來說,在每次使用之間,該記憶體陣列被清除乾淨以確保先前所儲存資料的安全性和隱私性,並確保該記憶體陣列在之後的正確使用。因此,一些系統會走查數個將會被重新分配給另一應用的記憶體位置並清除乾淨每一記憶體位置。在如此的一種走查之中,在每一記憶體位置中的資料可明確地被寫入一清除值。然而,這樣的方法會是低效率的、會消耗過量的功率、並且需要很長的時間才能完成。
舉例來說,該整個記憶體陣列的一完整走查會使得該記憶體陣列呈現為不可用,直到在該記憶體陣列中的每一各別的位置都已經被清除為止。雖然一走查可以被加速,但該記憶體陣列和其他組件,諸如通用介面、通道、控制器、快取、佇列、和路徑在該走查期間仍然是不可用的。
因此,本發明描述了可在一單一操作中有效地清除一記憶體位置的系統和方法,使得它可更容易地可再次使用。被儲存在該記憶體位置上的舊資料將會被呈現為無法查看的,而新的資料可以被保留好像資料的一完整巡視清除是在背景被處理。換句話說,本發明可以允許在一記憶體陣列中的資料可被立即地無效化,並且可以毫無延遲地被重複使用。在一些實例中,一巡查清除器然後可在背景中清理掉該被丟棄的資料。
本發明描述了一種在一記憶體陣列中呈現資料無效的方法。該方法包含有為在一記憶體陣列中的一記憶體位置建立管理元資料。該方法還可包含有接收一請求以從該記憶體位置檢索資料。該方法還可包含有判定與該資料相關聯的該色彩元資料是否匹配該管理元資料。該方法還可包含有當該色彩元資料匹配該管理元資料時傳回該資料。該方法還可包含有當該色彩元資料並不匹配該管理元資料時傳回無效的資料。
本發明描述了一種在一記憶體陣列中呈現資料無效的系統。該系統可以包含有一處理器和被通信地耦合到該處理器的記憶體。該方法還可以包含有一記憶體管理器。該記憶體管理器可包含有一建立模組以為在一記憶體陣列中的數個記憶體位置建立管理元資料。該記憶體管理器還可以包含有一比較模組,以把與儲存在該等記憶體位置中資料相關聯的色彩元資料和該管理元資料做比較。該記憶體管理器還可以包含有一傳回模組,以傳回色彩元資
料異於該管理元資料之無效的資料。
本發明描述了一種在一記憶體陣列中呈現資料無效之電腦程式產品。該電腦程式產品可包括一電腦可讀取儲存媒體,包含有電腦可使用程式碼被具體實現在其中。該電腦可使用程式碼可以包括電腦可使用的程式碼,當其由一處理器來執行時,可為在一記憶體陣列中的一記憶體位置建立管理元資料。該電腦可使用程式碼也可包括電腦可使用的程式碼,當其由一處理器來執行時,可把與儲存在該等記憶體位置中資料相關聯的色彩元資料和該管理元資料做比較。該電腦可使用程式碼也可包括電腦可使用的程式碼,當其由一處理器來執行時,可使色彩元資料異於該管理元資料的資料無效。該電腦可使用程式碼也可包括電腦可使用的程式碼,當其由一處理器來執行時,可在該記憶體陣列中走查數個記憶體位置。該電腦可使用程式碼也可包括電腦可使用的程式碼,當其由一處理器來執行時,可使在色彩元資料異於該管理元資料之位置上所儲存的資料無效。
本文中所描述的系統和方法會是有利的,因為當記憶體被重新佈署時它們是立即可用的。此外,先前的資料會被保護,並且可保證之後記憶體的正常使用。
如在本說明書和所附請求項中所使用的,術語「管理元資料」可以指與一記憶體位置相關聯並且被儲存在該記憶體位置中的元資料。
此外,如在本說明書和所附請求項中所使用的,
術語「色彩元資料」可以指與儲存在一記憶體位置中資料相關聯的元資料。如以下面將被描述的,該管理元資料和該色彩元資料會被比較以判定是否對應於該色彩元資料的資料要被無效化。
再者,如在本說明書和所附請求項中所使用的,「應用」可以指可存取記憶體陣列之程式、實體、計算裝置、計算系統、和其他的應用。
再者,如在本說明書和所附請求項中所使用的,術語「數個」或類似的說法可包括任何的正數,包括1到無窮大;零不是一數,而是缺少一數。
在以下的描述中,為了解釋的目的,許多特定的細節被闡述以便對呈現的系統和方法提供一種徹底的理解。然而,對於本領域之習知技藝者將顯而易見的是,該等呈現的裝置、系統、和方法可以在沒有這些具體細節的情況下被實現。在本說明書中對「一實例」的參考或類似的說法意指所描述之一特定的功能、結構、或特徵至少被包含在那一實例中,但不一定被包含在其他的實例中。
根據本文所描述之該等原理的一實例,圖1係一在一記憶體陣列(105)中呈現資料無效之系統(100)的一示意圖。在一些實例中,該系統(100)可以被使用在一單一計算裝置中。在這種情況下,一單一計算裝置可利用該記憶體管理器(101)和其他相關聯的模組來執行本文所描述的該功能。
該系統(100)可包括數個記憶體陣列(105)。一記
憶體陣列(105)可用於儲存資料。在一些實例中,該記憶體陣列(105)可以是一非依電性記憶體陣列(105)。一非依電性記憶體陣列(105)會是一種記憶體陣列(105),其中即使電源從該記憶體陣列(105)被移除資料仍然存在。舉例來說,資料可以被儲存在該非依電性記憶體陣列(105)中。電源然後可從該記憶體陣列(105)被移除。一旦電源被恢復,被儲存的資料可再次地從該非依電性記憶體陣列(105)被存取。該記憶體陣列(105)可以是一依電性記憶體陣列(105)。依電性記憶體可指在一斷電的事件中不會保留資料的記憶體。舉例來說,一旦電源從一依電性記憶體陣列(105)被移除,該儲存在其中的資料會被遺失。
一記憶體陣列(105)可以包括數個可儲存資料的記憶體位置(106)。每一個記憶體位置(106)可以包括數個用於儲存資料的記憶體位元。在一記憶體位置(106)中的每一個儲存位元可以被設置成一「值」,諸如0或1以指示所儲存的資料。舉例來說,在一記憶體位置(106)中的該等位元會根據該等各種儲存位元的值(即0、1、或它們的組合)來引用儲存在其中的資料。雖然圖1指出三個記憶體位置(106-1、106-2、106-3),但一記憶體陣列可包括任何數量的記憶體位置(106)。
各種應用(107)可以存取該記憶體陣列(105)。更具體地說,各種應用(107)可以在不同的時間,或同時讀出資料自,並把資料寫入到,各種儲存位置(106)。舉例來說,該第一應用(107-1)可讀出資料自,並把資料寫入到,該第
一記憶體位置(106-1)。該第二應用(107-2)可讀出資料自,並把資料寫入到,該第二記憶體位置(106-2)。在一些實例中,一記憶體位置(106)可以被重新佈署給另一應用(107)。舉例來說,該第一應用(107-1)可在一第一時段中讀出資料自,並把資料寫入到,該第一記憶體位置(106-1)。接著,該第二應用(107-2)可在一第二,並且是不同的,時段中讀出資料自,並把資料寫入到,該第一記憶體位置(106-1)。
如在本說明書中所使用的,一應用(107)可指可存取該記憶體陣列(105)之任何的實體、計算程式、計算裝置、計算系統、或其他的應用(107)。舉例來說,一應用(107)可以是在一計算裝置上執行的一程式。一應用(107)也可以是在一不同的計算裝置上執行的一程式。在另一實例中,一應用(107)可以是一不同的使用者,登錄到一計算裝置上。再者,一應用(107)可以是可存取該記憶體陣列(105)的一虛擬機器。雖然圖1描繪出四個應用(107-1、107-2、107-3、107-4),但任何數量的應用(107)可存取該記憶體陣列(105)。
該系統(100)還可以包括一記憶體管理器(101)來管理該記憶體陣列(105)。一般來說,該記憶體管理器(101)可以包括一電腦可讀取媒體、一電腦可讀取儲存媒體、或一非暫時性電腦可讀取媒體、等等。在本說明書的該環境中,一電腦可讀取儲存媒體可以是任何有形的媒體,其可包含,或者儲存一程式,其可由一指令執行系統、裝置、或裝置來使用或連接。在另一實例中,一電腦可讀取儲存
媒體可以是任何非暫時性的媒體,其可包含,或者儲存一程式,其可由一指令執行系統、裝置、或裝置來使用或連接。
該記憶體管理器(101)可包括數個模組以無效化在一記憶體陣列(105)內的資料。具體地說,該記憶體管理器(101)可包括一建立模組(102),其為在一記憶體陣列(105)中的數個記憶體位置(106)建立管理元資料。管理元資料可以是涉及到該記憶體位置(106)的元資料,並指出其一狀態。該儲存位置(106)的「狀態」可以指出那一(些)應用(107)可以存取該記憶體位置(106)。該管理元資料可以是任意數量設置為預定值的位元。該等位元的不同值可指出該記憶體位置(106)之不同的狀態。在一些實例中,該管理元資料可被儲存在一非依電性記憶體中,使得它在跨越任何電力循環時可以持續。
在任何資料被寫入到該記憶體位置(106)的時候,該管理元資料會被寫入到與該資料相關聯的該色彩元資料。換句話說,該管理元資料可以是與該記憶體位置(106)相關聯的元資料而該色彩元資料可以是與該資料相關聯之相同的元資料。在一些實例中,對於在一記憶體陣列(105)中的記憶體位置(106)該管理元資料可以是相同的。舉例來說,每一個記憶體位置(106-1、106-2、106-3)可以具有相同之管理元資料。相比之下,對於在一記憶體陣列(105)中的每一個記憶體位置(106)該管理元資料可以是相異的。舉例來說,每一個記憶體位置(106-1、106-2、106-3)可以具有不
同之管理元資料。
管理元資料可以被用來判定在一記憶體位置(106)中的資料是否應該被無效化。舉例來說,一記憶體位置(106)的該管理元資料可以和與在該記憶體儲器位置(106)中資料相對應的色彩元資料做比較。如果該管理元資料相同於該色彩元資料,則該資料是有效的。相比之下,如果該管理元資料相異於該色彩元資料,則該資料是無效的。在一些實例中,在該記憶體位置(106)中的資料可透過改變該管理元資料的一單一操作來被無效化。舉例來說,如果在一記憶體位置(106)中所有的資料是有效的,也就是說,它的色彩元資料匹配該管理元資料,則可以藉由反轉一管理元資料位元從而使在記憶體位置(106)中該相應的色彩元資料異於該管理元資料位元,以使該資料無效。
該比較模組(103)可把與儲存在一記憶體位置(106)中資料相關聯的色彩元資料與該管理元資料做比較。色彩元資料可以是在一記憶體位置(106)中涉及該資料並指出其一狀態的元資料。該色彩元資料可以是任意數量設置為預定值的位元。舉例來說,一單一位元可與每一塊資料儲存在一起。在一些實例中,該色彩元資料位元可以和其他元資料被包括在一起,諸如錯誤更正碼位元、或目錄位元。該等位元不同的值可表示在一記憶體位置(106)中該資料之一不同的狀態。
該色彩元資料可被用來判定在一記憶體位置(106)中的資料是否應被無效化、無效的資料是否應被傳
回、或它們的組合。舉例來說,該比較模組(103)可把該管理元資料與該色彩元資料做比較。如果該色彩元資料相同於該管理元資料,則該資料會是有效的。相比之下,如果該色彩元資料相異於該管理元資料,則該資料會是無效的。
該傳回模組(104)可以傳回色彩元資料與該管理元資料相異之無效的資料。如本文所使用的,無效的資料可以指位元值被設置為零或任何其他與該原始資料樣式相異的資料。相比之下,當該色彩元資料匹配該管理元資料時,該傳回模組(104)可傳回該資料。
如本文所描述的該記憶體管理器(101)會是有益的,因為藉由把與一記憶體位置(106)相關聯的管理元資料和與儲存在該記憶體位置(106)中該資料相關聯的色彩元資料做比較,它允許無效記憶體的快速指示。類似地,它允許一記憶體位置(106)被重新佈署到另一應用(107),並保證之前所儲存的資料已被正確地清除和保護。
圖2根據本文所描述之該等原理的一實例,係一種在一記憶體陣列(圖1,105)中呈現資料無效之方法(200)的一流程圖。該方法(200)可以包括建立(方塊201)一記憶體位置(圖1,106)的管理元資料。如以上所述,管理元資料可以是任意位元數量的元資料,其指出該記憶體位置(圖1,106)的一狀態。舉例來說,該管理元資料可以指出一記憶體位置(圖1,106)是在一個特定的讀取和寫入「週期」中。更具體地說,該管元資料可以指出該記憶體位置(圖1,106)正處於被一特定應用(圖1,107)所使用的一週期中。該管理
元資料所使用的該位元數可指出數個可由該管理元資料來表示的狀態。舉例來說,如果一單一位元被使用為該管理元資料,兩種該記憶體位置(圖1,106)的狀態可由該管理元資料來表示。建立(方塊201)管理元資料可以包括設置元資料的位元值為一預定的值。
該方法(200)可以包括接收(方塊202)一請求以從該記憶體位置(圖1,106)檢索資料。舉例來說,一特定應用(圖1,107)可以從一記憶體位置(圖1,106)請求資料。該方法(200)可以包括判定(方塊203)對應於該請求資料的色彩元資料是否匹配該管理元資料。這可以包括把該色彩元資料的該等位元和該管理元資料的對應位元做比較。
如果該色彩元資料匹配該管理元資料(方塊203,判定為是),該方法(200)可以包括傳回(方塊204)該資料給該請求者應用(圖1,107)。相比之下,如果該色彩元資料不匹配該管理元資料(方塊203,判定為否),無效的資料可以被傳回(方塊205)給該請求者應用(圖1,107)。如以上所述,無效的資料可以包含有數個零。雖然對無效資料之特定參考是數個零,但無效資料可以是任何非原始資料之樣式的資料。該色彩元資料不匹配該管理元資料的判定(方塊203,判定為否)可以指出儲存在該記憶體位置(圖1,106)中的資料並不對應到該記憶體位置(圖1,106)當前的週期、或狀態。舉例來說,不匹配該管理元資料的色彩元資料可以指出該管理元資料已被更新成對應於該記憶體位置(圖1,106)的一重新佈署。
圖3根據本文所描述之該等原理的一實例,係另一在一記憶體陣列(圖1,105)中呈現資料無效之方法(300)的一流程圖。該方法(300)可以包括建立(方塊301)一記憶體位置(圖1,106)的管理元資料。這可如同在圖2中所描述的方式被執行。
該方法(300)可以包括寫入(方塊302)資料,以及對應的色彩元資料,到該記憶體位置(圖1,106)。在本實例中,被寫入到該記憶體位置(圖1,106)的該色彩元資料可以相同於該管理元資料。如以上所述,與在一記憶體位置(圖1,106)中資料相關聯的色彩元資料可被用於驗證該資料。因此,每一次資料被寫入到該記憶體位置(圖1,106);對應於該資料的色彩元資料也會被寫入到該記憶體位置(圖1,106)。被寫入到該記憶體位置(圖1,106)的色彩元資料會匹配被建立(方塊301)的該管理元資料。因此,由於該色彩元資料匹配該管理元資料,故該寫入的資料最初是有效的。然後從該記憶體位置(圖1,106)檢索資料的一請求會被接收(方塊303)。這可如同在圖2中所描述的方式被執行。
該記憶體管理器(圖1,101)可判定(方塊304)該色彩元資料是否匹配該管理元資料。這可如同在圖2中所描述的方式被執行。如果該色彩元資料匹配該管理元資料(方塊304,判定為是),該請求的資料可被傳回(方塊305)。這可如同在圖2中所描述的方式被執行。相比之下,如果該色彩元資料不匹配該管理元資料(方塊304,判定為否),則無效的資料,諸如一些零或者另一無法辨認的資料樣式,可以
被傳回(方塊306)。這可如同在圖2中所描述的方式被執行。
在一些實例中,一巡查清除器可被執行(方塊307)。一般而言,一巡查清除器走查在一記憶體陣列(圖1,105)中的每一記憶體位置(圖1,106),檢查在每一記憶體位置(圖1,106)中的資料來判定它是否有一有效的錯誤校正碼。如果否的話,一更正碼可以被實現來修復該資料。在一些實例中,一巡查清除器可被執行來(方塊307)走查在一記憶體陣列(圖1,105)中的記憶體位置(圖1,106),把該資料的色彩元資料和該等記憶體位置(圖1,106)的管理元資料做比較。如果資料的色彩元資料並不匹配一特定記憶體位置(圖1,106)的該管理元資料,該巡查清除器可以直接地把零寫入到該記憶體位置(圖1,106)以及新的色彩元資料以匹配該管理元資料。相比之下,資料的該色彩元資料匹配一特定記憶體位置(圖1,106)的該管理元資料,則該色彩元資料和對應的資料可以被保持不變。因此,在一巡查清除器之後,所有的色彩元資料會匹配該管理元資料。執行(方塊307)一巡查清除器會是有益的,因為會對在一記憶體陣列(圖1,105)中所有的記憶體位置(圖1,106)做一完整的處理以確保資料在由不同的應用(圖1,107)使用之間會被清除。
該方法(300)還可包含有刷新(方塊308)與該記憶體位置(圖1,106)相關聯的記憶體快取。舉例來說,除了一記憶體位置(圖1,106)之外,記憶體快取可以由一應用(圖1,107)來存取以暫時儲存將要被遞送到該記憶體位置(圖1,106)的資料。為了確保資料的安全性,該記憶體快取也
可以和一記憶體位置(圖1,106)一起被無效化。
如以上所述,在一些實例中,在一記憶體位置(圖1,106)中的資料可以由一單一操作被無效化。舉例來說,該管理元資料可以被改變(方塊309)。這樣子做會致使先前匹配的色彩資料呈現成和該管理元資料不匹配。一旦一管理元資料被改變(方塊309),該對應的記憶體位置(圖1,106)可以被重新分配給一不同的應用(圖1,107)。舉例來說,一記憶體位置(圖1,106)立即可被在一系統上的一虛擬機器重複使用。在一些實例中,該快取可以在改變(方塊309)該管理元資料之前被刷新(方塊308)。在其他的實例中,該快取可以在改變(方塊309)該管理元資料之後被刷新(方塊308)。舉例來說,如果該色彩元資料是在改變(方塊309)該管理元資料之後被更新,一巡查清除器可以識別出匹配該更新管理元資料之更新的色彩元資料。在本實例中,與該記憶體位置相關聯的一記憶體快取,其包括並不匹配該更新管理元資料之更新的色彩元資料,會被刷新(方塊309)。
圖4根據本文所描述之該等原理的一實例,係在一記憶體陣列(405)中呈現資料無效的一執行緒示意圖(400)。該記憶體管理器(401)可為數個記憶體位置(圖1,106)建立(409)管理元資料。在一記憶體陣列(405)的記憶體位置(406)之間,該管理元資料可以是類似的,或是不同的。建立(409)管理元資料可以包括設置元資料的位元值為一預定值或樣式。
該記憶體管理器(401)可把資料和色彩元資料寫
入(410)到該等記憶體位置(406)。舉例來說,該記憶體管理器(401)可把資料和色彩元資料寫入(410)到該第一記憶體位置(406)。一開始,該寫入的色彩元資料和該被建立(409)的管理元資料會是相同的。類似地,該記憶體管理器(401)可以把資料和色彩元資料寫入(410)到其他的記憶體位置(406),直至並包括,一第n記憶體位置(406-n)。最初被寫入到該等記憶體位置(406)的該色彩元資料會匹配該建立的管理元資料。
一應用(407)可以從一儲存位置(406)請求(411)資料。舉例來說,該應用(407)可以請求(411)儲存在該第一記憶體位置(406-1)的資料。作為回應,該記憶體管理器(401)會把該請求資料的該色彩元資料與該第一儲存位置(406-1)的該管理元資料做比較(412)。如果該請求資料的該色彩元資料不匹配該第一儲存位置(406-1)的該管理元資料的話,該記憶體管理器(401)會傳回(413-1)無效的資料。相比之下,如果該請求資料的該色彩元資料匹配該第一儲存位置(406-1)的該管理元資料的話,該記憶體管理器(401)會傳回(413-2)該請求的資料。
該記憶體管理器(401)可改變(414)該管理元資料。改變(414)該管理元資料可指出一記憶體位置(406)狀態的一變化,或者可以指出那一應用(407)可存取一特定記憶體位置(406)的一變化。
如以上所述,在一些實例中,一巡查清除器會走查每一個記憶體位置(406)以把無效的資料寫入到一記憶體
位置,並更新該色彩元資料。因此,該記憶體管理器(401)可把在該第一記憶體位置(406-1)中資料的該色彩元資料與該更新的管理元資料做比較(415-1)。如果它們相異,該記憶體管理器(401)可以把無效的資料寫入到該第一記憶體位置(406-1)。該記憶體管理器(401)也可把該更新的色彩元資料,其匹配該更新的管理元資料,寫入到該第一記憶體位置(406-1)。類似地,該記憶體管理器(401)可把在其他記憶體位置(406-n)中資料的該色彩元資料與該更新的管理元資料做比較(415-2)。如果它們相異,該記憶體管理器(401)會把無效的資料寫入到其他的記憶體位置(406-n)。該記憶體管理器(401)也可把該更新的色彩元資料,其匹配該更新的管理元資料,寫入到其他的記憶體位置(406-n)。
雖然圖4描繪出該管理元資料是在一記憶體陣列(405)中該等記憶體位置(406)的巡視清除之前被改變(414),但該管理元資料可在任何時點上被改變(414)。舉例來說,該巡視清除可發生在該管理元資料的改變之前。同樣地,儘管該巡視清除(415)被描繪為發生在無效或有效資料的傳回(413)之後,該巡視清除可和其他的操作同時地發生。在一些實例中,該記憶體管理器(401)可以實現一加速的巡視清除來把色彩元資料和管理元資料做比較。
圖5根據本文所描述之該等原理的一實例,係一巡視清除一記憶體陣列(圖1,105)之方法(500)的一流程圖。如以上所述,在一些實例中一巡查清除器可被用於走查在一記憶體陣列(圖1,105)中的數個記憶體位置(圖1,106)
以比較該色彩元資料與該管理元資料。更具體而言,該方法(500)可以包括處理(方塊501)該記憶體陣列(圖1,105)的一記憶體位置(圖1,106)。舉例來說,該記憶體管理器(圖1,101)可判定(方塊502)在該記憶體位置(圖1,106)中資料的色彩元資料是否匹配該管理元資料。這可如同在圖2中所描述的方式被執行。
如果該色彩元資料匹配該管理元資料(方塊502,判定為是),該記憶體管理器(圖1,101)會保留(方塊503)該資料。換句話說,色彩元資料匹配該管理元資料的資料會被保持不變。相比之下,如果該色彩元資料不匹配該管理元資料(方塊502,判定為否)的話,該記憶體管理器(圖1,101)會無效化(方塊504)該資料。無效化(方塊504)該資料可以包括把零寫入到該記憶體位置(圖1,106)或是寫入與該原始資料不同之任何其他的樣式。
該記憶體管理器(圖1,101)然後可判定(方塊505)是否所有的記憶體位置(圖1,106)都已被處理。如果不是所有的記憶體位置(圖1,106)都已被處理(方塊505,判定為否),則該記憶體管理器(圖1,101)會去處理(方塊501)在一記憶體陣列(圖1,105)中的另一記憶體位置(圖1,106)。一路上,該記憶體管理器(圖1,101)可以防止(方塊506)該管理元資料一後續的更新。在一些實例中,如果一巡視清除尚未被完成,該記憶體管理器(圖1,101)可以防止該管理元資料的一後續的更新,除非該管理元資料的一新值被使用了。換句話說,該記憶體管理器(圖1,101)可以防止(方塊
506)該管理元資料的一更新,直到未決的巡查清除操作被完成為止。判定是否所有的記憶體位置都已經被處理會是有利的,因為一系統性的方法被使用來清除在一記憶體陣列(圖1,105)中的每一記憶體位置(圖1,106)。這樣做還可以確保先前所儲存的資料不可由一後續的應用(圖1,107)存取,並且可以確保未來的讀取和寫入操作會有乾淨的記憶體可用。
如果所有的記憶體位置(圖1,106)都已被處理(方塊505,判定為是),該記憶體管理器(圖1,101)會指出(方塊507)一巡視清除完成了。這樣做可以允許一使用者判定一記憶體陣列(圖1,105)是乾淨的,舉例來說,用於一記憶體陣列(圖1,105)之一後續的移除或其他的處置。
圖6根據本文所描述之該等原理的一實例,係一在一記憶體陣列(圖1,105)中呈現資料無效之記憶體管理器(601)的一示意圖。在這個實例中,該記憶體管理器(601)可以包括處理資源(616),其與記憶體資源(617)進行通信。處理資源(616)可包括至少一處理器和被用來處理編程指令的其他資源。該處理器可以包括該硬體架構來從該記憶體管理器(601)檢索可執行碼並且執行該可執行碼。該可執行碼,在由該處理資源(616)來執行時,可致使該處理資源(616)至少實現在一記憶體陣列中呈現資料無效的該功能,根據本說明書在此描述之該等方法。在執行程式碼的過程中,該處理資源(616)可以接收來自數個其餘硬體單元的輸入並對其提供輸出。
該記憶體資源(617)總體上代表任何可儲存資料的記憶體,儲存的資料諸如由該記憶體管理器(601)所使用之編程指令或資料結構。該等記憶體資源(617)可以儲存資料,諸如可由該等處理資源(616)或其他處理裝置來執行的可執行程式碼。如將會被討論的,該記憶體管理器(601)可以具體地儲存數個應用,該等處理資源(616)會執行其以至少實現在本文所描述的該功能。
被展示出儲存在該等記憶體資源(617)中之該等編程指令包括一管理元資料建立器(618)、一請求接收器(619)、一色彩元資料比較器(620)、一資料傳回器(621)、一巡查清除器(622),一資料寫入器(623),一更新防止器(624)、一快取刷新器(625)、一管理元資料更新器(626)、以及一巡查清除指示器(627)。
該等記憶體資源(617)包括一電腦可讀取儲存媒體,其包含有電腦可讀取程式碼,可致使任務將由該等處理資源(616)來執行。該電腦可讀取儲存媒體可以是有形的和/或實體的儲存媒體。該電腦可讀取儲存媒體可以是任何適當之非傳輸式儲存媒體的儲存媒體。一種電腦可讀取儲存媒體類型的非窮舉列表包括非依電性記憶體、依電性記憶體、隨機存取記憶體、唯寫記憶體、快閃記憶體、電子可抹除可程式化唯讀記憶體、或記憶體的類型、或其組合。
該管理元資料建立器(618)表示編程的指令,當其被執行時,會致使該等處理資源(616)為在一記憶體陣列(圖1,105)中的一記憶體位置(圖1,106)建立管理元資料。
該管理元資料建立器(618)可以由該建立模組(圖1,102)來實現。該請求接收器(619)表示編程的指令,當其被執行時,會致使該等處理資源(616)接收一請求以從該記憶體位置(圖1,106)檢索資料。該色彩元資料比較器(620)表示編程的指令,當其被執行時,會致使該等處理資源(616)可判定與該資料相關聯的該色彩元資料是否匹配與該記憶體位置(圖1,106)相關聯的該管理元資料。該色彩元資料比較器(620)可由該比較模組(圖1,103)來實現。該資料傳回器(621)表示編程的指令,當其被執行時,會致使該等處理資源(616)在該色彩元資料匹配該管理元資料時傳回資料,並在該色彩元資料不匹配該管理元資料時傳回無效的資料。
該巡查清除器(622)表示編程的指令,當其被執行時,會致使該等處理資源(616)走查在該記憶體陣列(圖1,105)中的數個記憶體位置(圖1,106)。該資料寫入器(623)表示編程的指令,當其被執行時,會致使該等處理資源(616)把無效的資料、更新的色彩元資料、或它們的組合寫入到一些記憶體位置(圖1,106),該等記憶體位置所包含之資料其色彩元資料異於該管理元資料。
該更新防止器(624)表示編程的指令,當其被執行時,會致使該等處理資源(616)可防止管理元資料的一更新。該快取刷新器(625)表示編程的指令,當其被執行時,會致使該等處理資源(616)可刷新與該記憶體位置(圖1,106)相關聯的記憶體快取。該管理元資料更新器(626)表示編程的指令,當其被執行時,會致使該等處理資源(616)可更新
該管理元資料以無效化數個記憶體位置(圖1,106)。該巡視清除指示器(627)表示編程的指令,當其被執行時,會致使該等處理資源(616)可指出何時一巡視清除已完成。
此外,該等記憶體資源(617)可以是一安裝套件的一部分。對安裝該安裝套件做出回應,該等記憶體資源(617)的該等編程指令可從該安裝套件的來源處被下載,諸如一可攜式媒體、一伺服器,一遠端網路位置、另一位置、或它們的組合。與本文所描述之該等原理相容之可攜式記憶體媒體包括DVD、CD、快閃記憶體、可攜式磁碟、磁碟、光碟、其他形式的可攜式記憶體,或其組合。在其他的實例中,該等程式指令已經被安裝。在這裡,該等記憶體資源可以包括積體化的記憶體,諸如一硬碟、一固態硬碟、或類似物。
在一些實例中,該等處理資源(616)和該等記憶體資源(617)位於相同的實體組件內,諸如一伺服器、或一網路組件。該等記憶體資源(617)可以是該實體組件的主記憶體、快取、暫存器、非依電性記憶體、或在該實體組件之記憶體層次結構中其他地方的一部分。可替代地,該等記憶體資源(617)可與該等處理資源(616)透過一網路進行通信。此外,該等資料結構,諸如該等函式庫,可以透過一網路連線從一遠端位置被存取,而該等編程的指令都位於本地。因此,該記憶體管理器(601)可以被實現在一使用者裝置上、在一伺服器上、在一群伺服器上、或它們的組合。
圖6的該記憶體管理器(601)可以是一通用電腦的一部分。然而,在替代的實例中,該記憶體管理器(601)係一應用特定積體電路的一部分。
根據本文所描述之該等原理的實例,本呈現系統和方法的各個方面在本文中係以參照方法、裝置(系統)和電腦程式產品之流程圖和/或方塊圖的方式來被描述。該等流程圖和方塊圖的每一方塊,以及在該等流程圖和方塊圖中方塊的組合,可由電腦可使用程式碼來實現。該電腦可使用程式碼可被提供給一通用電腦、專用電腦、或其他可編程資料處理裝置的一處理器以產生出一機器,使得該電腦可使用程式碼,當其透過,舉例來說,該等處理資源(617)或其他可編程資料處理裝置來執行時,可實現在該等流程圖和/或方塊圖方塊或數個方塊中所指定的該等功能或動作。在一實例中,該電腦可使用程式碼可以被具體實現在一電腦可讀取儲存媒體內;該電腦可讀取儲存媒體可以是該電腦程式產品的一部分。在一實例中,該電腦可讀取儲存媒體是一非暫時性的電腦可讀取媒體。
在一記憶體陣列(圖1,105)中呈現資料無效的方法和系統可具有數個優點,其包含有:(1)使得記憶體在重新佈署時立即可用;(2)藉由確定資料從一記憶體陣列(圖1,105)被清除來保護先前的資料;(3)預先調零該資料以減輕對其他調零程式的需要;以及(4)在一廉價磁碟冗餘陣列(RAID)集合中無效化資料。
前面的描述已經被呈現來說明和描述該等被描
述之原理的實例。本說明並不旨在窮盡列舉,或把這些原理限制為所揭露之任何精確的形式。啟發於上述的教導,許多的修改和變化是有可能的。
100‧‧‧系統
101‧‧‧記憶體管理器
102‧‧‧建立模組
103‧‧‧比較模組
104‧‧‧傳回模組
105‧‧‧記憶體陣列
106-1、106-2、106-3‧‧‧記憶體位置
107-1、107-2、107-3、107-4‧‧‧應用
Claims (15)
- 一種在一記憶體陣列中呈現資料無效的方法,其包含有:為在一記憶體陣列中的一記憶體位置建立管理元資料;接收一請求以從該記憶體位置檢索資料;判定與該資料相關聯的色彩元資料是否匹配該管理元資料;當該色彩元資料匹配該管理元資料時傳回該資料;以及當該色彩元資料不匹配該管理元資料時傳回該無效的資料。
- 如請求項1之方法,更包含有巡視清除該記憶體陣列,其中巡視清除包含有:走查在該記憶體陣列中的數個記憶體位置;把與儲存在該等記憶體位置中資料相關聯的色彩元資料和該管理元資料做比較;以及把無效的資料、更新的色彩元資料、或者它們的組合寫入到包含有其色彩元資料異於該管理元資料之資料的記憶體位置,其中該更新的色彩元資料匹配該管理元資料。
- 如請求項2之方法,更包含有指出何時一巡視清除完成。
- 如請求項3之方法,更包含有防止該管理元資料的一更 新,直到未決之巡查清除操作完成為止。
- 如請求項1之方法,其中該無效的資料包含有一連串的零。
- 如請求項1之方法,其中更包含有刷新與該記憶體位置相關聯的記憶體快取。
- 一種在一記憶體陣列中呈現資料無效的系統,其包含有:一處理器;被通信耦合到該處理器的記憶體;以及一記憶體管理器,該記憶體管理器包含有:一建立模組以為在一記憶體陣列中數個記憶體位置建立管理元資料;一比較模組以把與儲存在該等記憶體位置中資料相關聯的色彩元資料和該管理元資料做比較;以及一傳回模組以傳回色彩元資料異於該管理元資料之無效的資料。
- 如請求項7之系統,其中該記憶體陣列是非依電性記憶體陣列。
- 如請求項7之系統,其中該記憶體是一依電性記憶體陣列。
- 如請求項7之系統,更包含有一巡查清除器以:藉由更新該管理元資料來無效化數個記憶體位置;走查在該記憶體陣列中的記憶體位置;把儲存在該等記憶體位置中資料的色彩元資料與 該等記憶體位置之更新的管理元資料做比較以識別出無效的記憶體位置;以及把無效的資料、更新的色彩元資料、或者它們的組合寫入到色彩元資料不匹配該更新管理元資料的記憶體位置。
- 如請求項10之系統,更包含有一清除狀態指示器以指出何時一巡查清除器已經走查過在該記憶體陣列中的該等記憶體位置。
- 如請求項10之系統,其中該巡視清除器實現一加速的走查程序。
- 如請求項7之系統,其中該無效的資料包含有異於該資料的一種位元值樣式。
- 一種在一記憶體陣列中呈現資料無效的電腦程式產品,該電腦程式產品包含有:一電腦可讀取儲存媒體,其包含有具體實現在其中的電腦可使用程式碼,該電腦可使用程式碼包含有:電腦可使用程式碼,當由一處理器來執行時,會為在一記憶體陣列中一記憶體位置建立管理元資料;電腦可使用程式碼,當由一處理器來執行時,會把與儲存在該等記憶體位置中第一資料相關聯的色彩元資料和該管理元資料做比較,其中該第一資料對應於一檢索該第一資料的請求;電腦可使用程式碼,當由一處理器來執行時,無效化色彩元資料異於該管理元資料的第一資料; 電腦可使用程式碼,當由一處理器來執行時,走查在該記憶體陣列中的數個記憶體位置;以及電腦可使用程式碼,當由一處理器來執行時,無效化儲存在色彩元資料異於該管理元資料之記憶體位置中的第二資料。
- 如請求項14之電腦程式產品,其中該管理元資料、該色彩元資料、或它們的組合包含有數個被設定為預定值的位元。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2014/014165 WO2015116168A1 (en) | 2014-01-31 | 2014-01-31 | Rendering data invalid in a memory array |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201530555A true TW201530555A (zh) | 2015-08-01 |
TWI546817B TWI546817B (zh) | 2016-08-21 |
Family
ID=53757555
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW103144301A TWI546817B (zh) | 2014-01-31 | 2014-12-18 | 記憶體陣列中呈現資料無效之技術 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10241715B2 (zh) |
TW (1) | TWI546817B (zh) |
WO (1) | WO2015116168A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI670595B (zh) * | 2017-09-26 | 2019-09-01 | 慧榮科技股份有限公司 | 主動錯誤更正失敗處理方法 |
US11016841B2 (en) | 2017-09-26 | 2021-05-25 | Silicon Motion, Inc. | Methods and apparatuses for proactive ECC failure handling |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2513111A (en) * | 2013-04-08 | 2014-10-22 | Sony Corp | Data encoding and decoding |
US11062052B2 (en) * | 2018-07-13 | 2021-07-13 | Bank Of America Corporation | System for provisioning validated sanitized data for application development |
US11636008B2 (en) | 2021-09-01 | 2023-04-25 | Micron Technology, Inc. | Tracking host-provided metadata in a memory sub-system |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6044441A (en) * | 1995-09-29 | 2000-03-28 | Intel Corporation | Method and apparatus for encoding valid and invalid states in a cache with an invalid pattern |
CN1171152C (zh) | 2000-06-13 | 2004-10-13 | 中兴通讯股份有限公司 | 一种实时系统中内存快速分配与释放的方法 |
US20050138296A1 (en) * | 2003-12-18 | 2005-06-23 | Coulson Richard L. | Method and system to alter a cache policy |
US8224786B2 (en) | 2004-06-01 | 2012-07-17 | Inmage Systems, Inc. | Acquisition and write validation of data of a networked host node to perform secondary storage |
KR100578143B1 (ko) | 2004-12-21 | 2006-05-10 | 삼성전자주식회사 | 버퍼 메모리에 저장된 데이터를 무효화시키는 스킴을 갖는저장 시스템 및 그것을 포함한 컴퓨팅 시스템 |
US8452938B1 (en) | 2004-12-30 | 2013-05-28 | Azul Systems, Inc. | Garbage collection with memory quick release |
US7913147B2 (en) * | 2006-05-08 | 2011-03-22 | Intel Corporation | Method and apparatus for scrubbing memory |
US8255887B2 (en) | 2006-11-29 | 2012-08-28 | International Business Machines Corporation | Method and apparatus for re-using memory allocated for data structures used by software processes |
US7899958B2 (en) | 2006-12-21 | 2011-03-01 | Unisys Corporation | Input/output completion system and method for a data processing platform |
KR101716348B1 (ko) | 2010-03-16 | 2017-03-15 | 삼성전자주식회사 | 메모리 시스템, 그것의 동작 방법, 그리고 그것을 포함하는 컴퓨팅 시스템 |
US7979667B2 (en) | 2007-12-10 | 2011-07-12 | Spansion Llc | Memory array search engine |
US8108587B2 (en) | 2009-05-26 | 2012-01-31 | Microsoft Corporation | Free-space reduction in cached database pages |
WO2011099963A1 (en) * | 2010-02-10 | 2011-08-18 | Hewlett-Packard Development Company, L.P. | Identifying a location containing invalid data in a storage media |
US8615517B1 (en) | 2011-06-20 | 2013-12-24 | Foto-Kem Industries, Inc. | Systems and methods for metadata-based workflows for content creation and media distribution |
-
2014
- 2014-01-31 US US15/111,693 patent/US10241715B2/en active Active
- 2014-01-31 WO PCT/US2014/014165 patent/WO2015116168A1/en active Application Filing
- 2014-12-18 TW TW103144301A patent/TWI546817B/zh not_active IP Right Cessation
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI670595B (zh) * | 2017-09-26 | 2019-09-01 | 慧榮科技股份有限公司 | 主動錯誤更正失敗處理方法 |
US11016841B2 (en) | 2017-09-26 | 2021-05-25 | Silicon Motion, Inc. | Methods and apparatuses for proactive ECC failure handling |
Also Published As
Publication number | Publication date |
---|---|
US10241715B2 (en) | 2019-03-26 |
TWI546817B (zh) | 2016-08-21 |
US20180165036A1 (en) | 2018-06-14 |
WO2015116168A1 (en) | 2015-08-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI546817B (zh) | 記憶體陣列中呈現資料無效之技術 | |
US11461242B2 (en) | Integration of application indicated minimum time to cache and maximum time to cache to least recently used track demoting schemes in a cache management system of a storage controller | |
US10331568B2 (en) | Locking a cache line for write operations on a bus | |
US20160026403A1 (en) | Merging an out of synchronization indicator and a change recording indicator in response to a failure in consistency group formation | |
WO2018161559A1 (zh) | 非易失性内存的掉电保护方法及装置 | |
US8364899B2 (en) | User-controlled targeted cache purge | |
US9507660B2 (en) | Eliminate corrupted portions of cache during runtime | |
US9870278B2 (en) | Managing spaces in memory | |
US8874957B2 (en) | Dynamic cache correction mechanism to allow constant access to addressable index | |
US20180276142A1 (en) | Flushes after storage array events | |
US10282371B1 (en) | Object storage device with probabilistic data structure | |
US11768701B2 (en) | Exception analysis for data storage devices | |
US8352716B1 (en) | Boot caching for boot acceleration within data storage systems | |
US10949359B2 (en) | Optimizing cache performance with probabilistic model | |
US9594689B2 (en) | Designated cache data backup during system operation | |
US9529717B2 (en) | Preserving an invalid global domain indication when installing a shared cache line in a cache | |
US20220179782A1 (en) | Buffer pool maintenance improvement | |
US9495300B2 (en) | Set selection of a set-associative storage container | |
CN115202561A (zh) | 用于管理存储系统的方法、设备和计算机程序产品 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |