一種基于錯(cuò)誤注入測(cè)試存儲(chǔ)系統(tǒng)容忍壞扇區(qū)能力的方法【專利摘要】本發(fā)明公開了一種基于錯(cuò)誤注入測(cè)試存儲(chǔ)系統(tǒng)容忍壞扇區(qū)能力的方法,是將錯(cuò)誤注入設(shè)為模塊進(jìn)行加載,通過實(shí)現(xiàn)虛擬塊設(shè)備驅(qū)動(dòng),并在驅(qū)動(dòng)中動(dòng)態(tài)配置壞扇區(qū)表和\或壞扇區(qū)算法,生成符合要求的壞扇區(qū)的方法;當(dāng)用戶空間發(fā)起讀\寫請(qǐng)求時(shí)先到達(dá)虛擬塊設(shè)備層,虛擬塊設(shè)備驅(qū)動(dòng)檢測(cè)該讀\寫請(qǐng)求指定的扇區(qū)是否位于壞扇區(qū)表或滿足壞扇區(qū)算法,若不滿足任何一項(xiàng),則提交該請(qǐng)求到實(shí)際塊設(shè)備,否則標(biāo)記讀\寫請(qǐng)求指定的扇區(qū)為壞扇區(qū),從而實(shí)現(xiàn)錯(cuò)誤注入。通過該方法,克服了采用實(shí)際硬盤進(jìn)行功能測(cè)試的缺陷,能夠進(jìn)行快速完整的容錯(cuò)測(cè)試,顯著縮小了測(cè)試周期和測(cè)試成本,極大的提高了磁盤的可靠性和使用壽命?!緦@f明】一種基于錯(cuò)誤注入測(cè)試存儲(chǔ)系統(tǒng)容忍壞扇區(qū)能力的方法【
技術(shù)領(lǐng)域:
】[0001]本發(fā)明涉及計(jì)算機(jī)系統(tǒng)及存儲(chǔ)領(lǐng)域,具體地說是一種基于錯(cuò)誤注入測(cè)試存儲(chǔ)系統(tǒng)容忍壞扇區(qū)能力的方法?!?br>背景技術(shù):
】[0002]目前硬盤數(shù)據(jù)密度很大,在生產(chǎn)過程中不可避免的會(huì)產(chǎn)生缺陷。在使用過程中,一些不穩(wěn)定的扇區(qū)也會(huì)逐漸老化而產(chǎn)生數(shù)據(jù)讀寫錯(cuò)誤。即使是正常的扇區(qū),如果正在讀寫的時(shí)候,外力導(dǎo)致磁盤抖動(dòng),也會(huì)對(duì)部分扇區(qū)造成破壞。例如,在使用RAID實(shí)現(xiàn)的磁盤陣列系統(tǒng)中,磁盤失效很多時(shí)候是由于存在少量壞扇區(qū)引起的。因少量壞扇區(qū)引起的失效,極大的降低了系統(tǒng)的可靠性。[0003]為了解決這個(gè)問題,磁盤陣列系統(tǒng)引入了扇區(qū)映射功能,其實(shí)現(xiàn)方式是預(yù)先保留一定的扇區(qū)用作壞扇區(qū)映射,當(dāng)寫入遇到錯(cuò)誤時(shí),重定向到保留區(qū)域并保存映射關(guān)系,后續(xù)讀取操作從映射后的扇區(qū)獲取數(shù)據(jù)。對(duì)于讀取而言,如果發(fā)現(xiàn)該扇區(qū)已映射,直接從映射區(qū)域獲取數(shù)據(jù),如果讀取錯(cuò)誤且未映射,則通過特定恢復(fù)方法(如RAID5的冗余恢復(fù))復(fù)原該數(shù)據(jù)然后寫入到映射區(qū)域。經(jīng)測(cè)試,僅使用千分之五左右的磁盤空間用作映射,就可解決絕大部分因壞扇區(qū)導(dǎo)致的數(shù)據(jù)丟失。而當(dāng)扇區(qū)正常時(shí),映射流程不會(huì)觸發(fā),因此對(duì)正常的讀寫性能沒有影響。該功能在幾乎不影響用戶使用的前提下,極大的提高了系統(tǒng)的可靠性,具有非常高的實(shí)用價(jià)值。[0004]存儲(chǔ)系統(tǒng)容忍壞扇區(qū)的功能只在壞扇區(qū)讀寫時(shí)觸發(fā),并且不同位置錯(cuò)誤扇區(qū)觸發(fā)的處理程有所差別。因此,如果采用實(shí)際硬盤測(cè)試,很難找到有特定壞扇區(qū)數(shù)、范圍或位置的磁盤完成存儲(chǔ)系統(tǒng)容忍壞扇區(qū)功能測(cè)試,因此其測(cè)試周期長(zhǎng),并且需要一定的硬件成本,還很難得到完整的測(cè)試結(jié)果。【
發(fā)明內(nèi)容】[0005]針對(duì)現(xiàn)有技術(shù)的不足之處,本發(fā)明提出一種基于錯(cuò)誤注入測(cè)試存儲(chǔ)系統(tǒng)容忍壞扇區(qū)能力的方法。[0006]本發(fā)明所述一種基于錯(cuò)誤注入測(cè)試存儲(chǔ)系統(tǒng)容忍壞扇區(qū)能力的方法,解決上述技術(shù)問題采用的技術(shù)方案如下:所述基于錯(cuò)誤注入測(cè)試存儲(chǔ)系統(tǒng)容忍壞扇區(qū)能力的方法,是指把錯(cuò)誤注入設(shè)置成一個(gè)模塊進(jìn)行加載,通過錯(cuò)誤注入模塊導(dǎo)出虛擬塊設(shè)備,并在虛擬塊設(shè)備驅(qū)動(dòng)中動(dòng)態(tài)導(dǎo)入壞扇區(qū)表和\或指定壞扇區(qū)算法,生成符合要求的壞扇區(qū)的方法;當(dāng)用戶空間發(fā)起讀\寫請(qǐng)求時(shí)先到達(dá)虛擬塊設(shè)備層,虛擬塊設(shè)備驅(qū)動(dòng)檢測(cè)該讀\寫請(qǐng)求指定的扇區(qū)是否位于壞扇區(qū)表或滿足壞扇區(qū)算法,若不滿足任何一項(xiàng),則提交該請(qǐng)求到實(shí)際塊設(shè)備(磁盤),否則向上層報(bào)告讀寫請(qǐng)求失敗,標(biāo)記讀\寫請(qǐng)求指定的扇區(qū)為壞扇區(qū),從而實(shí)現(xiàn)錯(cuò)誤注入。[0007]本發(fā)明所述基于錯(cuò)誤注入測(cè)試存儲(chǔ)系統(tǒng)容忍壞扇區(qū)能力的方法,主要包括如下幾個(gè)步驟:加載錯(cuò)誤注入模塊、設(shè)置錯(cuò)誤注入模塊、創(chuàng)建\啟動(dòng)邏輯存儲(chǔ)、讀寫測(cè)試和回歸測(cè)試;其中,所述加載錯(cuò)誤注入模塊是指,加載錯(cuò)誤注入模塊bsf1.ko(bsf1:BlockForSectorsFaultyInject1n);所述設(shè)置錯(cuò)誤注入模塊主要包括:設(shè)置后端存儲(chǔ)設(shè)備、導(dǎo)入壞扇區(qū)表和\或設(shè)置壞扇區(qū)算法以及關(guān)閉壞扇區(qū)模擬功能;所述創(chuàng)建\啟動(dòng)邏輯存儲(chǔ)是指:使用所述錯(cuò)誤注入模塊導(dǎo)出的虛擬塊設(shè)備創(chuàng)建邏輯存儲(chǔ);所述讀寫測(cè)試包括:執(zhí)行測(cè)試用例和整理測(cè)試結(jié)果;所述回歸測(cè)試是指:根據(jù)讀寫測(cè)試結(jié)果調(diào)試、解決RAID容忍壞扇區(qū)的問題,迭代進(jìn)行讀寫測(cè)試;直到滿足設(shè)計(jì)要求結(jié)束測(cè)試。[0008]本發(fā)明所述一種基于錯(cuò)誤注入測(cè)試存儲(chǔ)系統(tǒng)容忍壞扇區(qū)能力的方法具有的有益效果:通過該錯(cuò)誤注入模塊來測(cè)試存儲(chǔ)系統(tǒng)容忍壞扇區(qū)能力的方法,可以確保在一定時(shí)間內(nèi)覆蓋所有測(cè)試點(diǎn),除了普通硬盤,不需要任何特定硬件,在幾乎不影響用戶使用的前提下,克服了采用實(shí)際硬盤進(jìn)行功能測(cè)試的缺陷,能夠進(jìn)行快速完整的容錯(cuò)測(cè)試,顯著縮小了測(cè)試周期和測(cè)試成本,極大的提高了磁盤的可靠性和使用壽命,且該方法具有很好的擴(kuò)展性?!緦@綀D】【附圖說明】[0009]附圖1該方法所述錯(cuò)誤注入模塊的流程圖;附圖2該方法數(shù)據(jù)讀寫請(qǐng)求處理的流程圖?!揪唧w實(shí)施方式】[0010]為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚明白,下文中將結(jié)合附圖和實(shí)施例,對(duì)本發(fā)明的一種基于錯(cuò)誤注入測(cè)試存儲(chǔ)系統(tǒng)容忍壞扇區(qū)能力的方法進(jìn)行詳細(xì)說明。[0011]本發(fā)明所述基于錯(cuò)誤注入測(cè)試存儲(chǔ)系統(tǒng)容忍壞扇區(qū)能力的方法,把錯(cuò)誤注入設(shè)計(jì)成一個(gè)模塊加載,通過錯(cuò)誤注入模塊導(dǎo)出虛擬塊設(shè)備,并在虛擬塊設(shè)備驅(qū)動(dòng)中動(dòng)態(tài)導(dǎo)入壞扇區(qū)表和\或設(shè)置壞扇區(qū)算法,生成符合要求的壞扇區(qū)的方法。本發(fā)明所述方法,通過錯(cuò)誤注入測(cè)試存儲(chǔ)系統(tǒng)容忍壞扇區(qū)的能力,這里存儲(chǔ)系統(tǒng)容忍壞扇區(qū)的能力是指存儲(chǔ)系統(tǒng)在讀\寫扇區(qū)出現(xiàn)錯(cuò)誤時(shí),通過數(shù)據(jù)恢復(fù)和寫扇區(qū)映射等方法提高數(shù)據(jù)安全性的能力。[0012]通過本發(fā)明所述方法,當(dāng)用戶空間發(fā)起讀\寫請(qǐng)求時(shí)先到達(dá)虛擬塊設(shè)備層,虛擬塊設(shè)備驅(qū)動(dòng)檢測(cè)該讀\寫請(qǐng)求指定的扇區(qū)是否位于壞扇區(qū)表中或滿足壞扇區(qū)算法,若不滿足任何一項(xiàng),則提交該請(qǐng)求到實(shí)際塊設(shè)備(磁盤),否則向上層報(bào)告讀寫請(qǐng)求失敗,讀\寫請(qǐng)求指定的扇區(qū)為壞扇區(qū),從而實(shí)現(xiàn)錯(cuò)誤注入。[0013]實(shí)施例:下面通過一個(gè)實(shí)施例,對(duì)本發(fā)明所述基于錯(cuò)誤注入測(cè)試存儲(chǔ)系統(tǒng)容忍壞扇區(qū)能力的方法的優(yōu)點(diǎn)和設(shè)計(jì)內(nèi)容,進(jìn)行詳細(xì)說明。[0014]本發(fā)明所述基于錯(cuò)誤注入測(cè)試存儲(chǔ)系統(tǒng)容忍壞扇區(qū)能力的方法,將錯(cuò)誤注入設(shè)置成一個(gè)模塊進(jìn)行加載,如附圖1所示,用戶空間通過1setup配置虛擬塊設(shè)備實(shí)現(xiàn)虛擬塊設(shè)備驅(qū)動(dòng),通過1ctl或者sysfs管理配置壞扇區(qū)設(shè)置,在虛擬塊設(shè)備驅(qū)動(dòng)中動(dòng)態(tài)導(dǎo)入壞扇區(qū)表和\或設(shè)置壞扇區(qū)算法,同時(shí)設(shè)置后端存儲(chǔ)設(shè)備(塊設(shè)備磁盤或文件);當(dāng)用戶動(dòng)件發(fā)起讀\寫請(qǐng)求時(shí),先到達(dá)虛擬塊設(shè)備,虛擬塊設(shè)備驅(qū)動(dòng)檢測(cè)該讀\寫請(qǐng)求中是否有扇區(qū)位于壞扇區(qū)表或滿足壞扇區(qū)算法,若不在壞扇區(qū)表也不符合壞扇區(qū)算法,則提交該請(qǐng)求到塊設(shè)備磁盤中,否則向上層報(bào)告讀寫請(qǐng)求失敗模擬硬件扇區(qū)錯(cuò)誤,表明讀\寫請(qǐng)求指定的扇區(qū)為壞扇區(qū),進(jìn)而實(shí)現(xiàn)錯(cuò)誤注入。[0015]上述壞扇區(qū)設(shè)置包括壞扇區(qū)表和壞扇區(qū)算法,其中,壞扇區(qū)表編碼多個(gè)指定扇區(qū)或區(qū)間為壞扇區(qū),壞扇區(qū)算法指定符合某種算法要求的扇區(qū)為壞扇區(qū)。上述1setup命令用于設(shè)置循環(huán)設(shè)備,循環(huán)設(shè)備可以把文件虛擬成塊設(shè)備;所述1ctl是設(shè)備驅(qū)動(dòng)程序中對(duì)設(shè)備的I/O通道進(jìn)行管理的函數(shù);所述sysfs是一種虛擬文件系統(tǒng),可以把設(shè)備和驅(qū)動(dòng)程序的信息從內(nèi)核輸出到用戶空間,也可以用來對(duì)設(shè)備和驅(qū)動(dòng)程序做設(shè)置。[0016]本實(shí)施所述基于錯(cuò)誤注入測(cè)試存儲(chǔ)系統(tǒng)容忍壞扇區(qū)能力的方法,主要包括以下幾個(gè)步驟:加載錯(cuò)誤注入模塊、設(shè)置錯(cuò)誤注入模塊、創(chuàng)建\啟動(dòng)邏輯存儲(chǔ)、讀寫測(cè)試和回歸測(cè)試;其中,所述加載錯(cuò)誤注入模塊是指,加載錯(cuò)誤注入模塊bsf1.ko(bsf1:BlockForSectorsFaultyInject1n);所述設(shè)置錯(cuò)誤注入模塊主要包括:設(shè)置后端存儲(chǔ)設(shè)備、導(dǎo)入壞扇區(qū)表和\或設(shè)置壞扇區(qū)算法以及關(guān)閉壞扇區(qū)模擬功能;其中,設(shè)置后端存儲(chǔ)設(shè)備包括:通過1setup或者sysfs設(shè)置后端存儲(chǔ)設(shè)備,后端存儲(chǔ)設(shè)備可以是任意塊設(shè)備(磁盤)或文件;當(dāng)讀寫請(qǐng)求指定的扇區(qū)或扇區(qū)范圍不在壞扇區(qū)表且不滿足壞扇區(qū)算法時(shí),錯(cuò)誤注入模塊提交讀寫請(qǐng)求到所述后端存儲(chǔ)設(shè)備完成讀寫;且所述后端存儲(chǔ)設(shè)備兼容1setup和echo、重定向等Linux常見文本操縱命令,可以快速簡(jiǎn)單完成;導(dǎo)入壞扇區(qū)和\或設(shè)置壞扇區(qū)算法包括:通過sysfs導(dǎo)出接口,設(shè)置壞扇區(qū)表目錄bstable和壞扇區(qū)算法目錄bsalgo;關(guān)閉壞扇區(qū)模擬功能:通過寫入O或off到sysfs接口即可關(guān)閉,用于性能對(duì)比測(cè)試;所述創(chuàng)建\啟動(dòng)邏輯存儲(chǔ)包括:使用所述錯(cuò)誤注入模塊bsfi導(dǎo)出的虛擬塊設(shè)備創(chuàng)建邏輯存儲(chǔ);所述讀寫測(cè)試包括:執(zhí)行測(cè)試用例和整理測(cè)試結(jié)果;執(zhí)行測(cè)試用例包括:研發(fā)人員根據(jù)映射實(shí)現(xiàn)代碼編寫測(cè)試用例,完成邊界測(cè)試,提高代碼健壯性;測(cè)試人員編寫多份隨機(jī)測(cè)試用例,來覆蓋任何可能的扇區(qū)錯(cuò)誤;整理測(cè)試結(jié)果包括:研發(fā)人員通過測(cè)試結(jié)果調(diào)試代碼,進(jìn)一步加強(qiáng)代碼的穩(wěn)定性;測(cè)試人員通過大量測(cè)試完成壞扇區(qū)映射功能的缺陷報(bào)告;所述回歸測(cè)試包括:根據(jù)讀寫測(cè)試結(jié)果調(diào)試、解決RAID容忍壞扇區(qū)的問題,迭代進(jìn)行讀寫測(cè)試;直到滿足設(shè)計(jì)要求,測(cè)試結(jié)束。[0017]本實(shí)施例所述基于錯(cuò)誤注入測(cè)試存儲(chǔ)系統(tǒng)容忍壞扇區(qū)能力的方法中,所述壞扇區(qū)表目錄bstable包括init、files、sectors、info四個(gè)文件;其中,init只寫不可讀,info可讀不可寫,files、sectors可讀寫;files指定壞扇區(qū)文件,寫入格式為[addIdel]:〈filename〉,filename文件是絕對(duì)路徑名稱;sectors指定扇區(qū)或者扇區(qū)范圍,寫入格式為[addIdel:]〈sectors〉;add|del前綴分別表示添加和刪除,可忽略,忽略時(shí)按照add處理;files和sectors所有設(shè)置的并集構(gòu)成全部壞扇區(qū)表內(nèi)容;files通過notifier掛接動(dòng)態(tài)通知,更改后即刻生效。[0018]所述壞扇區(qū)算法目錄bsalgo包含init、mod、random、invert文件,其中,init只寫,重新初始化壞扇區(qū)算法,默認(rèn)全部關(guān)閉,此時(shí)查看mod和random內(nèi)容為O;mod和random寫入模式相同,都是[add|del]:〈vl[-v2]>;add|del前綴分別表示添加和刪除,可忽略,忽略時(shí)按照add處理;只設(shè)置vl表示對(duì)于vl取模,此時(shí)mod和random結(jié)果等同;同時(shí)設(shè)置vl和v2,對(duì)于mod,表示[vl,c2)區(qū)間內(nèi)任意值,對(duì)于random,表示隨機(jī)生成區(qū)間[vl,v2)內(nèi)的任一數(shù)值;invert可以寫入字符串mod或者random,兩次寫入同一值等于未寫入;查看invert如有mod表示mod處于反轉(zhuǎn)狀態(tài),如有random表示random處于反轉(zhuǎn)狀態(tài),兩者可同時(shí)處于反轉(zhuǎn)狀態(tài),此時(shí)現(xiàn)實(shí)為兩行,分別為mod和random。關(guān)于mod和random的全面描述采用數(shù)學(xué)表達(dá)式實(shí)現(xiàn)。[0019]通過對(duì)基于錯(cuò)誤注入測(cè)試存儲(chǔ)系統(tǒng)容忍壞扇區(qū)能力的方法的詳細(xì)說明,可知該方法通過錯(cuò)誤注入的方式,確保在一定時(shí)間內(nèi)覆蓋所有測(cè)試點(diǎn),而且除了普通磁盤,不需要任何特定硬件,是兼顧測(cè)試周期、成本和全面性的好方法,并且具有很好的擴(kuò)展性。因此通過該方法,在幾乎不影響用戶使用的前提下極大的提高了磁盤的可靠性和使用壽命。[0020]附圖2為該方法的數(shù)據(jù)請(qǐng)求處理的流程圖,如附圖2所示,當(dāng)用戶空間發(fā)起數(shù)據(jù)讀寫請(qǐng)求時(shí)先到達(dá)虛擬塊設(shè)備,虛擬塊設(shè)備驅(qū)動(dòng)檢測(cè)該讀寫請(qǐng)求指定扇區(qū)中是否有扇區(qū)位于壞扇區(qū)表中,或者符合壞扇區(qū)算法要求,若滿足上述一種則報(bào)告上層數(shù)據(jù)請(qǐng)求失敗,設(shè)置錯(cuò)誤標(biāo)記,實(shí)現(xiàn)錯(cuò)誤注入;若不滿足上述任一種,則遞交數(shù)據(jù)請(qǐng)求到后端存儲(chǔ)設(shè)備執(zhí)行實(shí)際讀取。上述【具體實(shí)施方式】?jī)H是本發(fā)明的具體個(gè)案,本發(fā)明的專利保護(hù)范圍包括但不限于上述【具體實(shí)施方式】,任何符合本發(fā)明的權(quán)利要求書的且任何所屬【
技術(shù)領(lǐng)域:
】的普通技術(shù)人員對(duì)其所做的適當(dāng)變化或替換,皆應(yīng)落入本發(fā)明的專利保護(hù)范圍。【權(quán)利要求】1.一種基于錯(cuò)誤注入測(cè)試存儲(chǔ)系統(tǒng)容忍壞扇區(qū)能力的方法,其特征在于,把錯(cuò)誤注入設(shè)置成一個(gè)模塊進(jìn)行加載,通過錯(cuò)誤注入模塊導(dǎo)出虛擬塊設(shè)備,并在虛擬塊設(shè)備驅(qū)動(dòng)中動(dòng)態(tài)導(dǎo)入壞扇區(qū)表和\或設(shè)置壞扇區(qū)算法,生成符合要求的壞扇區(qū);當(dāng)用戶空間發(fā)起讀\寫請(qǐng)求時(shí)先到達(dá)虛擬塊設(shè)備層,虛擬塊設(shè)備驅(qū)動(dòng)檢測(cè)該讀\寫請(qǐng)求指定的扇區(qū)是否位于壞扇區(qū)表或滿足壞扇區(qū)算法,若不滿足任何一項(xiàng),則提交該請(qǐng)求到實(shí)際塊設(shè)備,否則向上層報(bào)告讀寫請(qǐng)求失敗,標(biāo)記讀\寫請(qǐng)求指定的扇區(qū)為壞扇區(qū),從而進(jìn)行錯(cuò)誤注入。2.根據(jù)權(quán)利要求1所述的一種基于錯(cuò)誤注入測(cè)試存儲(chǔ)系統(tǒng)容忍壞扇區(qū)能力的方法,其特征在于,通過1ctl或者sysfs管理配置壞扇區(qū)表和壞扇區(qū)算法,且所述壞扇區(qū)表編碼多個(gè)指定扇區(qū)或區(qū)間為壞扇區(qū),所述壞扇區(qū)算法指定符合某種算法要求的扇區(qū)為壞扇區(qū)。3.根據(jù)權(quán)利要求2所述的一種基于錯(cuò)誤注入測(cè)試存儲(chǔ)系統(tǒng)容忍壞扇區(qū)能力的方法,其特征在于,該方法主要包括如下幾個(gè)步驟:加載錯(cuò)誤注入模塊、設(shè)置錯(cuò)誤注入模塊、創(chuàng)建\啟動(dòng)邏輯存儲(chǔ)、讀寫測(cè)試和回歸測(cè)試;其中,所述加載錯(cuò)誤注入模塊是指,加載錯(cuò)誤注入模塊bsf1.ko(bsf1:BlockForSectorsFaultyInject1n);所述設(shè)置錯(cuò)誤注入模塊主要包括:設(shè)置后端存儲(chǔ)設(shè)備、導(dǎo)入壞扇區(qū)表和\或設(shè)置壞扇區(qū)算法以及關(guān)閉壞扇區(qū)模擬功能;所述創(chuàng)建\啟動(dòng)邏輯存儲(chǔ)是指:使用所述錯(cuò)誤注入模塊導(dǎo)出的虛擬塊設(shè)備創(chuàng)建邏輯存儲(chǔ);所述讀寫測(cè)試包括:執(zhí)行測(cè)試用例和整理測(cè)試結(jié)果;所述回歸測(cè)試是指:根據(jù)讀寫測(cè)試結(jié)果調(diào)試解決RAID容忍壞扇區(qū)的問題,迭代進(jìn)行讀寫測(cè)試;直到滿足設(shè)計(jì)要求結(jié)束測(cè)試。4.根據(jù)權(quán)利要求3所述的一種基于錯(cuò)誤注入測(cè)試存儲(chǔ)系統(tǒng)容忍壞扇區(qū)能力的方法,其特征在于,所述設(shè)置后端存儲(chǔ)設(shè)備包括:通過1setup或者sysfs設(shè)置后端存儲(chǔ)設(shè)備,后端存儲(chǔ)設(shè)備是任意塊設(shè)備或文件;當(dāng)讀寫請(qǐng)求指定的扇區(qū)或扇區(qū)范圍不在壞扇區(qū)表且不滿足壞扇區(qū)算法時(shí),錯(cuò)誤注入模塊提交讀寫請(qǐng)求到所述后端存儲(chǔ)設(shè)備完成讀寫。5.根據(jù)權(quán)利要求3所述的一種基于錯(cuò)誤注入測(cè)試存儲(chǔ)系統(tǒng)容忍壞扇區(qū)能力的方法,其特征在于,所述導(dǎo)入壞扇區(qū)和\或設(shè)置壞扇區(qū)算法是指:通過sysfs導(dǎo)出接口,設(shè)置壞扇區(qū)表目錄bstable和壞扇區(qū)算法目錄bsalgo。6.根據(jù)權(quán)利要求3所述的一種基于錯(cuò)誤注入測(cè)試存儲(chǔ)系統(tǒng)容忍壞扇區(qū)能力的方法,其特征在于,所述關(guān)閉壞扇區(qū)模擬功能是指:通過寫入O或off到sysfs接口進(jìn)行關(guān)閉壞扇區(qū)模擬功能。7.根據(jù)權(quán)利要求3所述的一種基于錯(cuò)誤注入測(cè)試存儲(chǔ)系統(tǒng)容忍壞扇區(qū)能力的方法,其特征在于,所述執(zhí)行測(cè)試用例包括:根據(jù)映射實(shí)現(xiàn)代碼編寫測(cè)試用例,完成邊界測(cè)試?’編寫多份隨機(jī)測(cè)試用例,來覆蓋任何可能的扇區(qū)錯(cuò)誤。8.根據(jù)權(quán)利要求3所述的一種基于錯(cuò)誤注入測(cè)試存儲(chǔ)系統(tǒng)容忍壞扇區(qū)能力的方法,其特征在于,所述整理測(cè)試結(jié)果包括:通過測(cè)試結(jié)果調(diào)試代碼,通過大量測(cè)試完成壞扇區(qū)映射功能的缺陷報(bào)告?!疚臋n編號(hào)】G06F11/07GK104199748SQ201410421870【公開日】2014年12月10日申請(qǐng)日期:2014年8月25日優(yōu)先權(quán)日:2014年8月25日【發(fā)明者】閆永剛,古世磊申請(qǐng)人:浪潮電子信息產(chǎn)業(yè)股份有限公司