[發(fā)明專利]閃存文件系統(tǒng)可靠性分析方法無(wú)效
| 申請(qǐng)?zhí)枺?/td> | 201110398912.5 | 申請(qǐng)日: | 2011-12-05 |
| 公開(kāi)(公告)號(hào): | CN102541668A | 公開(kāi)(公告)日: | 2012-07-04 |
| 發(fā)明(設(shè)計(jì))人: | 胡事民;郭旭峰 | 申請(qǐng)(專利權(quán))人: | 清華大學(xué) |
| 主分類號(hào): | G06F11/00 | 分類號(hào): | G06F11/00 |
| 代理公司: | 北京路浩知識(shí)產(chǎn)權(quán)代理有限公司 11002 | 代理人: | 王瑩 |
| 地址: | 100084 北京市海*** | 國(guó)省代碼: | 北京;11 |
| 權(quán)利要求書(shū): | 查看更多 | 說(shuō)明書(shū): | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 閃存 文件系統(tǒng) 可靠性分析 方法 | ||
技術(shù)領(lǐng)域
本發(fā)明涉及計(jì)算機(jī)及電子信息技術(shù)領(lǐng)域,特別涉及一種閃存文件系統(tǒng)可靠性分析方法。
背景技術(shù)
隨著技術(shù)的不斷革新,閃存已經(jīng)越來(lái)越多地應(yīng)用到嵌入式設(shè)備中。雖然閃存具有眾多優(yōu)點(diǎn),但是也存在缺點(diǎn)。最大的缺點(diǎn)是面臨著“部分失效”的問(wèn)題,即在讀寫(xiě)閃存的某些區(qū)域時(shí)可能會(huì)發(fā)生錯(cuò)誤,這些錯(cuò)誤可能是暫時(shí)性錯(cuò)誤,也可能是持久性錯(cuò)誤。閃存塊的擦除次數(shù)是有限的,在1萬(wàn)次至100萬(wàn)次之間,超過(guò)這個(gè)限制后,閃存單元就變?yōu)椴豢捎谩Q芯勘砻鳎瑢?duì)于閃存,溫度越高,數(shù)據(jù)保持能力越差;隨著寫(xiě)入和擦除次數(shù)的增加,閃存的位出錯(cuò)率會(huì)明顯增大,而且會(huì)出現(xiàn)編程和讀操作的干擾現(xiàn)象。在實(shí)際應(yīng)用中,閃存硬件控制器具有執(zhí)行錯(cuò)誤糾正碼(ECC)的功能,可以糾正部分錯(cuò)誤,但如果錯(cuò)誤較多,ECC也可能無(wú)法全部恢復(fù)。因此,閃存是可能會(huì)出錯(cuò)的,使用閃存時(shí)必須要解決這些問(wèn)題。
應(yīng)用程序通過(guò)文件系統(tǒng)對(duì)閃存進(jìn)行讀寫(xiě)。閃存文件系統(tǒng)不僅要完成對(duì)閃存的讀寫(xiě)和擦除功能,還要有能力應(yīng)對(duì)可能出現(xiàn)的各種錯(cuò)誤。
目前研究領(lǐng)域還沒(méi)有對(duì)閃存文件系統(tǒng)進(jìn)行過(guò)任何詳細(xì)的可靠性分析。在文件系統(tǒng)可靠性研究方面,目前研究主要關(guān)注于通用文件系統(tǒng),如:Ext3、NTFS、ZFS等,存儲(chǔ)介質(zhì)是磁盤和內(nèi)存,研究思路是先假設(shè)磁盤和內(nèi)存可能會(huì)出錯(cuò),然后通過(guò)錯(cuò)誤植入的方法進(jìn)行分析。正如前文所說(shuō),閃存存在部分失效的問(wèn)題,如果閃存文件系統(tǒng)處理不當(dāng),可能造成數(shù)據(jù)污染或數(shù)據(jù)丟失,甚至影響系統(tǒng)穩(wěn)定,因此研究閃存文件系統(tǒng)的可靠性具有重要意義。
發(fā)明內(nèi)容
(一)要解決的技術(shù)問(wèn)題
本發(fā)明要解決的技術(shù)問(wèn)題是:如何對(duì)閃存進(jìn)行可靠性分析,以盡量避免因閃存失效導(dǎo)致的讀寫(xiě)錯(cuò)誤。
(二)技術(shù)方案
為解決上述技術(shù)問(wèn)題,本發(fā)明提供了一種閃存文件系統(tǒng)可靠性分析方法,包括以下步驟:
S1:選擇工作負(fù)載和錯(cuò)誤類型;
S2:運(yùn)行所述工作負(fù)載,將讀寫(xiě)請(qǐng)求發(fā)送到閃存文件系統(tǒng),并按所述錯(cuò)誤類型在閃存文件系統(tǒng)和操作系統(tǒng)的內(nèi)存技術(shù)設(shè)備(memory?technology?device,MTD)驅(qū)動(dòng)模塊之間進(jìn)行錯(cuò)誤植入;
S3:植入錯(cuò)誤后,將模擬錯(cuò)誤的運(yùn)行結(jié)果返回給閃存文件系統(tǒng),若閃存文件系統(tǒng)未檢測(cè)出模擬的錯(cuò)誤或檢測(cè)出后未修復(fù),則認(rèn)為閃存文件系統(tǒng)不可靠。
其中,所述步驟S2具體包括:
測(cè)量所述工作負(fù)載調(diào)用所述MTD驅(qū)動(dòng)模塊中測(cè)試接口的總次數(shù);
針對(duì)一個(gè)測(cè)試接口,隨機(jī)選擇一次進(jìn)行相應(yīng)的錯(cuò)誤植入。
其中,所述錯(cuò)誤植入的具體方式為:
通過(guò)在操作系統(tǒng)的用戶態(tài)調(diào)用I/O控制函數(shù),將用戶態(tài)的錯(cuò)誤植入命令傳入操作系統(tǒng)內(nèi)核,觸發(fā)內(nèi)核進(jìn)行錯(cuò)誤植入。
其中,所述測(cè)試接口為閃存文件系統(tǒng)對(duì)MTD驅(qū)動(dòng)模塊的調(diào)用接口,包括:nand_read、nand_write和nand_erase。
其中,所述步驟S3具體包括:
對(duì)于讀、寫(xiě)、擦除錯(cuò)誤,向上層直接返回-EIO;對(duì)于讀污染,采取“比特位翻轉(zhuǎn)”的方式:從所述MTD驅(qū)動(dòng)模塊中讀取數(shù)據(jù)后,隨機(jī)選擇其中某一位取反,再返回給上層;
對(duì)比所述工作負(fù)載的輸出和操作系統(tǒng)中與閃存文件系統(tǒng)有關(guān)的日志記錄,確定閃存文件系統(tǒng)的可靠性。
其中,所述錯(cuò)誤類型包括:暫時(shí)性錯(cuò)誤和持久性錯(cuò)誤兩類,其中每一類都包括四種:讀錯(cuò)誤、讀污染、寫(xiě)錯(cuò)誤和擦除錯(cuò)誤。
其中,所述工作負(fù)載包括:POSIX定義的接口測(cè)試樣例和閃存文件系統(tǒng)測(cè)試模塊中的測(cè)試樣例stress_3。
(三)有益效果
本發(fā)明通過(guò)在閃存文件系統(tǒng)對(duì)MTD驅(qū)動(dòng)模塊的調(diào)用接口中植入錯(cuò)誤,模擬錯(cuò)誤的運(yùn)行結(jié)果是否被閃存文件系統(tǒng)檢測(cè)出并正確處理,從而實(shí)現(xiàn)了對(duì)閃存的可靠性分析。
附圖說(shuō)明
圖1是本發(fā)明實(shí)施例的一種閃存文件系統(tǒng)可靠性分析方法流程圖;
圖2是實(shí)現(xiàn)圖1中方法的系統(tǒng)架構(gòu)圖;
圖3為本發(fā)明實(shí)施例中植入的錯(cuò)誤類型。
具體實(shí)施方式
下面結(jié)合附圖和實(shí)施例,對(duì)本發(fā)明的具體實(shí)施方式作進(jìn)一步詳細(xì)描述。以下實(shí)施例用于說(shuō)明本發(fā)明,但不用來(lái)限制本發(fā)明的范圍。
如圖1所示,為本發(fā)明實(shí)施例的閃存文件系統(tǒng)可靠性分析方法流程圖,本實(shí)施例中以Linux操作系統(tǒng)為例,圖2是實(shí)現(xiàn)圖1方法的系統(tǒng)架構(gòu)設(shè)計(jì)圖。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于清華大學(xué),未經(jīng)清華大學(xué)許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201110398912.5/2.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專利網(wǎng)。
- 同類專利
- 專利分類
G06F 電數(shù)字?jǐn)?shù)據(jù)處理
G06F11-00 錯(cuò)誤檢測(cè);錯(cuò)誤校正;監(jiān)控
G06F11-07 .響應(yīng)錯(cuò)誤的產(chǎn)生,例如,容錯(cuò)
G06F11-22 .在準(zhǔn)備運(yùn)算或者在空閑時(shí)間期間內(nèi),通過(guò)測(cè)試作故障硬件的檢測(cè)或定位
G06F11-28 .借助于檢驗(yàn)標(biāo)準(zhǔn)程序或通過(guò)處理作錯(cuò)誤檢測(cè)、錯(cuò)誤校正或監(jiān)控
G06F11-30 .監(jiān)控
G06F11-36 .通過(guò)軟件的測(cè)試或調(diào)試防止錯(cuò)誤
- 機(jī)械產(chǎn)品設(shè)計(jì)可靠性分析手段的確定方法
- 考慮認(rèn)知和隨機(jī)不確定性的齒輪傳動(dòng)多學(xué)科可靠性分析方法
- 一種提高基于不完全數(shù)據(jù)飛機(jī)結(jié)構(gòu)可靠性分析精度的方法
- 數(shù)據(jù)可靠性分析
- 一種可靠性敏感度驅(qū)動(dòng)的高端復(fù)雜裝備可靠性分析方法
- 可靠性分析方法及裝置
- 考慮隨機(jī)不確定性的關(guān)節(jié)軸承的可靠性分析方法
- 一種對(duì)集輸聯(lián)合站以及關(guān)鍵設(shè)備的可靠性評(píng)價(jià)方法及系統(tǒng)
- 起落架的可靠性分析方法
- 一種機(jī)械結(jié)構(gòu)可靠性分析方法及其應(yīng)用
- 一種數(shù)據(jù)庫(kù)讀寫(xiě)分離的方法和裝置
- 一種手機(jī)動(dòng)漫人物及背景創(chuàng)作方法
- 一種通訊綜合測(cè)試終端的測(cè)試方法
- 一種服裝用人體測(cè)量基準(zhǔn)點(diǎn)的獲取方法
- 系統(tǒng)升級(jí)方法及裝置
- 用于虛擬和接口方法調(diào)用的裝置和方法
- 線程狀態(tài)監(jiān)控方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)
- 一種JAVA智能卡及其虛擬機(jī)組件優(yōu)化方法
- 檢測(cè)程序中方法耗時(shí)的方法、裝置及存儲(chǔ)介質(zhì)
- 函數(shù)的執(zhí)行方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)





