欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

磁盤數(shù)據(jù)的訪問控制方法及裝置的制作方法

文檔序號(hào):6384128閱讀:154來源:國(guó)知局
專利名稱:磁盤數(shù)據(jù)的訪問控制方法及裝置的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及數(shù)據(jù)存儲(chǔ)技術(shù)領(lǐng)域,尤其涉及一種磁盤數(shù)據(jù)的訪問控制方法及裝置。
技術(shù)背景
由于硬盤采用磁介質(zhì)來存儲(chǔ)數(shù)據(jù),在經(jīng)歷長(zhǎng)時(shí)間的使用或者使用不當(dāng)之后,難免 可能出現(xiàn)各種各樣的問題,也就是通常所說的產(chǎn)生“壞道”。出現(xiàn)硬盤壞道以后,不但硬盤的 某些壞扇區(qū)不可用,還會(huì)直接殃及到其它可用磁盤扇區(qū),這樣的硬盤不久后便可能由于整 塊硬盤損壞而無法繼續(xù)使用。硬盤出現(xiàn)壞道,影響存儲(chǔ)數(shù)據(jù)的安全性,因此必須采取措施對(duì) 壞道進(jìn)行修復(fù)或屏蔽。
為了提高硬盤的可用性,通常在磁盤的固定位置預(yù)先設(shè)置一定的保留區(qū)域,如圖1 所示,該固定位置通常處于磁盤尾部,且僅作為針對(duì)壞道的備份空間使用。當(dāng)硬盤出現(xiàn)壞道 時(shí),將該壞道地址對(duì)應(yīng)的區(qū)域重映射到該保留區(qū)域中完好的區(qū)域,以將對(duì)該壞道的訪問重 映射到該保留區(qū)域的對(duì)應(yīng)位置,從而隔離壞道區(qū)域,向用戶表現(xiàn)為訪問正常,重映射后的地 址信息即記錄在重映射表中,如圖2所示。對(duì)于有壞道的10,因?yàn)橐x磁盤尾部,尋道距離 拉長(zhǎng),從而明顯降低了 IO訪問性能。發(fā)明內(nèi)容
有鑒于此,本發(fā)明實(shí)施例提供了一種磁盤數(shù)據(jù)的訪問控制方法及裝置,可以縮減 磁頭尋道時(shí)間,進(jìn)而提高IO訪問性能。
為了實(shí)現(xiàn)上述目的,在第一方面,本發(fā)明實(shí)施例提出了一種磁盤數(shù)據(jù)的訪問控制 方法,所述方法包括
當(dāng)滿足檢測(cè)條件時(shí),觸發(fā)檢測(cè)且檢測(cè)到目標(biāo)訪問區(qū)塊為壞道區(qū)塊后,在與所述壞 道區(qū)塊最接近的空閑區(qū)域?yàn)樗鰤牡绤^(qū)塊分配重映射區(qū)塊;
若所述壞道區(qū)塊中存儲(chǔ)有數(shù)據(jù),則將所述數(shù)據(jù)存儲(chǔ)到所述重映射區(qū)塊;
將對(duì)所述壞道區(qū)塊的訪問偏移至所述重映射區(qū)塊。
結(jié)合第一方面,在第一種可能的實(shí)現(xiàn)方式中,所述在與所述壞道區(qū)塊最接近的空 閑區(qū)域?yàn)樗鰤牡绤^(qū)塊分配重映射區(qū)塊的步驟中
按照與所述壞道區(qū)塊距離從小到大的順序,依次檢測(cè)與所述壞道區(qū)塊接近的空閑 區(qū)域的大小,直至檢測(cè)到不小于所述壞道區(qū)塊的空閑區(qū)域,在所述檢測(cè)到的不小于所述壞 道區(qū)塊的空閑區(qū)域中分配所述重映射區(qū)塊。
結(jié)合第一方面,在第二種可能的實(shí)現(xiàn)方式中,所述在與所述壞道區(qū)塊最接近的空 閑區(qū)域?yàn)樗鰤牡绤^(qū)塊分配重映射區(qū)塊的步驟包括
根據(jù)所述壞道區(qū)塊對(duì)應(yīng)的鍵值中所保存的地址查找對(duì)應(yīng)的磁盤區(qū)域;
在與所述磁盤區(qū)域最接近的空閑區(qū)域?yàn)樗龃疟P區(qū)域分配重映射區(qū)域;
將所述鍵值中保存的地址修改為所述重映射區(qū)域的地址。
結(jié)合第一方面的第二種可能的實(shí)現(xiàn)方式,在第三種可能的實(shí)現(xiàn)方式中,若所述壞道區(qū)塊中存儲(chǔ)有數(shù)據(jù),則將所述數(shù)據(jù)存儲(chǔ)到所述重映射區(qū)塊的步驟具體包括將所述壞道 區(qū)塊對(duì)應(yīng)的磁盤區(qū)域中存儲(chǔ)的數(shù)據(jù)存儲(chǔ)到所述重映射區(qū)域若所述壞道區(qū)塊中有數(shù)據(jù),則將 所述壞道區(qū)塊中存儲(chǔ)的數(shù)據(jù)存儲(chǔ)到所述重映射區(qū)塊。
結(jié)合第一方面的第二或第三種可能的實(shí)現(xiàn)方式,在第四種可能的實(shí)現(xiàn)方式中,根 據(jù)所述壞道區(qū)塊對(duì)應(yīng)的鍵值中所保存的地址查找到的對(duì)應(yīng)的磁盤區(qū)域不超過IM字節(jié)將所 述壞道區(qū)塊對(duì)應(yīng)的所述磁盤區(qū)域中存儲(chǔ)的數(shù)據(jù)存儲(chǔ)到所述重映射區(qū)域。
結(jié)合第一方面的第二至第四種可能的實(shí)現(xiàn)方式中的任一種,在第五種可能的實(shí)現(xiàn) 方式中,所述在與所述磁盤區(qū)域最接近的空閑區(qū)域?yàn)樗龃疟P區(qū)域分配重映射區(qū)域的步驟 中
按照與所述磁盤區(qū)域距離從小到大的順序,依次檢測(cè)與所述磁盤區(qū)域接近的空閑 區(qū)域的大小,直至檢測(cè)到不小于所述磁盤區(qū)域的空閑區(qū)域,在所述不小于所述磁盤區(qū)域的 空閑區(qū)域中分配所述重映射區(qū)域。
結(jié)合第一方面或第一方面的第一至第五種可能的實(shí)現(xiàn)方式中的任一種,在第六種 可能的實(shí)現(xiàn)方式中,所述檢測(cè)條件為對(duì)磁盤數(shù)據(jù)的訪問。
在第二方面,本發(fā)明實(shí)施例提供了一種磁盤數(shù)據(jù)的訪問控制裝置,所述裝置包 括
重映射單元,用于當(dāng)滿足檢測(cè)條件時(shí),觸發(fā)檢測(cè)且檢測(cè)到目標(biāo)訪問區(qū)塊為壞道區(qū) 塊后,在與所述壞道區(qū)塊最接近的空閑區(qū)域?yàn)樗鰤牡绤^(qū)塊分配重映射區(qū)塊;
搬運(yùn)單元,用于在所述壞道區(qū)塊中存儲(chǔ)有數(shù)據(jù)時(shí)將所述數(shù)據(jù)存儲(chǔ)到所述重映射區(qū) 塊;以及
執(zhí)行單元,用于將對(duì)所述壞道區(qū)塊的訪問偏移至所述重映射單元為所述壞道區(qū)塊 分配的重映射區(qū)塊。
結(jié)合第二方面,在第一種可能的實(shí)現(xiàn)方式中,所述重映射單元按照與所述壞道區(qū) 塊距離從小到大的順序,依次檢測(cè)與所述壞道區(qū)塊接近的空閑區(qū)域的大小,直至檢測(cè)到不 小于所述壞道區(qū)塊的空閑區(qū)域,在所述檢測(cè)到的不小于所述壞道區(qū)塊的空閑區(qū)域中分配所 述重映射區(qū)塊。
結(jié)合第二方面,在第二種可能的實(shí)現(xiàn)方式中,所述重映射單元包括
查找模塊,用于根據(jù)所述壞道區(qū)塊對(duì)應(yīng)的鍵值中所保存的地址查找對(duì)應(yīng)的磁盤區(qū) 域;
分配模塊,用于在與所述查找單元查找到的所述磁盤區(qū)域最接近的空閑區(qū)域?yàn)樗?述磁盤區(qū)域分配重映射區(qū)域;以及
記錄模塊,用于將所述鍵值中保存的地址修改為所述分配模塊為所述磁盤區(qū)域分 配的重映射區(qū)域的地址。
結(jié)合第二方面的第二種可能的實(shí)現(xiàn)方式,在第三種可能的實(shí)現(xiàn)方式中,所述搬運(yùn) 單元還用于將所述壞道區(qū)塊對(duì)應(yīng)的磁盤區(qū)域中存儲(chǔ)的數(shù)據(jù)存儲(chǔ)到所述重映射區(qū)域。
結(jié)合第二方面的第二或第三種可能的實(shí)現(xiàn)方式,在第四種可能的實(shí)現(xiàn)方式中,所 述查找模塊根據(jù)所述壞道區(qū)塊對(duì)應(yīng)的鍵值中所保存的地址查找到的對(duì)應(yīng)的磁盤區(qū)域不超 過IM字節(jié)。
結(jié)合第二方面的第二至第四種可能的實(shí)現(xiàn)方式中的任一種,在第五種可能的實(shí)現(xiàn)方式中,所述分配模塊按照與所述磁盤區(qū)域距離從小到大的順序,依次檢測(cè)與所述磁盤區(qū) 域接近的空閑區(qū)域的大小,直至檢測(cè)到不小于所述磁盤區(qū)域的空閑區(qū)域,在所述不小于所 述磁盤區(qū)域的空閑區(qū)域中分配所述重映射區(qū)域。
通過在訪問磁盤發(fā)現(xiàn)壞道后,重新為該壞道分配距離其最近的一個(gè)可用的空閑作 為重映射區(qū)塊,本發(fā)明實(shí)施例的方法及裝置使得對(duì)壞道區(qū)塊的訪問不會(huì)像現(xiàn)有方法一樣, 直接偏移到磁盤尾部,而是距離該壞道區(qū)塊最近的區(qū)塊,這樣不會(huì)造成磁頭尋道時(shí)間大幅 度拉長(zhǎng),減少了訪問重映射區(qū)塊的尋道時(shí)間,進(jìn)而提高了 IO訪問性能;此外,并不預(yù)先設(shè) 置保留區(qū)域,與即便沒有壞道,保留區(qū)域也不可使用的現(xiàn)有技術(shù)相比,也相對(duì)節(jié)省了磁盤空 間。
根據(jù)下面參考附圖對(duì)示例性實(shí)施例的詳細(xì)說明,本發(fā)明的其它特征及方面將變得清楚。


