亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

減少冗余數(shù)據(jù)的方法及裝置的制造方法_3

文檔序號:9708384閱讀:來源:國知局
而且影子和本體是同步的。簡言之,所謂鏈接無非是把文件名和計算機文件系統(tǒng)使用的節(jié)點號鏈接起來。因此可以用多個文件名與同一個文件進行鏈接,這些文件名可以在同一目錄或不同目錄。一個文件有幾個文件名(例如,采用In命令實現(xiàn)多個文件名),就是指該文件的鏈接數(shù)為幾。由定義可知,此鏈接數(shù)可以是1,這表明該文件只有一個文件名??傊叉溄泳褪亲尪鄠€不在或者同在一個目錄下的文件名,同時能夠修改同一個文件,其中一個修改后,所有與其有硬鏈接的文件都一起修改了。
[0065]參考圖3a,是采用本發(fā)明之前重復文件的存放結構示意圖。其中,文件1和文件2具有實質(zhì)相同的數(shù)據(jù),文件1存放在c: \windows\l 1.dat;文件2存放在C: \user\245.dat,這對于硬盤而言,在兩個地方存放了數(shù)據(jù)相同的兩個文件,造成了存儲空間的浪費。參考圖3b,是根據(jù)本發(fā)明一個實施例的減少冗余數(shù)據(jù)的方法中文件硬鏈接示意圖。圖3b中,文件1及文件2合并為一個文件,其數(shù)據(jù)通過映射的方式,映射到C: \windows\l 1.dat和C: \user\245.dat兩個目錄下,而實際的數(shù)據(jù)僅保存一份,從而節(jié)省硬盤存儲空間。
[0066]本發(fā)明圖1或圖2提供的減少冗余數(shù)據(jù)的方法,可具體應用到文件管理中。因此,本發(fā)明還提供一種基于減少冗余數(shù)據(jù)的文件管理方法,該方法包括以下步驟:
[0067]步驟1:對硬盤中各個分區(qū)的所有文件進行遍歷;
[0068]步驟2:判斷硬盤中是否包含兩個及以上相同的文件:在確定兩個及以上文件大小相同、文件標識不同的前提下,根據(jù)兩個及以上文件的校驗值確定兩個及以上文件是否相同;
[0069]步驟3:通過創(chuàng)建硬鏈接,將兩個及以上相同的文件合并為一個文件;
[0070]步驟4:維護所述硬鏈接文件與一個或多個文件名的硬鏈接對應關系,在針對一個或多個文件名對硬鏈接文件進行更新、刪除和/或修改時,通過維護硬鏈接對應關系,統(tǒng)一對硬鏈接文件進行更新、刪除和/或修改的操作。
[0071]如前描述的,硬鏈接對應關系中包括文件鏈接數(shù),該文件鏈接數(shù)對應于一個或多個文件名的數(shù)量;那么,在針對一個或多個文件名之一進行刪除時,將文件鏈接數(shù)減一,直到文件鏈接數(shù)為零時,才對硬鏈接文件進行刪除。在對硬鏈接文件進行更新時,將待更新文件的硬鏈接關系修改為更新后文件的硬鏈接關系。在針對一個或多個文件名之一進行文件修改時,統(tǒng)一對硬鏈接文件進行修改。
[0072]可見,本發(fā)明還至少帶來以下幾個方面的優(yōu)點:
[0073](1)節(jié)省硬盤空間。同樣的文件,只需要維護硬鏈接關系,不需要進行多重的拷貝,這樣可以節(jié)省硬盤空間.
[0074](2)重命名文件。重命名文件并不需要打開該文件,只需改動某個目錄項的內(nèi)容即可。
[0075](3)刪除文件。刪除文件只需將相應的目錄項刪除,該文件的鏈接數(shù)減1,如果刪除目錄項后該文件的鏈接數(shù)為零,這時系統(tǒng)才把真正的文件從磁盤上刪除。
[0076](4)文件更新。如果涉及文件更新,例如在Windows系統(tǒng)下,只需要先在WinSxS目錄里面下載好一個新版本,然后修改Windows\System32下面同名文件的硬鏈接關系,從舊版本的硬鏈接指向新版本的硬鏈接,這樣就能夠快速的完成文件的更新工作,而不需要進行文件的復制,速度會明顯提高。
[0077](5)卸載補丁。遇到需要補丁卸載的情況,只需要把硬鏈接指向改為舊版本即可,沒有文件替換的問題。而且建立了硬鏈接關系的文件之間的修改是同步的,因此只要有一方被修改了,另一方也會得到修改。
[0078]與上述方法實施例相對應,本發(fā)明還提供一種減少冗余數(shù)據(jù)的裝置。該裝置可以是軟件、硬件或軟硬件結合實現(xiàn),其功能是實現(xiàn)上述方法實施例。
[0079]參見圖4,為本發(fā)明實施例的減少冗余數(shù)據(jù)的裝置結構示意圖。該裝置包括如下單元:
[0080]遍歷單元401,用于對硬盤中各個分區(qū)的所有文件進行遍歷;
[0081]判斷單元402,用于判斷硬盤中是否包含兩個及以上相同的文件:在確定兩個及以上文件大小相同、ID不同的前提下,根據(jù)兩個及以上文件的校驗值確定兩個及以上文件是否相同;
[0082]硬鏈接合并單元403,用于通過創(chuàng)建硬鏈接,將兩個及以上相同的文件合并為一個文件。
[0083]優(yōu)選的,該裝置還包括:用戶級文件排除單元404,用于從遍歷的文件中排除用戶級文件;判斷單元402具體用于,從非用戶級文件中進行判斷是否包括兩個及以上相同的文件。
[0084]優(yōu)選的,用戶級文件排除單元404具體用于,預先選定特定類型的文件,排除非特定類型的文件,和/或,根據(jù)文件的修改和/或創(chuàng)建日期排除預置時間段內(nèi)最新產(chǎn)生的文件。
[0085]優(yōu)選的,特定類型的文件包括exe文件和/或dll文件。
[0086]優(yōu)選的,判斷單元402具體用于,根據(jù)兩個及以上文件的哈西值確定兩個及以上文件是否相同;判斷單元402還用于,對于哈西值相同的兩個及以上文件,進一步將兩個及以上文件的完整數(shù)據(jù)進行二進制比較;根據(jù)完整數(shù)據(jù)比較結果,最終確定兩個及以上文件是否相同。
[0087]優(yōu)選的,硬鏈接合并單元403具體用于,在NTFS文件系統(tǒng)中,通過CreateHardLink指令,將兩個及以上相同文件以硬鏈接方式合并為一個文件。
[0088]在此提供的算法和顯示不與任何特定計算機、虛擬系統(tǒng)或者其它設備固有相關。各種通用系統(tǒng)也可以與基于在此的示教一起使用。根據(jù)上面的描述,構造這類系統(tǒng)所要求的結構是顯而易見的。此外,本發(fā)明也不針對任何特定編程語言。應當明白,可以利用各種編程語言實現(xiàn)在此描述的本發(fā)明的內(nèi)容,并且上面對特定語言所做的描述是為了披露本發(fā)明的最佳實施方式。
[0089]在此處所提供的說明書中,說明了大量具體細節(jié)。然而,能夠理解,本發(fā)明的實施例可以在沒有這些具體細節(jié)的情況下實踐。在一些實例中,并未詳細示出公知的方法、結構和技術,以便不模糊對本說明書的理解。
[0090]類似地,應當理解,為了精簡本公開并幫助理解各個發(fā)明方面中的一個或多個,在上面對本發(fā)明的示例性實施例的描述中,本發(fā)明的各個特征有時被一起分組到單個實施例、圖、或者對其的描述中。然而,并不應將該公開的方法解釋成反映如下意圖:即所要求保護的本發(fā)明要求比在每個權利要求中所明確記載的特征更多的特征。更確切地說,如下面的權利要求書所反映的那樣,發(fā)明方面在于少于前面公開的單個實施例的所有特征。因此,遵循【具體實施方式】的權利要求書由此明確地并入該【具體實施方式】,其中每個權利要求本身都作為本發(fā)明的單獨實施例。
[0091]本領域那些技術人員可以理解,可以對實施例中的設備中的模塊進行自適應性地改變并且把它們設置在與該實施例不同的一個或多個設備中??梢园褜嵤├械哪K或單元或組件組合成一個模塊或單元或組件,以及此外可以把它們分成多個子模塊或子單元或子組件。除了這樣的特征和/或過程或者單元中的至少一些是相互排斥之外,可以采用任何組合對本說明書(包括伴隨的權利要求、摘要和附圖)中公開的所有特征以及如此公開的任何方法或者設備的所有過程或單元進行組合。除非另外明確陳述,本說明書(包括伴隨的權利要求、摘要和附圖)中公開的每個特征可以由提供相同、等同或相似目的的替代特征來代替。
[0092]此外,本領域的技術人員能夠理解,盡管在此所述的一些實施例包括其它實施例中所包括的某些特征而不是其它特征,但是不同實施例的特征的組合意味著處于本發(fā)明的范圍之內(nèi)并且形成不同的實施例。例如,在下面的權利要求書中,所要求保護的實施例的任意之一都可以以任意的組合方式來使用。
[0093]本發(fā)明的各個部件實施例可以以硬件實現(xiàn),或者以在一個或者多個處理器上運行的軟件模塊實現(xiàn),或者以它們的組合實現(xiàn)。本領域的技術人員應當理解,可以在實踐中使用微處理器或者數(shù)字信號處理器(DSP)來實現(xiàn)根據(jù)本發(fā)明實施例的減少冗余數(shù)據(jù)的裝置中的一些或者全部部件的一些或者全部功能。本發(fā)明還可以實現(xiàn)為用于執(zhí)行這里所描述的方法的一部分或者全部的設備或者裝置程序(例如,計算機程序和計算機程序產(chǎn)品)。這樣的實現(xiàn)本發(fā)明的程序可以存儲在計算機可讀介質(zhì)上,或者可以具有一個或者多個信號的形式。這樣的信號可以從因特網(wǎng)網(wǎng)站上下載得到,或者在載體信號上提供,或者以任何其他形式提供。
[0094]應該注意的是上述實施例對本發(fā)明進行說明而不是對本發(fā)明進行限制,并且本領域技術人員在不脫離所附權利要求的范圍的情況下可設計出替換實施例。在權利要求中,不應將位于括號之間的任何參考符號構造成對權利要求的限制。單詞“包含”不排除存在未列在權利要求中的元件或步驟。位于元件之前的單詞“一”或“一個”不排除存在多個這樣的元件。本發(fā)明可以借助于包括有若干不同元件的硬件以及借助于適當編程的計算機來實現(xiàn)。在列舉了若干裝置的單元權利要求中,這些裝置中的若干個可以是通過同一個硬件項來具體體現(xiàn)。單詞第一、第二、以及第三等的使用不表示任何順序??蓪⑦@些單詞解釋為名稱。
[0095]如前所述,本發(fā)明提供至少如下的方案:
[0096]A1、一種
當前第3頁1 2 3 4 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1