專利名稱:一種緩存管理器和閃存轉(zhuǎn)換層協(xié)調(diào)工作的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及閃存存儲技術(shù)領(lǐng)域,特別涉及一種緩存管理器和閃存轉(zhuǎn)換層協(xié)調(diào)工作的方法。
背景技術(shù):
閃存具有隨機(jī)訪問速度快、抗震動、能耗低等優(yōu)點(diǎn)。近年來,隨著閃存存儲容量的增加以及價格的降低,閃存得到了越來越廣泛的應(yīng)用。在大量桌面計算機(jī)中,已經(jīng)裝備了以閃存為介質(zhì)的固態(tài)硬盤。然而,閃存的存儲單元只有在擦除后才能寫數(shù)據(jù),因此不能執(zhí)行本地更新操作。此外,閃存的存儲單元擦除次數(shù)也是有限的。緩存管理器和閃存轉(zhuǎn)換層是提高閃存的性能和壽命的兩種技術(shù)手段。然而,在目前的緩存管理器和閃存轉(zhuǎn)換層設(shè)計中,二者是獨(dú)立工作的,因此,二者不能協(xié)調(diào)工作。也就是說,緩存管理器知道當(dāng)前要替換哪個數(shù)據(jù),以及不久的將來要替換哪些數(shù)據(jù),但是不知道閃存的物理存儲信息;而閃存轉(zhuǎn)換層具有全部閃存的物理存儲信息,但是只知道當(dāng)前要更新哪個數(shù)據(jù),而不知道不久的將來要更新哪些數(shù)據(jù)。二者的獨(dú)立工作影響了閃存性能以及閃存壽命的提高。因此,降低二者之間的信息差,使二者協(xié)調(diào)工作,成為提高閃存性能和閃存壽命必須要解決的重要問題。
發(fā)明內(nèi)容
(一)要解決的技術(shù)問題本發(fā)明要解決的技術(shù)問題是如何提供一種緩存管理器和閃存轉(zhuǎn)換層協(xié)調(diào)工作的方法,以降低緩存管理器和閃存轉(zhuǎn)換層之間的信息差,使二者協(xié)調(diào)工作,進(jìn)而提高閃存性能和閃存壽命。( 二 )技術(shù)方案為解決上述技術(shù)問題,本發(fā)明提供一種緩存管理器和閃存轉(zhuǎn)換層協(xié)調(diào)工作的方法,其包括步驟A 緩存管理器提供多個替換備選項給閃存轉(zhuǎn)換層;B 所述閃存轉(zhuǎn)換層根據(jù)所述替換備選項,以及閃存的當(dāng)前物理存儲信息,發(fā)送響應(yīng)信息給所述緩存管理器;C 所述緩存管理器根據(jù)所述響應(yīng)信息,執(zhí)行相應(yīng)的緩存管理操作或者提供相應(yīng)的傳遞數(shù)據(jù)給所述閃存轉(zhuǎn)換層;D 所述閃存轉(zhuǎn)換層無操作,或者在接收到所述傳遞數(shù)據(jù)后執(zhí)行相應(yīng)的轉(zhuǎn)換層操作。優(yōu)選地,在所述步驟D之后還包括步驟E 所述緩存管理器根據(jù)所述響應(yīng)信息,無操作或者釋放所述響應(yīng)信息對應(yīng)的邏輯塊的所有數(shù)據(jù)。優(yōu)選地,所述響應(yīng)信息包括操作類型和操作對象兩部分。優(yōu)選地,所述操作類型包括替換操作、更新操作和合并操作。優(yōu)選地,當(dāng)所述響應(yīng)信息的操作類型為替換操作時,相應(yīng)的操作對象為所述替換
3備選項;當(dāng)所述響應(yīng)信息的操作類型為更新操作時,相應(yīng)的操作對象為所述替換備選項; 當(dāng)所述響應(yīng)信息的操作類型為合并操作時,相應(yīng)的操作對象為一個邏輯塊。優(yōu)選地,所述步驟C具體包括步驟Cl 所述緩存管理器接收所述響應(yīng)信息,提取所述響應(yīng)信息的操作類型和操作對象;C2:判斷所述響應(yīng)信息的操作類型是否是替換操作,如果是,將所述響應(yīng)信息對應(yīng)的替換備選項的數(shù)據(jù)替換出緩存;否則,執(zhí)行步驟C3 ;C3:判斷所述響應(yīng)信息的操作類型是否是更新操作,如果是,將所述響應(yīng)信息對應(yīng)的替換備選項的數(shù)據(jù)作為第一傳遞數(shù)據(jù)提交給所述閃存轉(zhuǎn)換層;否則,將所述響應(yīng)信息對應(yīng)的邏輯塊在緩存中的臟數(shù)據(jù)作為第二傳遞數(shù)據(jù)提交給所述閃存轉(zhuǎn)換層。優(yōu)選地,所述步驟D具體包括步驟Dl 所述閃存轉(zhuǎn)換層判斷是否接收到所述第一傳遞數(shù)據(jù),如果是,所述閃存轉(zhuǎn)換層將所述第一傳遞數(shù)據(jù)更新到閃存中;否則,執(zhí)行步驟D2 ;D2:所述閃存轉(zhuǎn)換層判斷是否接收到所述第二傳遞數(shù)據(jù),如果是,所述閃存轉(zhuǎn)換層分配一個空閑物理塊,并將所述響應(yīng)信息對應(yīng)的邏輯塊的有效頁寫到所述空閑物理塊上; 否則,所述閃存轉(zhuǎn)換層無操作。優(yōu)選地,所述步驟E具體包括步驟El 所述緩存管理器判斷所述響應(yīng)信息的操作類型是否是替換操作,如果是,無操作;否則,執(zhí)行步驟E2;E2 所述緩存管理器判斷所述響應(yīng)信息的操作類型是否是更新操作,如果是,從緩存中釋放所述第一傳遞數(shù)據(jù);否則,從緩存中釋放所述響應(yīng)信息對應(yīng)的邏輯塊的所有數(shù)據(jù)。(三)有益效果本發(fā)明所述緩存管理器和閃存轉(zhuǎn)換層協(xié)調(diào)工作的方法,緩存管理器預(yù)先將多個替換備選項發(fā)送給閃存轉(zhuǎn)換層,閃存轉(zhuǎn)換層結(jié)合閃存的當(dāng)前物理存儲信息,反饋響應(yīng)信息并執(zhí)行相應(yīng)操作,從而降低了緩存管理器和閃存轉(zhuǎn)換層之間的信息差,使二者協(xié)調(diào)工作,進(jìn)而提高閃存性能和閃存壽命。
圖1是本發(fā)明實(shí)施例所述的緩存管理器和閃存轉(zhuǎn)換層協(xié)調(diào)工作的方法流程圖。
具體實(shí)施例方式下面結(jié)合附圖和實(shí)施例,對本發(fā)明的具體實(shí)施方式
作進(jìn)一步詳細(xì)描述。以下實(shí)施例用于說明本發(fā)明,但不用來限制本發(fā)明的范圍。圖1是本發(fā)明實(shí)施例所述的緩存管理器和閃存轉(zhuǎn)換層協(xié)調(diào)工作的方法流程圖。如圖1所示,所述方法包括步驟A 緩存管理器提供多個替換備選項給閃存轉(zhuǎn)換層。所述緩存管理器使用現(xiàn)有的替換策略,但不是選擇一個數(shù)據(jù)單元進(jìn)行替換,而是選擇多個替換備選項,并將這些替換備選項都提供給所述閃存轉(zhuǎn)換層。步驟B 所述閃存轉(zhuǎn)換層根據(jù)所述多個替換備選項,以及閃存的當(dāng)前物理存儲信息,發(fā)送響應(yīng)信息給所述緩存管理器。所述響應(yīng)信息包括操作類型和操作對象兩部分。所述操作類型包括替換操作、更新操作和合并操作。當(dāng)所述響應(yīng)信息的操作類型為替換操作時,相應(yīng)的操作對象為所述替換備選項;當(dāng)所述響應(yīng)信息的操作類型為更新操作時,相應(yīng)的操作對象為所述替換備選項;當(dāng)所述響應(yīng)信息的操作類型為合并操作時,相應(yīng)的操作對象為一個邏輯塊。步驟C 所述緩存管理器根據(jù)所述響應(yīng)信息,執(zhí)行相應(yīng)的緩存管理操作或者提供相應(yīng)的傳遞數(shù)據(jù)給所述閃存轉(zhuǎn)換層。所述步驟C具體包括步驟Cl 所述緩存管理器接收所述響應(yīng)信息,提取所述響應(yīng)信息的操作類型和操作對象;步驟C2 判斷所述響應(yīng)信息的操作類型是否是替換操作,如果是,將所述響應(yīng)信息對應(yīng)的替換備選項的數(shù)據(jù)替換出緩存;否則,執(zhí)行步驟C3 ;步驟C3 判斷所述響應(yīng)信息的操作類型是否是更新操作,如果是,將所述響應(yīng)信息對應(yīng)的替換備選項的數(shù)據(jù)作為第一傳遞數(shù)據(jù)提交給所述閃存轉(zhuǎn)換層;否則,將所述響應(yīng)信息對應(yīng)的邏輯塊在緩存中的臟數(shù)據(jù)(即經(jīng)過修改的數(shù)據(jù))作為第二傳遞數(shù)據(jù)提交給所述閃存轉(zhuǎn)換層。步驟D 所述閃存轉(zhuǎn)換層無操作,或者在接收到所述傳遞數(shù)據(jù)后執(zhí)行相應(yīng)的轉(zhuǎn)換層操作。所述步驟D具體包括步驟Dl 所述閃存轉(zhuǎn)換層判斷是否接收到所述第一傳遞數(shù)據(jù),如果是,所述閃存轉(zhuǎn)換層將所述第一傳遞數(shù)據(jù)更新到閃存中;否則,執(zhí)行步驟D2 ;步驟D2 所述閃存轉(zhuǎn)換層判斷是否接收到所述第二傳遞數(shù)據(jù),如果是,所述閃存轉(zhuǎn)換層分配一個空閑物理塊,并將所述響應(yīng)信息對應(yīng)的邏輯塊的有效頁寫到所述空閑物理塊上;否則,所述閃存轉(zhuǎn)換層無操作。所述響應(yīng)信息對應(yīng)的邏輯塊的有效頁可能來自所述第二傳遞數(shù)據(jù)或者閃存,來自閃存的部分由所述閃存轉(zhuǎn)換層管理,所以無需傳遞。步驟E 所述緩存管理器根據(jù)所述響應(yīng)信息,無操作或者釋放所述響應(yīng)信息對應(yīng)的邏輯塊的所有數(shù)據(jù)。所述步驟E具體包括步驟El 所述緩存管理器判斷所述響應(yīng)信息的操作類型是否是替換操作,如果是,無操作(即此時不再需要進(jìn)行操作);否則,執(zhí)行步驟E2 ;步驟E2 所述緩存管理器判斷所述響應(yīng)信息的操作類型是否是更新操作,如果是,從緩存中釋放所述第一傳遞數(shù)據(jù);否則,從緩存中釋放所述響應(yīng)信息對應(yīng)的邏輯塊的所有數(shù)據(jù)。這里的所有數(shù)據(jù)包括所述第二傳遞數(shù)據(jù)和所述響應(yīng)信息對應(yīng)的邏輯塊在緩存中未經(jīng)修改的干凈數(shù)據(jù)。本發(fā)明實(shí)施例所述緩存管理器和閃存轉(zhuǎn)換層協(xié)調(diào)工作的方法,緩存管理器預(yù)先將多個替換備選項發(fā)送給閃存轉(zhuǎn)換層,閃存轉(zhuǎn)換層結(jié)合閃存的當(dāng)前物理存儲信息,反饋響應(yīng)信息并執(zhí)行相應(yīng)操作,從而降低了緩存管理器和閃存轉(zhuǎn)換層之間的信息差,使二者協(xié)調(diào)工作,進(jìn)而提高閃存性能和閃存壽命。以上實(shí)施方式僅用于說明本發(fā)明,而并非對本發(fā)明的限制,有關(guān)技術(shù)領(lǐng)域的普通技術(shù)人員,在不脫離本發(fā)明的精神和范圍的情況下,還可以做出各種變化和變型,因此所有等同的技術(shù)方案也屬于本發(fā)明的范疇,本發(fā)明的專利保護(hù)范圍應(yīng)由權(quán)利要求限定。
權(quán)利要求
1.一種緩存管理器和閃存轉(zhuǎn)換層協(xié)調(diào)工作的方法,其特征在于,包括步驟A 緩存管理器提供多個替換備選項給閃存轉(zhuǎn)換層;B 所述閃存轉(zhuǎn)換層根據(jù)所述替換備選項,以及閃存的當(dāng)前物理存儲信息,發(fā)送響應(yīng)信息給所述緩存管理器;C 所述緩存管理器根據(jù)所述響應(yīng)信息,執(zhí)行相應(yīng)的緩存管理操作或者提供相應(yīng)的傳遞數(shù)據(jù)給所述閃存轉(zhuǎn)換層;D 所述閃存轉(zhuǎn)換層無操作,或者在接收到所述傳遞數(shù)據(jù)后執(zhí)行相應(yīng)的轉(zhuǎn)換層操作。
2.如權(quán)利要求1所述的方法,其特征在于,在所述步驟D之后還包括步驟E所述緩存管理器根據(jù)所述響應(yīng)信息,無操作或者釋放所述響應(yīng)信息對應(yīng)的邏輯塊的所有數(shù)據(jù)。
3.如權(quán)利要求2所述的方法,其特征在于,所述響應(yīng)信息包括操作類型和操作對象兩部分。
4.如權(quán)利要求3所述的方法,其特征在于,所述操作類型包括替換操作、更新操作和合并操作。
5.如權(quán)利要求4所述的方法,其特征在于,當(dāng)所述響應(yīng)信息的操作類型為替換操作時, 相應(yīng)的操作對象為所述替換備選項;當(dāng)所述響應(yīng)信息的操作類型為更新操作時,相應(yīng)的操作對象為所述替換備選項;當(dāng)所述響應(yīng)信息的操作類型為合并操作時,相應(yīng)的操作對象為一個邏輯塊。
6.如權(quán)利要求5所述的方法,其特征在于,所述步驟C具體包括步驟Cl 所述緩存管理器接收所述響應(yīng)信息,提取所述響應(yīng)信息的操作類型和操作對象;C2:判斷所述響應(yīng)信息的操作類型是否是替換操作,如果是,將所述響應(yīng)信息對應(yīng)的替換備選項的數(shù)據(jù)替換出緩存;否則,執(zhí)行步驟C3 ;C3:判斷所述響應(yīng)信息的操作類型是否是更新操作,如果是,將所述響應(yīng)信息對應(yīng)的替換備選項的數(shù)據(jù)作為第一傳遞數(shù)據(jù)提交給所述閃存轉(zhuǎn)換層;否則,將所述響應(yīng)信息對應(yīng)的邏輯塊在緩存中的臟數(shù)據(jù)作為第二傳遞數(shù)據(jù)提交給所述閃存轉(zhuǎn)換層。
7.如權(quán)利要求6所述的方法,其特征在于,所述步驟D具體包括步驟Dl 所述閃存轉(zhuǎn)換層判斷是否接收到所述第一傳遞數(shù)據(jù),如果是,所述閃存轉(zhuǎn)換層將所述第一傳遞數(shù)據(jù)更新到閃存中;否則,執(zhí)行步驟D2 ;D2:所述閃存轉(zhuǎn)換層判斷是否接收到所述第二傳遞數(shù)據(jù),如果是,所述閃存轉(zhuǎn)換層分配一個空閑物理塊,并將所述響應(yīng)信息對應(yīng)的邏輯塊的有效頁寫到所述空閑物理塊上;否則, 所述閃存轉(zhuǎn)換層無操作。
8.如權(quán)利要求7所述的方法,其特征在于,所述步驟E具體包括步驟El 所述緩存管理器判斷所述響應(yīng)信息的操作類型是否是替換操作,如果是,無操作; 否則,執(zhí)行步驟E2;E2 所述緩存管理器判斷所述響應(yīng)信息的操作類型是否是更新操作,如果是,從緩存中釋放所述第一傳遞數(shù)據(jù);否則,從緩存中釋放所述響應(yīng)信息對應(yīng)的邏輯塊的所有數(shù)據(jù)。
全文摘要
本發(fā)明公開了一種緩存管理器和閃存轉(zhuǎn)換層協(xié)調(diào)工作的方法,涉及閃存存儲領(lǐng)域。所述方法包括步驟緩存管理器提供多個替換備選項給閃存轉(zhuǎn)換層;閃存轉(zhuǎn)換層根據(jù)多個替換備選項,以及閃存的當(dāng)前物理存儲信息,發(fā)送響應(yīng)信息給緩存管理器;緩存管理器根據(jù)所述響應(yīng)信息,執(zhí)行相應(yīng)的緩存管理操作或者提供相應(yīng)的傳遞數(shù)據(jù)給閃存轉(zhuǎn)換層;閃存轉(zhuǎn)換層無操作,或者在接收到傳遞數(shù)據(jù)后執(zhí)行相應(yīng)的轉(zhuǎn)換層操作。所述方法,緩存管理器預(yù)先將多個替換備選項發(fā)送給閃存轉(zhuǎn)換層,閃存轉(zhuǎn)換層結(jié)合閃存的當(dāng)前物理存儲信息,反饋響應(yīng)信息并執(zhí)行相應(yīng)操作,從而降低了緩存管理器和閃存轉(zhuǎn)換層之間的信息差,使二者協(xié)調(diào)工作,進(jìn)而提高閃存性能和閃存壽命。
文檔編號G06F12/12GK102567229SQ20111042146
公開日2012年7月11日 申請日期2011年12月15日 優(yōu)先權(quán)日2011年12月15日
發(fā)明者廖學(xué)良, 胡事民 申請人:清華大學(xué)