包含在說明書中并且構(gòu)成說明書的一部分的說明書附圖與說明書一起示出了本 發(fā)明的示例性實(shí)施例、特征和方面,并且用于解釋本發(fā)明的原理。
圖1為現(xiàn)有技術(shù)中磁盤的分區(qū)示意圖2為現(xiàn)有技術(shù)中重映射原理及重映射表示意圖3為本發(fā)明實(shí)施例的磁盤數(shù)據(jù)的訪問控制方法流程圖4為本發(fā)明實(shí)施例的磁盤數(shù)據(jù)的訪問控制方法中重映射流程示意圖5為本發(fā)明實(shí)施例的磁盤數(shù)據(jù)的訪問控制方法原理示意圖6為本發(fā)明實(shí)施例的磁盤數(shù)據(jù)的訪問控制裝置的一種結(jié)構(gòu)框圖7為本發(fā)明實(shí)施例的磁盤數(shù)據(jù)的訪問控制裝置的另一種結(jié)構(gòu)框圖。
具體實(shí)施方式
以下將參考附圖詳細(xì)說明本發(fā)明的各種示例性實(shí)施例、特征和方面。附圖中相同 的附圖標(biāo)記表示功能相同或相似的元件。盡管在附圖中示出了實(shí)施例的各種方面,但是除 非特別指出,不必按比例繪制附圖。
在這里專用的詞“示例性”意為“用作例子、實(shí)施例或說明性”。這里作為“示例性” 所說明的任何實(shí)施例不必解釋為優(yōu)于或好于其它實(shí)施例。
另外,為了更好的說明本發(fā)明,在下文的具體實(shí)施方式
中給出了眾多的具體細(xì)節(jié)。 本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,沒有這些具體細(xì)節(jié),本發(fā)明同樣可以實(shí)施。在另外一些實(shí)例中, 對(duì)于大家熟知的方法、手段、元件和電路未作詳細(xì)描述,以便于凸顯本發(fā)明的主旨。
如圖3所示,本發(fā)明實(shí)施例提供了一種磁盤數(shù)據(jù)的訪問控制方法,該方法包括
S1.當(dāng)滿足檢測(cè)條件時(shí),觸發(fā)檢測(cè)且檢測(cè)到目標(biāo)訪問區(qū)塊為壞道區(qū)塊后,在與所述 壞道區(qū)塊最接近的空閑區(qū)域?yàn)樗鰤牡绤^(qū)塊分配重映射區(qū)塊;
S2.若所述壞道區(qū)塊中存儲(chǔ)有數(shù)據(jù),則將所述數(shù)據(jù)存儲(chǔ)到所述重映射區(qū)塊,并執(zhí)行 步驟S3,否則,直接執(zhí)行步驟S3 ;
S3.將對(duì)所述壞道區(qū)塊的訪問偏移至所述重映射區(qū)塊。
本發(fā)明實(shí)施例的方法,在訪問磁盤發(fā)現(xiàn)壞道后,重新為該壞道分配距離其最近的一個(gè)可用的空閑區(qū)域作為重映射區(qū)塊,使得對(duì)壞道區(qū)塊的訪問不會(huì)像現(xiàn)有方法一樣,直接 偏移到磁盤尾部,而是距離該壞道區(qū)塊最近的區(qū)塊,這樣不會(huì)造成磁頭尋道時(shí)間大幅度的 拉長(zhǎng),減少了訪問重映射區(qū)塊的尋道時(shí)間,進(jìn)而提高了 IO訪問性能;此外,本發(fā)明實(shí)施例的 方法并不提前在磁盤中設(shè)置保留區(qū)域,與即便沒有壞道保留區(qū)域也不可使用的現(xiàn)有技術(shù)相 比,相對(duì)節(jié)省了磁盤空間。
此外,在步驟SI的在與所述壞道區(qū)塊最接近的空閑區(qū)域?yàn)樗鰤牡绤^(qū)塊分配重 映射區(qū)塊的步驟中
按照與所述壞道區(qū)塊距離從小到大的順序,依次檢測(cè)與所述壞道區(qū)塊接近的空閑 區(qū)域的大小,直至檢測(cè)到不小于所述壞道區(qū)塊的空閑區(qū)域,在所述檢測(cè)到的不小于所述壞 道區(qū)塊的空閑區(qū)域中分配所述重映射區(qū)塊。具言之,先找到與所述壞道區(qū)塊距離最近的第 一空閑區(qū)域,并判斷該第一空閑區(qū)域的大小是否不小于所述壞道區(qū)塊,若不小于,則在該空 閑區(qū)域中為所述壞道區(qū)塊分配與該壞道區(qū)塊同樣大小的重映射區(qū)塊;若小于,則檢測(cè)與所 述壞道區(qū)塊距離次接近的第二空閑區(qū)域,并進(jìn)行與第一空閑區(qū)域同樣的大小判斷。以此類 推,直至找到不小于所述壞道區(qū)塊的空閑區(qū)域。
鍵值存儲(chǔ)(Key-value)是目前具備高可靠性及可擴(kuò)展性的海量數(shù)據(jù)存儲(chǔ)中廣泛 使用的存儲(chǔ)方式。尤其對(duì)于云存儲(chǔ)來說,鍵值存儲(chǔ)是唯一可能的存儲(chǔ)方式,幾乎所有的現(xiàn) 有的云存儲(chǔ)都是鍵值形式的,對(duì)于鍵值方式的磁盤存儲(chǔ)類型(例如B+樹數(shù)據(jù)庫(B+Tree Database)或Hash表數(shù)據(jù)庫(Hash Table Database)等等),更適于本發(fā)明實(shí)施例方法的使 用。
此時(shí),如圖4所示,步驟SI包括
Sll.根據(jù)該壞道區(qū)塊對(duì)應(yīng)的鍵值中所保存的地址查找對(duì)應(yīng)的磁盤區(qū)域;
S12.在與該磁盤區(qū)域最接近的空閑區(qū)域?yàn)樵摯疟P區(qū)域分配重映射區(qū)域;
S13.將該鍵值中保存的地址修改為所述重映射區(qū)域的地址。
如圖5所示,若壞道區(qū)塊包含在KeyO對(duì)應(yīng)的磁盤區(qū)域“A”,則直接為KeyO對(duì)應(yīng)的 區(qū)域在鄰近的可用空間另外申請(qǐng)一塊區(qū)域“a”,在重映射前,KeyO中保存了磁盤區(qū)域“A”的 地址,重映射后,該地址修改成區(qū)域“a”所對(duì)應(yīng)的地址,此后,對(duì)鍵值KeyO所對(duì)應(yīng)磁盤區(qū)域 的訪問將直接偏移到區(qū)域“a”,這樣不會(huì)造成磁頭尋道時(shí)間大幅度的拉長(zhǎng),減少了訪問重映 射區(qū)塊的尋道時(shí)間,進(jìn)而提高了 IO訪問性能。此外,在現(xiàn)有的鍵值存儲(chǔ)技術(shù)中,采用重映射 表記錄出現(xiàn)壞道的磁盤區(qū)域與其重映射區(qū)域的對(duì)應(yīng)關(guān)系,每個(gè)IO訪問都需要查詢重映射 表,看是否命中壞道,再對(duì)命中壞道的IO進(jìn)行重映射,無疑增加了 IO訪問的時(shí)間。而在本 發(fā)明實(shí)施例的上述方法中,對(duì)于鍵值中所保存的包含壞道區(qū)塊的磁盤區(qū)域的地址進(jìn)行了修 改,使得沒有了指向該包含壞道區(qū)塊的磁盤區(qū)域的鍵值,因此,根據(jù)鍵值存儲(chǔ)的訪問規(guī)則, 不會(huì)有再次訪問到該區(qū)域的IO出現(xiàn),從而減少了因需要查詢重映射表所增加的IO訪問的 時(shí)間。
相應(yīng)地,在與所述磁盤區(qū)域最接近的空閑區(qū)域?yàn)樗龃疟P區(qū)域分配重映射區(qū)域的 步驟中按照與所述磁盤區(qū)域距離從小到大的順序,依次檢測(cè)與所述磁盤區(qū)域接近的空閑 區(qū)域的大小,直至檢測(cè)到不小于所述磁盤區(qū)域的空閑區(qū)域,在所述不小于所述磁盤區(qū)域的 空閑區(qū)域中分配所述重映射區(qū)域。
且若所述壞道區(qū)塊中存儲(chǔ)有數(shù)據(jù),則將所述數(shù)據(jù)存儲(chǔ)到所述重映射區(qū)塊的步驟具體包括將所述壞道區(qū)塊對(duì)應(yīng)的磁盤區(qū)域中存儲(chǔ)的數(shù)據(jù)存儲(chǔ)到所述重映射區(qū)域。
由于每個(gè)鍵值對(duì)應(yīng)一個(gè)磁盤區(qū)域,對(duì)于每個(gè)磁盤區(qū)域,出現(xiàn)的壞道區(qū)塊可能僅占 該磁盤區(qū)域的一小部分,對(duì)于本發(fā)明實(shí)施例的方法,對(duì)包含壞道區(qū)塊的整個(gè)磁盤區(qū)域都進(jìn) 行重映射,為了盡量減少磁盤空間可能的浪費(fèi),僅在磁盤區(qū)域不是很大的情況下使用本發(fā) 明實(shí)施例的方法,例如該磁盤區(qū)域不超過IM字節(jié)。
需要說明的是,在本發(fā)明實(shí)施例的方法中,步驟S I中所述的檢測(cè)條件可為對(duì)磁 盤數(shù)據(jù)的訪問操作,例如寫操作或讀操作;還可為預(yù)先設(shè)置的檢測(cè)程序,該檢測(cè)程序可周期 性的自動(dòng)觸發(fā)或人為觸發(fā)。
如圖6所示,本發(fā)明實(shí)施例還提供了一種磁盤數(shù)據(jù)的訪問控制裝置,該裝置依照 圖3至5所示的方法控制對(duì)磁盤數(shù)據(jù)的訪問。該裝置包括
重映射單元610,用于當(dāng)滿足檢測(cè)條件時(shí),觸發(fā)檢測(cè)且檢測(cè)到目標(biāo)訪問區(qū)塊為壞道 區(qū)塊后,在與所述壞道區(qū)塊最接近的空閑區(qū)域?yàn)樗鰤牡绤^(qū)塊分配重映射區(qū)塊;以及
搬運(yùn)單元620,用于在所述壞道區(qū)塊中存儲(chǔ)有數(shù)據(jù)時(shí)將所述數(shù)據(jù)存儲(chǔ)到所述重映 射區(qū)塊;
執(zhí)行單元630,用于將對(duì)所述壞道區(qū)塊的訪問偏移至所述重映射單元為所述壞道 區(qū)塊分配的重映射區(qū)塊。
本發(fā)明實(shí)施例的裝置,在訪問磁盤發(fā)現(xiàn)壞道后,重新為該壞道分配距離其最近的 一個(gè)可用的空閑作為重映射區(qū)塊,使得對(duì)壞道區(qū)塊的訪問不會(huì)像現(xiàn)有方法一樣,直接偏移 到磁盤尾部,而是距離該壞道區(qū)塊最近的區(qū)塊,這樣不會(huì)造成磁頭尋道時(shí)間大幅度拉長(zhǎng),減 少了訪問重映射區(qū)塊的尋道時(shí)間,進(jìn)而提高了 IO訪問性能;此外,并不提前設(shè)置保留區(qū)域, 與即便沒有壞道,保留區(qū)域也不可使用的現(xiàn)有技術(shù)相比,也相對(duì)節(jié)省了磁盤空間。
該重映射單元610按照與所述壞道區(qū)塊距離從小到大的順序,依次檢測(cè)與所述壞 道區(qū)塊接近的空閑區(qū)域的大小,直至檢測(cè)到不小于所述壞道區(qū)塊的空閑區(qū)域,在所述檢測(cè) 到的不小于所述壞道區(qū)塊的空閑區(qū)域中分配所述重映射區(qū)塊。
此外,該重映射單元610可包括
查找模塊611,用于根據(jù)所述壞道區(qū)塊對(duì)應(yīng)的鍵值中所保存的地址查找對(duì)應(yīng)的磁 盤區(qū)域;
分配模塊612,用于在與所述查找單元611查找到的所述磁盤區(qū)域最接近的空閑 區(qū)域?yàn)樗龃疟P區(qū)域分配重映射區(qū)域;
記錄模塊613,用于將所述鍵值中保存的地址修改為所述分配模塊612為所述磁 盤區(qū)域分配的重映射區(qū)域的地址。
搬運(yùn)單元620還用于將所述壞道區(qū)塊對(duì)應(yīng)的磁盤區(qū)域中存儲(chǔ)的數(shù)據(jù)存儲(chǔ)到所述 重映射區(qū)域。
具言之,所述分配模塊612按照與所述磁盤區(qū)域距離從小到大的順序,依次檢測(cè) 與所述磁盤區(qū)域接近的空閑區(qū)域的大小,直至檢測(cè)到不小于所述磁盤區(qū)域的空閑區(qū)域,在 所述不小于所述磁盤區(qū)域的空閑區(qū)域中分配所述重映射區(qū)域。
如圖7所示,為本發(fā)明實(shí)施例還提供了另一種磁盤數(shù)據(jù)的訪問控制裝置700的結(jié) 構(gòu)框圖,該磁盤數(shù)據(jù)的訪問控制裝置700可以是具備計(jì)算能力的主機(jī)服務(wù)器、個(gè)人計(jì)算機(jī) PC、或者可攜帶的便攜式計(jì)算機(jī)或終端等。本發(fā)明具體實(shí)施例并不對(duì)計(jì)算節(jié)點(diǎn)的具體實(shí)現(xiàn)做限定。
所述裝置700 包括處理器(processor) 710、通信接口(Communications Interface)720、存儲(chǔ)器(memory array)730 和總線 740。其中,處理器 710、通信接口 720、 以及存儲(chǔ)器730通過總線740完成相互間的通信。
通信接口 720用于與網(wǎng)元通信,其中網(wǎng)元包括例如虛擬機(jī)管理中心、共享存儲(chǔ)等。
處理器710用于執(zhí)行程序。處理器710可能是一個(gè)中央處理器CPU,或者是專用集 成電路ASIC (Application Specific Integrated Circuit),或者是被配置成實(shí)施本發(fā)明 實(shí)施例的一個(gè)或多個(gè)集成電路。
存儲(chǔ)器730用于存放文件(處理器710所執(zhí)行的程序732)。存儲(chǔ)器730可能包含 高速RAM存儲(chǔ)器,也可能還包括非易失性存儲(chǔ)器(non-volatile memory),例如至少一個(gè)磁 盤存儲(chǔ)器。該程序732具體可以包括
重映射單元,用于當(dāng)滿足檢測(cè)條件時(shí),觸發(fā)檢測(cè)且檢測(cè)到目標(biāo)訪問區(qū)塊為壞道區(qū) 塊后,在與所述壞道區(qū)塊最接近的空閑區(qū)域?yàn)樗鰤牡绤^(qū)塊分配重映射區(qū)塊;
搬運(yùn)單元,用于在所述壞道區(qū)塊中存儲(chǔ)有數(shù)據(jù)時(shí)將所述數(shù)據(jù)存儲(chǔ)到所述重映射區(qū) 塊;以及
執(zhí)行單元,用于將對(duì)所述壞道區(qū)塊的訪問偏移至所述重映射單元為所述壞道區(qū)塊 分配的重映射區(qū)塊執(zhí)行單元,用于將對(duì)所述壞道區(qū)塊的訪問偏移至所述重映射單元為所述 壞道區(qū)塊分配的重映射區(qū)塊。
程序732中各單元的具體實(shí)現(xiàn)可以參見圖6所示實(shí)施例中的相應(yīng)單元,在此不贅 述。
本發(fā)明實(shí)施例還提供了 一種磁盤數(shù)據(jù)的訪問控制的計(jì)算機(jī)程序產(chǎn)品,包括存儲(chǔ)了 程序代碼的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),所述程序代碼包括的指令用于
當(dāng)滿足檢測(cè)條件時(shí),觸發(fā)檢測(cè)且檢測(cè)到目標(biāo)訪問區(qū)塊為壞道區(qū)塊后,在與所述壞 道區(qū)塊最接近的空閑區(qū)域?yàn)樗鰤牡绤^(qū)塊分配重映射區(qū)塊;
若所述壞道區(qū)塊中存儲(chǔ)有數(shù)據(jù),則將所述數(shù)據(jù)存儲(chǔ)到所述重映射區(qū)塊;
將對(duì)所述壞道區(qū)塊的訪問偏移至所述重映射區(qū)塊。
該指令所執(zhí)行的具體步驟實(shí)現(xiàn)可以參見圖3至圖5所示實(shí)施例中的相應(yīng)步驟。
本領(lǐng)域普通技術(shù)人員可以意識(shí)到,本文所描述的實(shí)施例中的各示例性單元及算法 步驟,能夠以電子硬件、或者計(jì)算機(jī)軟件和電子硬件的結(jié)合來實(shí)現(xiàn)。這些功能究竟以硬件還 是軟件形式來實(shí)現(xiàn),取決于技術(shù)方案的特定應(yīng)用和設(shè)計(jì)約束條件。專業(yè)技術(shù)人員可以針對(duì) 特定的應(yīng)用選擇不同的方法來實(shí)現(xiàn)所描述的功能,但是這種實(shí)現(xiàn)不應(yīng)認(rèn)為超出本發(fā)明的范 圍。
如果以計(jì)算機(jī)軟件的形式來實(shí)現(xiàn)所述功能并作為獨(dú)立的產(chǎn)品銷售或使用時(shí),則在 一定程度上可認(rèn)為本發(fā)明的技術(shù)方案的全部或部分(例如對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分)是 以計(jì)算機(jī)軟件產(chǎn)品的形式體現(xiàn)的。該計(jì)算機(jī)軟件產(chǎn)品通常存儲(chǔ)在計(jì)算機(jī)可讀取的存儲(chǔ)介質(zhì) 中,包括若干指令用以使得計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī)、服務(wù)器、或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行 本發(fā)明各實(shí)施例方法的全部或部分步驟。而前述的存儲(chǔ)介質(zhì)包括U盤、移動(dòng)硬盤、只讀存儲(chǔ) 器(ROM, Read-Only Memory)、隨機(jī)存取存儲(chǔ)器(RAM, Random Access Memory)、磁碟或者光 盤等各種可以存儲(chǔ)程序代碼的介質(zhì)。
以上所述,僅為本發(fā)明的具體實(shí)施方式
,但本發(fā)明的保護(hù)范圍并不局限于此,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露 的技術(shù)范圍內(nèi),可輕易想到變化或替換,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。因此,本發(fā)明的保護(hù)范圍應(yīng)所述以權(quán)利要求的保護(hù)范圍為準(zhǔn)。
權(quán)利要求
1.一種磁盤數(shù)據(jù)的訪問控制方法,其特征在于,所述方法包括當(dāng)滿足檢測(cè)條件時(shí),觸發(fā)檢測(cè)且檢測(cè)到目標(biāo)訪問區(qū)塊為壞道區(qū)塊后,在與所述壞道區(qū)塊最接近的空閑區(qū)域?yàn)樗鰤牡绤^(qū)塊分配重映射區(qū)塊;若所述壞道區(qū)塊中存儲(chǔ)有數(shù)據(jù),則將所述數(shù)據(jù)存儲(chǔ)到所述重映射區(qū)塊;將對(duì)所述壞道區(qū)塊的訪問偏移至所述重映射區(qū)塊。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述在與所述壞道區(qū)塊最接近的空閑區(qū)域?yàn)樗鰤牡绤^(qū)塊分配重映射區(qū)塊的步驟中按照與所述壞道區(qū)塊距離從小到大的順序,依次檢測(cè)與所述壞道區(qū)塊接近的空閑區(qū)域的大小,直至檢測(cè)到不小于所述壞道區(qū)塊的空閑區(qū)域,在所述檢測(cè)到的不小于所述壞道區(qū)塊的空閑區(qū)域中分配所述重映射區(qū)塊。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述在與所述壞道區(qū)塊最接近的空閑區(qū)域?yàn)樗鰤牡绤^(qū)塊分配重映射區(qū)塊的步驟包括根據(jù)所述壞道區(qū)塊對(duì)應(yīng)的鍵值中所保存的地址查找對(duì)應(yīng)的磁盤區(qū)域;在與所述磁盤區(qū)域最接近的空閑區(qū)域?yàn)樗龃疟P區(qū)域分配重映射區(qū)域;將所述鍵值中保存的地址修改為所述重映射區(qū)域的地址。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,若所述壞道區(qū)塊中存儲(chǔ)有數(shù)據(jù),則將所述數(shù)據(jù)存儲(chǔ)到所述重映射區(qū)塊的步驟具體包括將所述壞道區(qū)塊對(duì)應(yīng)的磁盤區(qū)域中存儲(chǔ)的數(shù)據(jù)存儲(chǔ)到所述重映射區(qū)域。
5.根據(jù)權(quán)利要求3或4所述的方法,其特征在于,根據(jù)所述壞道區(qū)塊對(duì)應(yīng)的鍵值中所保存的地址查找到的對(duì)應(yīng)的磁盤區(qū)域不超過IM字節(jié)。
6.根據(jù)權(quán)利要求3至5中任一項(xiàng)所述的方法,其特征在于,所述在與所述磁盤區(qū)域最接近的空閑區(qū)域?yàn)樗龃疟P區(qū)域分配重映射區(qū)域的步驟中按照與所述磁盤區(qū)域距離從小到大的順序,依次檢測(cè)與所述磁盤區(qū)域接近的空閑區(qū)域的大小,直至檢測(cè)到不小于所述磁盤區(qū)域的空閑區(qū)域,在所述不小于所述磁盤區(qū)域的空閑區(qū)域中分配所述重映射區(qū)域。
7.根據(jù)權(quán)利要求1至6中任一項(xiàng)所述的方法,其特征在于,所述檢測(cè)條件為對(duì)磁盤數(shù)據(jù)的訪問。
8.—種磁盤數(shù)據(jù)的訪問控制裝置,其特征在于,所述裝置包括重映射單元,用于當(dāng)滿足檢測(cè)條件時(shí),觸發(fā)檢測(cè)且檢測(cè)到目標(biāo)訪問區(qū)塊為壞道區(qū)塊后, 在與所述壞道區(qū)塊最接近的空閑區(qū)域?yàn)樗鰤牡绤^(qū)塊分配重映射區(qū)塊;搬運(yùn)單元,用于在所述壞道區(qū)塊中存儲(chǔ)有數(shù)據(jù)時(shí)將所述數(shù)據(jù)存儲(chǔ)到所述重映射區(qū)塊;以及執(zhí)行單元,用于將對(duì)所述壞道區(qū)塊的訪問偏移至所述重映射單元為所述壞道區(qū)塊分配的重映射區(qū)塊。
9.根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述重映射單元按照與所述壞道區(qū)塊距離從小到大的順序,依次檢測(cè)與所述壞道區(qū)塊接近的空閑區(qū)域的大小,直至檢測(cè)到不小于所述壞道區(qū)塊的空閑區(qū)域,在所述檢測(cè)到的不小于所述壞道區(qū)塊的空閑區(qū)域中分配所述重映射區(qū)塊。
10.根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述重映射單元包括查找模塊,用于根據(jù)所述壞道區(qū)塊對(duì)應(yīng)的鍵值中所保存的地址查找對(duì)應(yīng)的磁盤區(qū)域;分配模塊,用于在與所述查找單元查找到的所述磁盤區(qū)域最接近的空閑區(qū)域?yàn)樗龃疟P區(qū)域分配重映射區(qū)域;以及記錄模塊,用于將所述鍵值中保存的地址修改為所述分配模塊為所述磁盤區(qū)域分配的重映射區(qū)域的地址。
11.根據(jù)權(quán)利要求10所述的裝置,其特征在于,所述搬運(yùn)單元還用于將所述壞道區(qū)塊對(duì)應(yīng)的磁盤區(qū)域中存儲(chǔ)的數(shù)據(jù)存儲(chǔ)到所述重映射區(qū)域。
12.根據(jù)權(quán)利要求10或11所述的裝置,其特征在于,所述查找模塊根據(jù)所述壞道區(qū)塊對(duì)應(yīng)的鍵值中所保存的地址查找到的對(duì)應(yīng)的磁盤區(qū)域不超過1M字節(jié)。
13.根據(jù)權(quán)利要求10至12中任一項(xiàng)所述的裝置,其特征在于,所述分配模塊按照與所述磁盤區(qū)域距離從小到大的順序,依次檢測(cè)與所述磁盤區(qū)域接近的空閑區(qū)域的大小,直至檢測(cè)到不小于所述磁盤區(qū)域的空閑區(qū)域,在所述不小于所述磁盤區(qū)域的空閑區(qū)域中分配所述重映射區(qū)域。
全文摘要
本發(fā)明提供了一種磁盤數(shù)據(jù)的訪問控制方法及裝置,涉及數(shù)據(jù)存儲(chǔ)技術(shù)領(lǐng)域。該方法包括當(dāng)滿足檢測(cè)條件時(shí),觸發(fā)檢測(cè)且檢測(cè)到目標(biāo)訪問區(qū)塊為壞道區(qū)塊后,在與所述壞道區(qū)塊最接近的空閑區(qū)域?yàn)樗鰤牡绤^(qū)塊分配重映射區(qū)塊;若所述壞道區(qū)塊中存儲(chǔ)有數(shù)據(jù),則將所述數(shù)據(jù)存儲(chǔ)到所述重映射區(qū)塊;將對(duì)所述壞道區(qū)塊的訪問偏移至所述重映射區(qū)塊。本發(fā)明實(shí)施例的方法及裝置可以縮減磁頭尋道時(shí)間,進(jìn)而提高IO訪問性能。
文檔編號(hào)G06F12/02GK103064804SQ20121053910
公開日2013年4月24日 申請(qǐng)日期2012年12月13日 優(yōu)先權(quán)日2012年12月13日
發(fā)明者杜冠 申請(qǐng)人:華為技術(shù)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
镇赉县| 乌拉特后旗| 日照市| 广灵县| 四平市| 临汾市| 同心县| 荣成市| 汪清县| 治县。| 新昌县| 定南县| 寿阳县| 瑞金市| 武平县| 拜泉县| 陇川县| 新民市| 靖西县| 元阳县| 贡嘎县| 东兰县| 洞头县| 广元市| 斗六市| 兰坪| 兴海县| 新和县| 海淀区| 儋州市| 沙湾县| 玉田县| 湖北省| 吉林省| 五台县| 霍州市| 靖安县| 呼和浩特市| 九江市| 五峰| 衢州市|