[發明專利]一種基于高速緩存感知的垃圾回收方法、設備及存儲介質有效
| 申請號: | 202011025007.0 | 申請日: | 2020-09-25 |
| 公開(公告)號: | CN112148631B | 公開(公告)日: | 2023-05-26 |
| 發明(設計)人: | 潘玉彪;張惠臻;張憶文 | 申請(專利權)人: | 華僑大學 |
| 主分類號: | G06F12/02 | 分類號: | G06F12/02;G06F12/0882;G06F3/06 |
| 代理公司: | 廈門市首創君合專利事務所有限公司 35204 | 代理人: | 張松亭 |
| 地址: | 362000 福建省*** | 國省代碼: | 福建;35 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 高速緩存 感知 垃圾 回收 方法 設備 存儲 介質 | ||
本發明提供一種基于高速緩存感知的垃圾回收方法、設備及存儲介質,其中方法包括:垃圾回收操作開始時,固態硬盤會掃描所有物理塊和高速緩存,得到每塊物理塊內包含有效頁的數量以及每塊物理塊保存在高速緩存中的有效頁的數量;將每塊物理塊的有效頁數量減去每個物理塊保存在高速緩存中的有效頁數量,得到每塊物理塊真正需要移動的有效頁的數量;選擇上述數值最小的物理塊作為垃圾回收的目標塊;針對該目標塊,開始掃描每一個物理頁;并采用高速緩存一致性方法,完成目標塊的沒有保存在高速緩存中的所有有效頁移動,即完成一次垃圾回收操作;本發明提供的方法,能夠取得更少的有效頁移動,獲得良好的性能。
技術領域
本發明涉及計算機存儲領域,特別是指一種基于高速緩存感知的垃圾回收方法、設備及存儲介質。
背景技術
因為其更高的性能以及更低的能耗,基于閃存的固態硬盤已經被應用到各種消費電子產品以及數據中心當中。然而,“寫前擦除”是基于閃存固態硬盤的一個限制。具體來說,當更新一個數據頁時,固態硬盤需要先將該數據頁所在的整個數據塊擦除,然后再寫入數據。由于擦除操作非常耗時,因此這個過程將導致固態硬盤的性能降級。
為了解決上述問題,固態硬盤內部引入“異地更新”機制。該機制允許更新的數據寫入空白的數據頁,并將老版本數據所在的數據頁標記為無效。為了回收這些被老版本占據的無效頁的物理空間,“垃圾回收”操作必須被部署并觸發。垃圾回收首先根據特定的算法選擇一塊物理塊作為目標塊,然后讀出該目標塊的所有有效頁數據,接著將這些有效頁數據寫入其他物理塊的空白物理頁,最后擦除選擇的目標塊。整個垃圾回收過程將引入大量額外的有效頁的讀寫操作。因此,為了獲得更好的垃圾回收性能,垃圾回收機制通常會使用貪心算法在全部的物理塊當中選擇包含有效頁最少的物理塊作為目標塊,但該算法并不能取得很好的效果。
發明內容
本發明的主要目的在于克服現有技術中的上述缺陷,提出一種基于高速緩存感知的垃圾回收方法,能夠取得更少的有效頁移動,獲得良好的性能。
本發明采用如下技術方案:
一種基于高速緩存感知的垃圾回收方法,包括:
S1、垃圾回收操作開始,固態硬盤掃描所有物理塊,得到每塊物理塊內包含有效頁的數量;
S2、固態硬盤掃描每個物理塊對應的高速緩存,利用計數器記錄所述物理塊緩存在高速緩存中的有效頁數量,將每塊物理塊的有效頁數量減去每個物理塊對應計數器的值,得到每塊物理塊真正需要移動的有效頁的數量;
S3、選擇真正需要移動的有效頁的數量最小的物理塊作為垃圾回收的目標塊;
S4、針對所述目標塊,開始掃描每一個物理頁;
S5、判斷所述物理頁是否為無效頁;如果是,跳轉到S9;否則,進入S6。
S6、所述物理頁為有效頁,判斷所述物理頁是否緩存在高速緩存中;如果是,跳轉到S8;否則,進入S7。
S7、將所述物理頁從閃存中讀取到高速緩存中,如果高速緩存滿,則采用LRU算法替換。
S8、將所述物理頁在高速緩存中的狀態修改或保持為“臟”,將映射關系中的物理頁面地址刪除。
S9、判斷是否掃描完目標塊當中的所有物理頁;如果是,跳轉到S11;否則,進入S10。
S10、掃描下一個物理頁,并跳轉到S5;
S11、完成該目標塊的有效頁移動,擦除目標塊,完成一次垃圾回收操作。
具體地,步驟S2中將每塊物理塊的有效頁數量減去每個物理塊對應計數器的值,得到每塊物理塊真正需要移動的有效頁的數量,所述計數器的值具體獲取方法包括:
固態硬盤初始化時,這些計數器都清零;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于華僑大學,未經華僑大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202011025007.0/2.html,轉載請聲明來源鉆瓜專利網。





