本技術實施例涉及存儲,涉及但不限于一種垃圾回收處理方法、電子設備及存儲介質。
背景技術:
1、電子設備的相關存儲裝置,例如,嵌入式多媒體卡(embedded?multi?media?card,emmc)、通用閃存存儲(universal?flash?storage,ufs)等具備垃圾回收功能,該功能可以實現對電子設備產生的碎片化數據進行處理,以避免大量的碎片化數據導致存儲裝置的讀寫速度快速降低。
2、然而,現有技術中觸發存儲裝置進行碎片化數據處理通常是當操作系統訪問存儲裝置時若檢測到存儲裝置空間不足,則存儲裝置啟動對碎片化數據的處理,觸發方式比較單一。
技術實現思路
1、有鑒于此,本技術實施例提供一種垃圾回收處理方法、電子設備及存儲介質,本技術實施例提供的一種垃圾回收處理方法、電子設備及存儲介質是這樣實現的:
2、本技術實施例提供的一種垃圾回收處理方法,應用于電子設備,所述電子設備包括操作系統以及存儲裝置,所述方法包括:
3、所述操作系統向所述存儲裝置發送垃圾回收功能的開啟指令;
4、所述存儲裝置響應所述垃圾回收功能的開啟指令,獲取預設存儲空間目標值;
5、所述存儲裝置在所述存儲裝置的剩余可用存儲空間小于或等于所述預設存儲空間目標值的情況下,對所述存儲裝置中的數據進行垃圾回收處理。
6、本技術實施例中,提供了一種在操作系統端手動啟動垃圾回收功能的方式,在操作系統端實現了垃圾回收功能的自主可控;以及可以有效避免垃圾回收處理與訪問請求同時進行,降低對存儲裝置性能的不利影響。
7、在一些實施例中,在所述操作系統向所述存儲裝置發送垃圾回收功能的開啟指令之前,所述方法還包括:
8、所述操作系統設置與所述存儲裝置之間的目標讀寫通道;
9、所述操作系統向所述存儲裝置發送垃圾回收功能的開啟指令,包括:
10、所述操作系統通過所述目標讀寫通道向所述存儲裝置發送所述垃圾回收功能的開啟指令。
11、該實施例中,通過設置操作系統和存儲裝置之間的讀寫通道,既可以提高垃圾回收功能的啟動效率,還可以避免操作系統和存儲裝置之間的其他通信操作對垃圾回收功能的運行產生干擾。
12、在一些實施例中,所述操作系統設置與所述存儲裝置之間的目標讀寫通道,包括:
13、所述操作系統向所述存儲裝置發送通信配置命令,所述通信配置命令包括讀寫通道配置參數;
14、所述存儲裝置根據所述讀寫通道配置參數設置所述目標讀寫通道。
15、該實施例中,通過讀寫通道配置參數進行讀寫通道配置,使得操作系統和存儲裝置之間可以正確讀取和設置垃圾回收功能的相關參數。
16、在一些實施例中,在所述存儲裝置根據所述讀寫通道配置參數設置所述目標讀寫通道之后,且在所述操作系統向所述存儲裝置發送垃圾回收功能的開啟指令之前,所述方法還包括:
17、所述操作系統對所述目標讀寫通道進行驗證。
18、該實施例中,通過對讀寫通道進一步驗證,可以及時了解讀寫通道是否成功設置,避免影響后續的垃圾回收功能的啟動和運行。
19、在一些實施例中,所述操作系統對所述目標讀寫通道進行驗證,包括:
20、所述操作系統通過所述目標讀寫通道向所述存儲裝置發送存儲指令,所述存儲指令用于存儲驗證數據;
21、所述存儲裝置根據所述存儲指令,將所述驗證數據存儲至所述存儲裝置的目標區域;
22、所述存儲裝置從所述目標區域讀取數據,并通過所述目標讀寫通道向所述操作系統發送讀取到的數據;
23、所述操作系統接收所述讀取到的數據,在所述驗證數據與所述讀取到的數據相同的情況下,完成對所述目標讀寫通路的驗證。
24、該實施例中,通過存儲指令對讀寫通道的有效性進行驗證,可以準確、快速的確定讀寫通道是否設置成功。
25、在一些實施例中,在所述操作系統向所述存儲裝置發送通信配置命令之前,所述方法還包括:
26、所述操作系統向所述存儲裝置發送認證命令,所述認證命令用于查詢所述存儲裝置是否具備垃圾回收功能;
27、所述存儲裝置接收所述認證命令,并根據所述認證命令查詢并向所述操作系統發送查詢結果;
28、所述操作系統接收所述查詢結果,在所述查詢結果指示所述存儲裝置具備所述垃圾回收功能的情況下,完成對所述存儲裝置的認證。
29、該實施例中,在啟動設置讀寫通道之前,對存儲裝置是否具備垃圾回收功能進行認證,可以建立操作系統對存儲裝置的信任,還可以避免操作系統和存儲裝置進行無效的讀取通道設置操作。
30、在一些實施例中,所述操作系統設置有目標設置節點,在所述操作系統向所述存儲裝置發送垃圾回收功能的開啟指令之前,所述方法還包括:
31、所述操作系統通過所述目標設置節點設置所述預設存儲空間目標值。
32、該實施例中,通過設置節點可以簡化垃圾回收功能相關參數的設置操作,還可以實現對垃圾回收功能相關參數的集中部署及管理,以提高垃圾回收處理的效率和性能。
33、在一些實施例中,所述方法還包括:
34、所述操作系統通過所述目標設置節點生成包括預警存儲空間值的設置指令;
35、所述操作系統通過所述目標讀寫通道向所述存儲裝置發送所述設置指令;
36、所述存儲裝置響應所述設置指令,并設置所述預警存儲空間值。
37、該實施例中,可以預先設置預警存儲空間值,即使操作系統未主動發送垃圾回收功能的啟動指令,存儲裝置也可以通過預警存儲空間值與存儲裝置的剩余存儲空間的大小關系,啟動垃圾回收功能。
38、在一些實施例中,在所述存儲裝置響應所述設置指令,并設置所述預警存儲空間值之后,所述方法還包括:
39、所述存儲裝置按照預設時間間隔檢測所述存儲裝置的剩余存儲空間;
40、所述存儲裝置在所述剩余存儲空間小于或等于所述預警存儲空間值的情況下,所述存儲裝置通過所述目標讀寫通道向所述操作系統發送預警信息,所述預警信息用于提示所述操作系統向所述存儲裝置發送所述垃圾回收功能的開啟指令。
41、該實施例中,通過對比預警存儲空間值與存儲裝置的剩余存儲空間,存儲裝置可以主動啟動垃圾回收功能,有效避免因存儲裝置空間不足對存儲裝置的性能產生不利影響。
42、在一些實施例中,所述操作系統還設置有目標讀取節點,所述方法還包括:
43、所述操作系統通過所述目標讀取節點生成讀取指令,所述讀取指令用于讀取所述垃圾回收功能的運行狀態參數以及所述剩余可用存儲空間的值;
44、所述操作系統通過所述目標讀寫通道向所述存儲裝置發送所述讀取指令;
45、所述存儲裝置響應所述讀取指令,通過所述目標讀寫通道向所述操作系統發送所述垃圾回收功能的運行狀態參數以及所述剩余可用存儲空間的值。
46、該實施例中,操作系統可以通過讀取節點快速、準確的獲知存儲裝置的剩余空間的大小以及垃圾回收功能的運行狀態,用戶可以在操作系統端了解目前存儲裝置的性能。
47、本技術實施例提供的一種電子設備,所述電子設備包括操作系統以及存儲裝置,其中:
48、所述操作系統,用于向所述存儲裝置發送垃圾回收功能的開啟指令;
49、所述存儲裝置,用于響應所述垃圾回收功能的開啟指令,獲取預設存儲空間目標值;
50、所述存儲裝置,還用于在所述存儲裝置的剩余可用存儲空間小于或等于所述預設存儲空間目標值的情況下,對所述存儲裝置中的數據進行垃圾回收處理。
51、本技術實施例提供的一種電子設備,包括存儲器和處理器,所述存儲器存儲有可在處理器上運行的計算機程序,所述處理器執行所述程序時實現本技術實施例所述的方法。
52、本技術實施例提供的計算機可讀存儲介質,其上存儲有計算機程序,該計算機程序被處理器執行時實現本技術實施例提供的所述的方法。