新四季網

碎片整理的方法、終端設備及計算機可讀存儲介質與流程

2023-09-20 04:14:00

本發明涉及碎片的整理技術,尤其涉及一種碎片整理的方法、終端設備及計算機可讀存儲介質。
背景技術:
::當前主流android手機上,data分區以及內置sdcard分區已經合併,在底層依然採用的是ext4日誌文件系統。ext4文件系統在設計之初就考慮了碎片問題,並採用了對應的應對策略,比如multi-blockallocator、delayedallocation、blockgroups等。但當文件持續增加,或者存儲空間開始滿了(%85),碎片仍有可能發生。特別是在android系統中,隨著app的使用,app數據不斷膨脹,存儲空間越來越緊張,文件系統碎片不可避免。進而導致系統io性能下降,嚴重時甚至會影響到系統流暢性以及用戶體驗。技術實現要素:本發明的主要目的在於提出一種碎片整理的方法、終端設備及計算機可讀存儲介質,實現了結合文件的被訪問頻率及被修改頻率對文件的碎片化程度進行評估,以確定是否進行碎片清理,從而避免了壞區數目的增加,延長了存儲壽命。根據本發明的一個方面,提供了一種碎片整理的方法,所述方法包括:獲取第一文件參數和第二文件參數;所述第一文件參數用於描述文件的碎片化程度,所述第二文件參數用於描述所述文件的被操作頻率;根據所述第一文件參數和所述第二文件參數確定所述文件的整理評估參數;在所述整理評估參數大於預設閾值的情況下,對所述文件進行磁碟整理操作。可選的,所述第二文件參數的獲取,具體包括:獲取所述文件的第一參數,所述第一參數包括:上次修改時間、創建時間、上次訪問時間及上次碎片整理時間;根據所述第一參數滿足以下條件的情況,給所述第二文件參數賦值;所述條件包括:所述文件的上次修改時間是否早於上次碎片整理時間;或者,所述文件的上次訪問時間與現在時間的間隔是否大於第一預設值;或者,所述文件的上次修改時間與創建時間的差值是否大於第二預設值。可選的,所述上次碎片整理時間的獲取,包括:創建一個配置文件以記錄所有所述文件的上次碎片整理時間;或者,為每個所述文件分別創建對應的影子文件,所有所述影子文件均為空文件;當任一所述文件發生碎片整理時,修改相應的所述影子文件的上次修改時間,以記錄所述文件的上次碎片整理時間。可選的,所述第一文件參數的獲取,包括:根據物理磁碟的區段的數目extentnum以及所述文件佔用的塊數目blocknum,確定所述第一文件參數為:可選的,所述磁碟整理操作包括:將連續塊數小於預設閾值的至少兩個碎片區段中的內容搬移到一段連續的塊中形成整合區段。可選的,所述整合區段與被搬移的所述至少兩個碎片區段屬於同一個塊組。可選的,所述將連續塊數小於預設閾值的至少兩個碎片區段中的內容搬移到一段連續的塊中形成整合區段包括:獲取所述文件中連續塊數小於預設閾值的碎片區段;合併同一塊組中的邏輯上相鄰的所述碎片區段以形成合併區段;統計用於存儲所述文件的塊組鍊表中每個塊組的最大連續塊數目;遍歷所述合併區段中的所有碎片區段:若所述碎片區段滿足第一條件,對所述碎片區段進行組內搬移;或者,若所述碎片區段不滿足第一條件,且滿足第二條件,對所述碎片區段進行組間搬移;或者,若所述碎片區段同時不滿足第一條件及第二條件,則放棄對所述碎片區段的搬移。可選的,所述第一條件為:所述碎片區段的塊大小小於塊組內最大連續塊數目;所述第二條件為:在用於存儲所述文件的塊組鍊表中存在足以容納所述區段的塊組。可選的,在所述遍歷所述合併區段中的所有碎片區段之後,所述方法還包括:根據區段的搬移結果調整所述區段對應的結構樹;記錄所述上次碎片整理時間。根據本發明的第二個方面,提供了一種終端設備,所述終端包括存儲器、處理器及通信總線;所述通信總線用於所述存儲器與所述處理器之間的連接通信;所述處理器用於執行所述存儲器中存儲的碎片整理的程序,以實現所述的碎片整理的方法的步驟。所述方法包括:獲取第一文件參數和第二文件參數;所述第一文件參數用於描述文件的碎片化程度,所述第二文件參數用於描述所述文件的被操作頻率;根據所述第一文件參數和所述第二文件參數確定所述文件的整理評估參數;在所述整理評估參數大於預設閾值的情況下,對所述文件進行磁碟整理操作。可選的,所述第二文件參數的獲取,具體包括:獲取所述文件的第一參數,所述第一參數包括:上次修改時間、創建時間、上次訪問時間及上次碎片整理時間;根據所述第一參數滿足以下條件的情況,給所述第二文件參數賦值;所述條件包括:所述文件的上次修改時間是否早於上次碎片整理時間;或者,所述文件的上次訪問時間與現在時間的間隔是否大於第一預設值;或者,所述文件的上次修改時間與創建時間的差值是否大於第二預設值。可選的,所述上次碎片整理時間的獲取,包括:創建一個配置文件以記錄所有所述文件的上次碎片整理時間;或者,為每個所述文件分別創建對應的影子文件,所有所述影子文件均為空文件;當任一所述文件發生碎片整理時,修改相應的所述影子文件的上次修改時間,以記錄所述文件的上次碎片整理時間。可選的,所述第一文件參數的獲取,包括:根據物理磁碟的區段的數目extentnum以及所述文件佔用的塊數目blocknum,確定所述第一文件參數為:可選的,所述磁碟整理操作包括:將連續塊數小於預設閾值的至少兩個碎片區段中的內容搬移到一段連續的塊中形成整合區段。可選的,所述整合區段與被搬移的所述至少兩個碎片區段屬於同一個塊組。可選的,所述將連續塊數小於預設閾值的至少兩個碎片區段中的內容搬移到一段連續的塊中形成整合區段包括:獲取所述文件中連續塊數小於預設閾值的碎片區段;合併同一塊組中的邏輯上相鄰的所述碎片區段以形成合併區段;統計用於存儲所述文件的塊組鍊表中每個塊組的最大連續塊數目;遍歷所述合併區段中的所有碎片區段:若所述碎片區段滿足第一條件,對所述碎片區段進行組內搬移;或者,若所述碎片區段不滿足第一條件,且滿足第二條件,對所述碎片區段進行組間搬移;或者,若所述碎片區段同時不滿足第一條件及第二條件,則放棄對所述碎片區段的搬移。可選的,所述第一條件為:所述碎片區段的塊大小小於塊組內最大連續塊數目;所述第二條件為:在用於存儲所述文件的塊組鍊表中存在足以容納所述區段的塊組。可選的,在所述遍歷所述合併區段中的所有碎片區段之後,所述方法還包括:根據區段的搬移結果調整所述區段對應的結構樹;記錄所述上次碎片整理時間。根據本發明的第三個方面,提供了一種計算機可讀存儲介質,其特徵在於,所述計算機可讀存儲介質存儲有一個或者多個預設程序,所述預設程序被處理器執行時實現所述的碎片整理的方法的步驟。所述方法包括:獲取第一文件參數和第二文件參數;所述第一文件參數用於描述文件的碎片化程度,所述第二文件參數用於描述所述文件的被操作頻率;根據所述第一文件參數和所述第二文件參數確定所述文件的整理評估參數;在所述整理評估參數大於預設閾值的情況下,對所述文件進行磁碟整理操作。可選的,所述第二文件參數的獲取,具體包括:獲取所述文件的第一參數,所述第一參數包括:上次修改時間、創建時間、上次訪問時間及上次碎片整理時間;根據所述第一參數滿足以下條件的情況,給所述第二文件參數賦值;所述條件包括:所述文件的上次修改時間是否早於上次碎片整理時間;或者,所述文件的上次訪問時間與現在時間的間隔是否大於第一預設值;或者,所述文件的上次修改時間與創建時間的差值是否大於第二預設值。可選的,所述上次碎片整理時間的獲取,包括:創建一個配置文件以記錄所有所述文件的上次碎片整理時間;或者,為每個所述文件分別創建對應的影子文件,所有所述影子文件均為空文件;當任一所述文件發生碎片整理時,修改相應的所述影子文件的上次修改時間,以記錄所述文件的上次碎片整理時間。可選的,所述第一文件參數的獲取,包括:根據物理磁碟的區段的數目extentnum以及所述文件佔用的塊數目blocknum,確定所述第一文件參數為:可選的,所述磁碟整理操作包括:將連續塊數小於預設閾值的至少兩個碎片區段中的內容搬移到一段連續的塊中形成整合區段。可選的,所述整合區段與被搬移的所述至少兩個碎片區段屬於同一個塊組。可選的,所述將連續塊數小於預設閾值的至少兩個碎片區段中的內容搬移到一段連續的塊中形成整合區段包括:獲取所述文件中連續塊數小於預設閾值的碎片區段;合併同一塊組中的邏輯上相鄰的所述碎片區段以形成合併區段;統計用於存儲所述文件的塊組鍊表中每個塊組的最大連續塊數目;遍歷所述合併區段中的所有碎片區段:若所述碎片區段滿足第一條件,對所述碎片區段進行組內搬移;或者,若所述碎片區段不滿足第一條件,且滿足第二條件,對所述碎片區段進行組間搬移;或者,若所述碎片區段同時不滿足第一條件及第二條件,則放棄對所述碎片區段的搬移。可選的,所述第一條件為:所述碎片區段的塊大小小於塊組內最大連續塊數目;所述第二條件為:在用於存儲所述文件的塊組鍊表中存在足以容納所述區段的塊組。可選的,在所述遍歷所述合併區段中的所有碎片區段之後,所述方法還包括:根據區段的搬移結果調整所述區段對應的結構樹;記錄所述上次碎片整理時間。本發明有益效果如下:本發明實施例所提供的一種碎片整理的方法、終端設備及計算機可讀存儲介質,實現了結合文件的被訪問頻率及被修改頻率對文件的碎片化程度進行評估,以確定是否進行碎片清理,此外,通過該整盤整理,以儘量減少搬遷的「體量」,從而減少受影響的cell數目。即該磁碟整理不是針對整個文件的搬移,而是整合那些零散的碎片區段,「化零為整」,以將這些零散的碎片區段搬移一個足夠大區段中,而不對規整的區段進行搬移。當然,儘可能搬移到同一個塊組中的另一片連續的塊上去,從而避免了壞區數目的增加,延長了存儲壽命。附圖說明圖1為本發明第一實施例的流程框圖(一);圖2為本發明第一實施例的流程圖;圖3為本發明第一實施例的流程框圖(二)。本發明目的的實現、功能特點及優點將結合實施例,參照附圖做進一步說明。具體實施方式應當理解,此處所描述的具體實施例僅僅用以解釋本發明,並不用於限定本發明。在後續的描述中,使用用於表示元件的諸如「模塊」、「部件」或「單元」的後綴僅為了有利於本發明的說明,其本身沒有特定的意義。因此,「模塊」、「部件」或「單元」可以混合地使用。終端可以以各種形式來實施。例如,本發明中描述的終端可以包括諸如手機、平板電腦、筆記本電腦、掌上電腦、個人數字助理(personaldigitalassistant,pda)、便捷式媒體播放器(portablemediaplayer,pmp)、導航裝置、可穿戴設備、智能手環、計步器等移動終端,以及諸如數字tv、臺式計算機等固定終端。後續描述中將以移動終端為例進行說明,本領域技術人員將理解的是,除了特別用於移動目的的元件之外,根據本發明的實施方式的構造也能夠應用於固定類型的終端。首先,應用的資料庫文件、私有文件會存放在/data/data目錄(後文記作datadirectory)下。也有應用會把數據文件放到內置sdcard中,內置sdcard在ext4之上運行fuse文件系統。在本實施例中,以應用的資料庫文件、私有文件存放在/data/data目錄(後文記作datadirectory)下為例,進行說明以詳盡本發明所載的技術方案。為了便於理解本發明實施例,對本發明第一實施例提供的一種碎片整理的方法。第一實施例:根據圖1所示,本發明第一實施例提供了一種碎片整理的方法,所述方法包括:s1:獲取第一文件參數和第二文件參數;所述第一文件參數用於描述文件的碎片化程度,所述第二文件參數用於描述所述文件的被操作頻率;針對所述第一文件參數,在本實施例中,包括:根據物理磁碟的區段的數目extentnum以及所述文件佔用的塊數目blocknum,確定所述第一文件參數為:而所述第二文件參數的獲取,具體包括:獲取所述文件的第一參數,所述第一參數包括:上次修改時間、創建時間、上次訪問時間及上次碎片整理時間;根據所述第一參數滿足以下條件的情況,給所述第二文件參數賦值;所述條件包括:所述文件的上次修改時間是否早於上次碎片整理時間;或者,所述文件的上次訪問時間與現在時間的間隔是否大於第一預設值;或者,所述文件的上次修改時間與創建時間的差值是否大於第二預設值。在本本實施例中,第一預設值由系統設置,故無論第一預設值的取值為多少均符合本發明的保護範圍。在本本實施例中,第二預設值由系統設置,故無論第二預設值的取值為多少均符合本發明的保護範圍。此外,第一文件參數為表示文件的碎片化程度,故第一文件參數的取值範圍很小,在1/1000的數量級。因此,在實際使用中,將第一文件參數擴大10000倍,以得到等效的碎片化程度,碎片化程度的範圍在[1,100]。根據第一文件參數的值,挑選前10名碎片程度最嚴重的文件作為碎片化整理的備選文件。備選文件構成的集合記作flist。具體的,初始狀態時,每個備選文件的熱度為0。若滿足所述文件的上次修改時間早於上次碎片整理時間,即經上次整理之後,該文件並沒有被修改,故從集合flist中刪除該文件。若滿足所述文件的上次訪問時間與現在時間的間隔是否大於第一預設值;即該文件用戶很少訪問到(上次訪問時間離現在已經很遠了,對於那些不常用的app),整理的價值就不大了;故將上次訪問時間排序,離現在最遠的文件熱度加1分,離現在最近的文件熱度加10分。若滿足所述文件的上次修改時間與創建時間的差值是否大於第二預設值;即該文件被修改的機會很少(上次修改時間離現在已經很遠了),整理的價值也不大。故將上次訪問時間排序,離現在最遠的文件熱度加1分,離現在最近的文件熱度加10分。就此,就可以得到第二文件參數的數值。根據備選文件,也可得出第一文件參數。其中,所述上次碎片整理時間的獲取,包括:創建一個配置文件以記錄所有所述文件的上次碎片整理時間;或者,為每個所述文件分別創建對應的影子文件,所有所述影子文件均為空文件;當任一所述文件發生碎片整理時,修改相應的所述影子文件的上次修改時間,以記錄所述文件的上次碎片整理時間。具體的,針對創建一個配置文件統一記錄所有所述文件的上次碎片整理時間;在本實施例中,可以示範性的設置為:創建一個xml文件來以記錄所有文件的上次碎片整理時間。針對為每個所述文件分別創建對應的影子文件,所有所述影子文件均是空文件,當任一所述文件發生碎片整理時,修改相應的所述影子文件的上次修改時間,以記錄所述文件的上次碎片整理時間。在本實施例中,為每個文件均創建一個對應的影子文件,當然,所有的影子文件都是空文件,當其中一個文件發生碎片整理時,就示範性的用touch命令修改該影子文件的上次修改時間,從而就可以以該文件的上次修改時間來記錄該文件的上次碎片整理時間。s2:根據所述第一文件參數和所述第二文件參數確定所述文件的整理評估參數;在執行s1後,在本實施例例中,依據第一文件參數及第二文件參數構建整理評估參數,從而實現確定所述文件的整理評估參數。在本實施例中,賦予第一文件參數為f,賦予第二參數為k,整理評估參數為s,即確定就構建評估函數s=f(f,k)。在本實施例中,整理評估函數s=f(f,k)示範性的設為線性函數,而且,在本實施例中,並不對整理評估函數s=f(f,k)的種類進行限定,故無論整理評估函數s=f(f,k)為何種函數,均符合本發明的保護範圍。故在本實施例中,示範性的設置整理評估函數s=f+k,由s1已得出第一文件參數及第二文件參數,故可以得出整理評估函數。s3:在所述整理評估參數大於預設閾值的情況下,對所述文件進行磁碟整理操作。在本實施例中,由s2中可以得出整理評估函數s,故通過比較s與預設閾值的大小,若所述整理評估參數s大於預設閾值的情況下,對所述文件進行磁碟整理操作。在本本實施例中,預設閾值由系統設置,故無論預設閾值的取值為多少均符合本發明的保護範圍。就此,就可以利用s1至s3以實現了結合文件的被訪問頻率及被修改頻率對文件的碎片化程度進行評估,以確定是否進行碎片清理,就此避免了壞區數目的增加,延長了存儲壽命。此外,上述的所述磁碟整理操作包括:將連續塊數小於預設閾值的至少兩個碎片區段中的內容搬移到一段連續的塊中形成整合區段。進一步優化的,所述整合區段與被搬移的所述至少兩個碎片區段屬於同一個塊組。因為常規磁碟整理的思路就是將文件拷貝到新的位置,再把原文件刪掉。拷貝時,日誌型文件系統會把它們作為新的文件,計算文件的大小,並將它們整齊地放置到磁碟中而不產生碎片。但是每個cell有寫入次數的壽命限制。如果整個文件搬移,就會增加壞區數目,減少存儲壽命。故通過該整盤整理,以儘量減少搬遷的「體量」,從而減少受影響的cell數目。即該磁碟整理不是針對整個文件的搬移,而是整合那些零散的區段,「化零為整」,以將這些零散的區段搬移一個足夠大區段中,而不對規整的區段進行搬移。當然,儘可能搬移到同一個塊組中的另一片連續的塊上去,從而避免了壞區數目的增加,延長了存儲壽命。其中,所述將連續塊數小於預設閾值的至少兩個碎片區段中的內容搬移到一段連續的塊中形成整合區段包括:s11:獲取所述文件中連續塊數小於預設閾值的碎片區段;其中,在本實施例中,示範性的設置預設閾值為1024,即獲取碎片整理對象,在本實施例中,即為獲取連續的塊數目小於1024的區段。s12:合併同一塊組中的邏輯上相鄰的所述碎片區段以形成合併區段;即合併同一塊組中的邏輯上相鄰的所述碎片區段。s13:統計用於存儲所述文件的塊組鍊表中每個塊組的最大連續塊數目;統計用於存儲所述文件的塊組鍊表中每個塊組中的最大的連續塊數目。s14:遍歷所述合併區段中的所有碎片區段;從其所述合併區段依次取出區段。s15:若所述碎片區段滿足第一條件,對所述碎片區段進行組內搬移;或者,若所述碎片區段不滿足第一條件,且滿足第二條件,對所述碎片區段進行組間搬移;或者,若所述碎片區段同時不滿足第一條件及第二條件,則放棄對所述碎片區段的搬移。其中,所述第一條件為:所述碎片區段的塊大小小於塊組內最大連續塊數目;所述第二條件為:在用於存儲所述文件的塊組鍊表中存在足以容納所述區段的塊組。其中,所述碎片區段的塊大小為經合併同一個塊組中的在邏輯塊概念上相鄰的區段後的區段上的塊的數目;塊組內最大連續塊數目為一個塊組中最大連續的塊數目。若取出的區段的所述碎片區段的塊大小滿足第一條件,則對取出的區段進行組內搬移;若取出的區段的所述碎片區段的塊大小不滿足第一條件,卻滿足第二條件,則對取出的區段進行組件搬移;或者,若取出的區段的所述碎片區段的塊大小既不滿足第一條件,也不滿足第二條件,則放棄對取出的區段的搬移。此外,在所述遍歷所述合併區段中的所有碎片區段之後,所述方法還包括:根據區段的搬移結果調整所述區段對應的結構樹;記錄所述上次碎片整理時間。即當其在邏輯塊概念上相鄰的區段在合併後的同一塊組中無法獲取碎片區段時,調整結構樹;記錄所述上次碎片整理時間。故通過該整盤整理,以儘量減少搬遷的「體量」,從而減少受影響的cell數目。即該磁碟整理不是針對整個文件的搬移,而是整合那些零散的碎片區段,「化零為整」,以將這些零散的碎片區段搬移一個足夠大區段中,而不對規整的區段進行搬移。當然,儘可能搬移到同一個塊組中的另一片連續的塊上去,從而避免了壞區數目的增加,延長了存儲壽命。以上s11至s15可以由以下步驟進行詳細闡述:s21:獲取所述文件中連續塊數小於預設閾值的碎片區段;s22:合併同一塊組中的邏輯上相鄰的所述碎片區段以形成合併區段;s23:統計用於存儲所述文件的塊組鍊表中每個塊組的最大連續塊數目;s24:從s22的合併區段中依次獲取一個碎片區段,直至獲取所有的碎片區段;s25:所述碎片區段的塊大小小於塊組內最大連續塊數目;s26:若是,則對所述碎片區段進行組內搬移;s27:返回s24;s26:當從s22中無法獲取碎片區段時,根據區段的搬移結果調整所述區段對應的結構樹;s27:記錄所述上次碎片整理時間。可選的,s24及s25之間還包括:s241:否則,則在用於存儲所述文件的塊組鍊表中存在足以容納所述區段的塊組;s242:若是,則執行s27,否則,放棄對所述碎片區段的搬遷;s243:執行s27。通過s21至s27及s241至s243,可以儘量減少搬遷的「體量」,從而減少受影響的cell數目。即該磁碟整理不是針對整個文件的搬移,而是整合那些零散的碎片區段,「化零為整」,以將這些零散的碎片區段搬移一個足夠大合併區段中,而不對規整的碎片區段進行搬移。當然,儘可能搬移到同一個塊組中的另一片連續的塊上去,從而避免了壞區數目的增加,延長了存儲壽命。針對獲取所述文件中連續塊數小於預設閾值的碎片區段,碎片區段為連續塊數目小於1024的區段,是碎片整理的對象。為了便於理解本發明實施例,對本發明第二實施例提供的一種終端設備。第二實施例:本發明第二實施例提供了一種終端設備,所述終端包括存儲器、處理器及通信總線;所述通信總線用於所述存儲器與所述處理器之間的連接通信;所述處理器用於執行所述存儲器中存儲的碎片整理的程序,以實現所述的碎片整理的方法的步驟。所述方法包括:獲取第一文件參數和第二文件參數;所述第一文件參數用於描述文件的碎片化程度,所述第二文件參數用於描述所述文件的被操作頻率;根據所述第一文件參數和所述第二文件參數確定所述文件的整理評估參數;在所述整理評估參數大於預設閾值的情況下,對所述文件進行磁碟整理操作。可選的,所述第二文件參數的獲取,具體包括:獲取所述文件的第一參數,所述第一參數包括:上次修改時間、創建時間、上次訪問時間及上次碎片整理時間;根據所述第一參數滿足以下條件的情況,給所述第二文件參數賦值;所述條件包括:所述文件的上次修改時間是否早於上次碎片整理時間;或者,所述文件的上次訪問時間與現在時間的間隔是否大於第一預設值;或者,所述文件的上次修改時間與創建時間的差值是否大於第二預設值。可選的,所述上次碎片整理時間的獲取,包括:創建一個配置文件以記錄所有所述文件的上次碎片整理時間;或者,為每個所述文件分別創建對應的影子文件,所有所述影子文件均為空文件;當任一所述文件發生碎片整理時,修改相應的所述影子文件的上次修改時間,以記錄所述文件的上次碎片整理時間。可選的,所述第一文件參數的獲取,包括:根據物理磁碟的區段的數目extentnum以及所述文件佔用的塊數目blocknum,確定所述第一文件參數為:可選的,所述磁碟整理操作包括:將連續塊數小於預設閾值的至少兩個碎片區段中的內容搬移到一段連續的塊中形成整合區段。可選的,所述整合區段與被搬移的所述至少兩個碎片區段屬於同一個塊組。可選的,所述將連續塊數小於預設閾值的至少兩個碎片區段中的內容搬移到一段連續的塊中形成整合區段包括:獲取所述文件中連續塊數小於預設閾值的碎片區段;合併同一塊組中的邏輯上相鄰的所述碎片區段以形成合併區段;統計用於存儲所述文件的塊組鍊表中每個塊組的最大連續塊數目;遍歷所述合併區段中的所有碎片區段:若所述碎片區段滿足第一條件,對所述碎片區段進行組內搬移;或者,若所述碎片區段不滿足第一條件,且滿足第二條件,對所述碎片區段進行組間搬移;或者,若所述碎片區段同時不滿足第一條件及第二條件,則放棄對所述碎片區段的搬移。可選的,所述第一條件為:所述碎片區段的塊大小小於塊組內最大連續塊數目;所述第二條件為:在用於存儲所述文件的塊組鍊表中存在足以容納所述區段的塊組。可選的,在所述遍歷所述合併區段中的所有碎片區段之後,所述方法還包括:根據區段的搬移結果調整所述區段對應的結構樹;記錄所述上次碎片整理時間。通過本發明第二實施例提供了一種計算機可讀存儲介質實現了結合文件的被訪問頻率及被修改頻率對文件的碎片化程度進行評估,以確定是否進行碎片清理,此外,通過該整盤整理,以儘量減少搬遷的「體量」,從而減少受影響的cell數目。即該磁碟整理不是針對整個文件的搬移,而是整合那些零散的碎片區段,「化零為整」,以將這些零散的碎片區段搬移一個足夠大區段中,而不對規整的區段進行搬移。當然,儘可能搬移到同一個塊組中的另一片連續的塊上去,從而避免了壞區數目的增加,延長了存儲壽命。為了便於理解本發明實施例,對本發明第三實施例提供的一種計算機可讀存儲介質。第三實施例:本發明第三實施例提供了一種計算機可讀存儲介質,其特徵在於,所述計算機可讀存儲介質存儲有一個或者多個預設程序,所述預設程序被處理器執行時實現所述的碎片整理的方法的步驟。所述方法包括:獲取第一文件參數和第二文件參數;所述第一文件參數用於描述文件的碎片化程度,所述第二文件參數用於描述所述文件的被操作頻率;根據所述第一文件參數和所述第二文件參數確定所述文件的整理評估參數;在所述整理評估參數大於預設閾值的情況下,對所述文件進行磁碟整理操作。可選的,所述第二文件參數的獲取,具體包括:獲取所述文件的第一參數,所述第一參數包括:上次修改時間、創建時間、上次訪問時間及上次碎片整理時間;根據所述第一參數滿足以下條件的情況,給所述第二文件參數賦值;所述條件包括:所述文件的上次修改時間是否早於上次碎片整理時間;或者,所述文件的上次訪問時間與現在時間的間隔是否大於第一預設值;或者,所述文件的上次修改時間與創建時間的差值是否大於第二預設值。可選的,所述上次碎片整理時間的獲取,包括:創建一個配置文件以記錄所有所述文件的上次碎片整理時間;或者,為每個所述文件分別創建對應的影子文件,所有所述影子文件均為空文件;當任一所述文件發生碎片整理時,修改相應的所述影子文件的上次修改時間,以記錄所述文件的上次碎片整理時間。可選的,所述第一文件參數的獲取,包括:根據物理磁碟的區段的數目extentnum以及所述文件佔用的塊數目blocknum,確定所述第一文件參數為:可選的,所述磁碟整理操作包括:將連續塊數小於預設閾值的至少兩個碎片區段中的內容搬移到一段連續的塊中形成整合區段。可選的,所述整合區段與被搬移的所述至少兩個碎片區段屬於同一個塊組。可選的,所述將連續塊數小於預設閾值的至少兩個碎片區段中的內容搬移到一段連續的塊中形成整合區段包括:獲取所述文件中連續塊數小於預設閾值的碎片區段;合併同一塊組中的邏輯上相鄰的所述碎片區段以形成合併區段;統計用於存儲所述文件的塊組鍊表中每個塊組的最大連續塊數目;遍歷所述合併區段中的所有碎片區段:若所述碎片區段滿足第一條件,對所述碎片區段進行組內搬移;或者,若所述碎片區段不滿足第一條件,且滿足第二條件,對所述碎片區段進行組間搬移;或者,若所述碎片區段同時不滿足第一條件及第二條件,則放棄對所述碎片區段的搬移。可選的,所述第一條件為:所述碎片區段的塊大小小於塊組內最大連續塊數目;所述第二條件為:在用於存儲所述文件的塊組鍊表中存在足以容納所述區段的塊組。可選的,在所述遍歷所述合併區段中的所有碎片區段之後,所述方法還包括:根據區段的搬移結果調整所述區段對應的結構樹;記錄所述上次碎片整理時間。通過本發明第三實施例提供了一種計算機可讀存儲介質實現了結合文件的被訪問頻率及被修改頻率對文件的碎片化程度進行評估,以確定是否進行碎片清理,此外,通過該整盤整理,以儘量減少搬遷的「體量」,從而減少受影響的cell數目。即該磁碟整理不是針對整個文件的搬移,而是整合那些零散的碎片區段,「化零為整」,以將這些零散的碎片區段搬移一個足夠大區段中,而不對規整的區段進行搬移。當然,儘可能搬移到同一個塊組中的另一片連續的塊上去,從而避免了壞區數目的增加,延長了存儲壽命。需要說明的是,在本文中,術語「包括」、「包含」或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者裝置不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者裝置所固有的要素。在沒有更多限制的情況下,由語句「包括一個……」限定的要素,並不排除在包括該要素的過程、方法、物品或者裝置中還存在另外的相同要素。上述本發明實施例序號僅僅為了描述,不代表實施例的優劣。通過以上的實施方式的描述,本領域的技術人員可以清楚地了解到上述實施例方法可藉助軟體加必需的通用硬體平臺的方式來實現,當然也可以通過硬體,但很多情況下前者是更佳的實施方式。基於這樣的理解,本發明的技術方案本質上或者說對現有技術做出貢獻的部分可以以軟體產品的形式體現出來,該計算機軟體產品存儲在一個存儲介質(如rom/ram、磁碟、光碟)中,包括若干指令用以使得一臺終端(可以是手機,計算機,伺服器,空調器,或者網絡設備等)執行本發明各個實施例所述的方法。上面結合附圖對本發明的實施例進行了描述,但是本發明並不局限於上述的具體實施方式,上述的具體實施方式僅僅是示意性的,而不是限制性的,本領域的普通技術人員在本發明的啟示下,在不脫離本發明宗旨和權利要求所保護的範圍情況下,還可做出很多形式,這些均屬於本發明的保護之內。當前第1頁12當前第1頁12

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