專利名稱:一種將數(shù)據(jù)寫入非易失性存儲(chǔ)介質(zhì)的方法、裝置及計(jì)算機(jī)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及數(shù)據(jù)存儲(chǔ)領(lǐng)域,尤其涉及一種將數(shù)據(jù)寫入非易失性存儲(chǔ)介質(zhì)的 方法及裝置。
背景技術(shù):
目前,實(shí)時(shí)地寫存儲(chǔ)模塊,例如,寫非易失性存儲(chǔ)介質(zhì)的傳統(tǒng)方法是將數(shù) 據(jù)直接寫入。但是,在某種情況下新數(shù)據(jù)會(huì)直接覆蓋掉老數(shù)據(jù),或者,若在寫 入過程中發(fā)生斷電、復(fù)位等異常情況時(shí),則會(huì)導(dǎo)致新寫入的數(shù)據(jù)不完整,同時(shí) 老數(shù)據(jù)也被破壞。以上問題在硬盤操作中尤其突出。.
發(fā)明內(nèi)容
為了解決目前在向非易失性存儲(chǔ)介質(zhì)寫數(shù)據(jù)的過程中發(fā)生異常情況時(shí)導(dǎo) 致的數(shù)據(jù)不可用的問題,本發(fā)明提供了 一種將數(shù)據(jù)寫入非易失性存儲(chǔ)介質(zhì)的方
法,包括步驟
數(shù)據(jù)寫入裝置寫入第 一數(shù)據(jù);
寫入所述第一數(shù)據(jù)結(jié)束后,所述數(shù)據(jù)寫入裝置設(shè)置寫備份結(jié)束標(biāo)志,以使 所述第 一數(shù)據(jù)能夠被訪問;
所述數(shù)據(jù)寫入裝置根據(jù)所述第一數(shù)據(jù),寫入與所述第一數(shù)據(jù)具有預(yù)設(shè)的映 射關(guān)系的第二數(shù)據(jù);
寫入第二數(shù)據(jù)結(jié)束后,所述數(shù)據(jù)寫入裝置設(shè)置激活標(biāo)志,以使所述第二數(shù) 據(jù)能夠被訪問。
所述數(shù)據(jù)寫入裝置寫入第一數(shù)據(jù)的步驟之前還包括步驟
數(shù)據(jù)寫入裝置設(shè)置控制數(shù)據(jù)寫入次數(shù)的標(biāo)志;
所述數(shù)據(jù)寫入裝置在所述控制數(shù)據(jù)寫入次數(shù)的標(biāo)志有效時(shí),寫入所述第一 數(shù)據(jù)。所述數(shù)據(jù)寫入裝置設(shè)置控制數(shù)據(jù)寫入次數(shù)的標(biāo)志的步驟具體包括 所述控制數(shù)據(jù)寫入次數(shù)的標(biāo)志具體為第N次升級(jí)標(biāo)志; 所述數(shù)據(jù)寫入裝置判斷第N次升級(jí)標(biāo)志是否有效,如果無效,則設(shè)置N
=1,然后執(zhí)行寫入所述第一數(shù)據(jù)的步驟;如果有效,則判斷N是否小于第一
閾值,如果不是,則上報(bào)狀態(tài),如果是,則設(shè)置N-N+1,然后執(zhí)行寫入所
述第一數(shù)據(jù)的步驟。
所述寫入第 一數(shù)據(jù)的步驟和所述設(shè)置寫備份結(jié)束標(biāo)志的步驟之間還包括
步驟
所述數(shù)據(jù)寫入裝置設(shè)置控制備份校驗(yàn)次數(shù)的標(biāo)志;
所述數(shù)據(jù)寫入裝置在所述控制備份校驗(yàn)次數(shù)的標(biāo)志有效時(shí),設(shè)置寫備份結(jié)
束標(biāo)志o
所述數(shù)據(jù)寫入裝置設(shè)置控制備份校驗(yàn)次數(shù)的標(biāo)志的步驟具體為 所述控制備份校驗(yàn)次數(shù)的標(biāo)志具體為第N次備份校驗(yàn)標(biāo)志; 所述數(shù)據(jù)寫入裝置判斷第N次備份校驗(yàn)標(biāo)志是否有效,如果無效,則設(shè) 置N-1,然后校驗(yàn)所述第一數(shù)據(jù);如果有效,則判斷N是否小于第二閾值, 如果不是,則上報(bào)狀態(tài),如果是,則設(shè)置N二N+1,然后校驗(yàn)所述第一數(shù)據(jù); 如果校驗(yàn)無誤,則設(shè)置寫備份結(jié)束標(biāo)志,如果校驗(yàn)有誤,則上報(bào)狀態(tài)。 所述寫入第二數(shù)據(jù)的步驟之前還包括步驟 數(shù)據(jù)寫入裝置設(shè)置控制數(shù)據(jù)寫回次數(shù)的標(biāo)志;
所述數(shù)據(jù)寫入裝置在所述控制數(shù)據(jù)寫回次數(shù)的標(biāo)志有效時(shí),寫入所述第二 數(shù)據(jù)。
所述設(shè)置控制數(shù)據(jù)寫回次數(shù)的標(biāo)志的步驟具體為 所述控制數(shù)據(jù)寫回次數(shù)的標(biāo)志具體為第N次數(shù)據(jù)寫回標(biāo)志; 所述數(shù)據(jù)寫入裝置判斷第N次數(shù)據(jù)寫回標(biāo)志是否有效,如果無效,則設(shè) 置N-1,;如果有效,則判斷N是否小于第三閾值,如果不是,則上l艮狀態(tài), 如果是,則設(shè)置N二N+1,然后執(zhí)行寫入所述第二數(shù)據(jù)的步驟。 所述寫入第二數(shù)據(jù)的步驟之后還包括步驟
判斷所述第二數(shù)據(jù)是否正確,如果不正確,則上凈艮狀態(tài),如果正確,則設(shè) 置所述激活標(biāo)志。本發(fā)明還提供了一種數(shù)據(jù)寫入裝置,包括 第一寫模塊,用于向備份模塊寫入第一數(shù)據(jù);
寫備份結(jié)束標(biāo)志設(shè)置模塊,用于寫入所述第一數(shù)據(jù)結(jié)束后,在標(biāo)志模塊設(shè) 置寫備份結(jié)束標(biāo)志,以使所述第一數(shù)據(jù)能夠被訪問;
第二寫模塊,用于根據(jù)所述第一數(shù)據(jù),向工作模塊寫入與所述第一數(shù)據(jù)具 有預(yù)設(shè)的映射關(guān)系的第二ft據(jù);
激活標(biāo)志設(shè)置模塊,用于寫入所述第二數(shù)據(jù)結(jié)束后,在所述標(biāo)志模塊設(shè)置 激活標(biāo)志,以使所述第二數(shù)據(jù)能夠被訪問;
所述工作模塊的基地址位于所述標(biāo)志模塊;
所述備份模塊位于備份空間;所述工作模塊位于工作空間;所述標(biāo)志模塊 位于標(biāo)志空間;所述備份空間、工作空間和標(biāo)志空間之間相互獨(dú)立。
所述工作模塊的基地址為查找標(biāo)志,位于所述標(biāo)志模塊的當(dāng)前指針區(qū),所 述第二數(shù)據(jù)寫入所述工作模塊后,所述數(shù)據(jù)寫入裝置利用所述工作模塊的基地 址能夠找到所述第二數(shù)據(jù)。
所述數(shù)據(jù)寫入裝置還包括控制數(shù)據(jù)寫入次數(shù)標(biāo)志設(shè)置模塊,控制備份校 驗(yàn)次數(shù)標(biāo)志設(shè)置模塊和控制數(shù)據(jù)寫回次數(shù)標(biāo)志設(shè)置模塊;
所述控制數(shù)據(jù)寫入次數(shù)標(biāo)志設(shè)置模塊,用于設(shè)置控制數(shù)據(jù)寫入次數(shù)的標(biāo)
志5
所述第一寫模塊在所述控制數(shù)據(jù)寫入次數(shù)的標(biāo)志有效時(shí),寫入所述第一數(shù)
據(jù);
所述控制備份校驗(yàn)次數(shù)標(biāo)志設(shè)置模塊,用于在寫入所述第一數(shù)據(jù)后,設(shè)置 控制備份校驗(yàn)次數(shù)的標(biāo)志;
所述寫備份結(jié)束標(biāo)志設(shè)置模塊在所述控制備份校驗(yàn)次數(shù)的標(biāo)志有效時(shí),設(shè) 置寫備份結(jié)束標(biāo)志;
所述控制數(shù)據(jù)寫回次數(shù)標(biāo)志設(shè)置模塊,用于設(shè)置控制數(shù)據(jù)寫回次數(shù)的標(biāo)
志5
所述第二寫模塊在所述控制數(shù)據(jù)寫回次數(shù)的標(biāo)志有效時(shí),寫入所述第二數(shù)據(jù)。
本發(fā)明還提供了一種計(jì)算機(jī),包括第一寫模塊,用于向備份模塊寫入第一數(shù)據(jù);
寫備份結(jié)束標(biāo)志設(shè)置模塊,用于寫入所述第一數(shù)據(jù)結(jié)束后,在標(biāo)志模塊設(shè) 置寫備份結(jié)束標(biāo)志,以使所述第一數(shù)據(jù)能夠被訪問;
第二寫模塊,用于根據(jù)所述第一數(shù)據(jù),向工作模塊寫入與所述第一數(shù)據(jù)具 有預(yù)設(shè)的映射關(guān)系的第二勒:據(jù);
激活標(biāo)志設(shè)置模塊,用于寫入所述第二數(shù)據(jù)結(jié)束后,在所述標(biāo)志模塊設(shè)置 激活標(biāo)志,以使所述第二數(shù)據(jù)能夠被訪問;
所述工作模塊的基地址位于所述標(biāo)志模塊;
所述備份模塊位于備份空間;所述工作模塊位于工作空間;所述標(biāo)志模塊 位于標(biāo)志空間;所述備份空間、工作空間和標(biāo)志空間之間相互獨(dú)立。
所述工作模塊的基地址為查找標(biāo)志,位于所述標(biāo)志模塊的當(dāng)前指針區(qū),所 述第二數(shù)據(jù)寫入所述工作模塊后,所述數(shù)據(jù)寫入裝置利用所述工作模塊的基地 址能夠找到所述第二數(shù)據(jù)。
所述數(shù)據(jù)寫入裝置還包括控制數(shù)據(jù)寫入次數(shù)標(biāo)志設(shè)置模塊,控制備份校 驗(yàn)次數(shù)標(biāo)志設(shè)置模塊和控制數(shù)據(jù)寫回次數(shù)標(biāo)志設(shè)置模塊;
所述控制數(shù)據(jù)寫入次數(shù)標(biāo)志設(shè)置模塊,用于設(shè)置控制數(shù)據(jù)寫入次數(shù)的標(biāo)
志5
所述第一寫模塊在所述控制數(shù)據(jù)寫入次數(shù)的標(biāo)志有效時(shí),寫入所述第一數(shù)
據(jù);
所述控制備份校驗(yàn)次數(shù)標(biāo)志設(shè)置模塊,用于設(shè)置控制備份校驗(yàn)次數(shù)的標(biāo)
志5
所述寫備份結(jié)束標(biāo)志設(shè)置模塊在所述控制備份校驗(yàn)次數(shù)的標(biāo)志有效時(shí),設(shè)
置寫備份結(jié)束標(biāo)志;
所述控制數(shù)據(jù)寫回次數(shù)標(biāo)志設(shè)置模塊,用于設(shè)置控制數(shù)據(jù)寫回次數(shù)的標(biāo)
志;
所述第二寫模塊在所述控制數(shù)據(jù)寫回次數(shù)的標(biāo)志有效時(shí),寫入所述第二數(shù)據(jù)。
與現(xiàn)有技術(shù)相比,本發(fā)明具有以下有益效果
本發(fā)明在寫數(shù)據(jù)的全過程設(shè)置各種標(biāo)志,使得寫數(shù)據(jù)的全過程留下豐富的
9信息,通過判斷這些標(biāo)志即可知道寫入的數(shù)據(jù)是否正常,確保新寫入的數(shù)據(jù)只 有在正確地寫入之后才能被訪問。如果寫入的數(shù)據(jù)發(fā)生錯(cuò)誤或者寫入過程被打 斷(如斷電、復(fù)位等),則可以利用標(biāo)志判斷出是寫過程的哪個(gè)環(huán)節(jié)出現(xiàn)了錯(cuò) 誤,從而進(jìn)行錯(cuò)誤的修復(fù)或者從正確的位置來訪問數(shù)據(jù),確保被訪問的數(shù)據(jù)仍 然是可用的新數(shù)據(jù)或者是可用的老數(shù)據(jù),不會(huì)出現(xiàn)數(shù)據(jù)不可用這種情況。
圖1為本發(fā)明的凝:據(jù)寫入裝置結(jié)構(gòu)示意圖; 圖2為本發(fā)明的數(shù)據(jù)寫入方法流程圖3為本發(fā)明的數(shù)據(jù)寫入方法中,向備份模塊寫數(shù)據(jù)的最佳實(shí)施過程流程
圖4為本發(fā)明的數(shù)據(jù)寫入方法中,向工作模塊寫數(shù)據(jù)的最佳實(shí)施過程流程圖。
具體實(shí)施例方式
本發(fā)明是一種在數(shù)據(jù)實(shí)時(shí)寫入非易失性存儲(chǔ)模塊(如Nor Flash、 Nand Flash等非易失性存儲(chǔ)器件和硬盤、CF卡、SD卡等非易失性存儲(chǔ)設(shè)備)過程 中對(duì)寫入過程設(shè)置跟蹤標(biāo)志的方法,利用這些標(biāo)志能達(dá)到數(shù)據(jù)保護(hù)的目的并且 在數(shù)據(jù)寫入校驗(yàn)后能夠立即可用,不阻塞其他程序的運(yùn)行。
本文提到的非易失性存儲(chǔ)模塊是指在掉電情況下數(shù)據(jù)不丟失的存儲(chǔ)器件 或設(shè)備,或者是非易失性存儲(chǔ)器件的某個(gè)區(qū)域或者是非易失性存儲(chǔ)設(shè)備的某個(gè) 非易失性存儲(chǔ)區(qū)域。
本發(fā)明適用于程序升級(jí);改造硬盤、CF卡等非易失性存儲(chǔ)設(shè)備的控制 器;改造操作系統(tǒng)的文件系統(tǒng)。
下面結(jié)合附圖對(duì)本發(fā)明的具體實(shí)施方式
作進(jìn)一步詳細(xì)說明。
參考圖1,圖1為本發(fā)明的數(shù)據(jù)寫入裝置結(jié)構(gòu)示意圖,數(shù)據(jù)寫入裝置向非 易失性存儲(chǔ)介質(zhì)寫入數(shù)據(jù)的過程中,會(huì)涉及到向工作模塊、備份模塊和標(biāo)志模 塊寫入相應(yīng)的數(shù)據(jù)。本發(fā)明的數(shù)據(jù)寫入裝置包括第一寫模塊,寫備份結(jié)束標(biāo) 志設(shè)置模塊,第二寫模塊,激活標(biāo)志設(shè)置模塊。第一寫模塊,用于向備份模塊寫入第一數(shù)據(jù)。
寫備份結(jié)束標(biāo)志設(shè)置模塊,用于寫入第一數(shù)據(jù)結(jié)束后,在標(biāo)志模塊設(shè)置寫 備份結(jié)束標(biāo)志。
第二寫模塊,用于根據(jù)第一數(shù)據(jù),向工作模塊寫入與第一數(shù)據(jù)具有預(yù)設(shè)的
映射關(guān)系的第二凄丈據(jù)。
激活標(biāo)志設(shè)置模塊,用于寫入第二數(shù)據(jù)結(jié)束后,在標(biāo)志模塊設(shè)置激活標(biāo)志。 以上標(biāo)志都存儲(chǔ)在標(biāo)志模塊中,第一數(shù)據(jù)存儲(chǔ)在備份模塊中,第二數(shù)據(jù)存
儲(chǔ)在工作模塊中。
為了進(jìn)一步保證寫入數(shù)據(jù)的準(zhǔn)確性,以及在出現(xiàn)斷電、復(fù)位等異常情況下
也能夠準(zhǔn)確的寫入數(shù)據(jù),本發(fā)明的數(shù)據(jù)寫入裝置還包括
控制數(shù)據(jù)寫入次數(shù)標(biāo)志設(shè)置模塊,控制備份校驗(yàn)次數(shù)標(biāo)志設(shè)置模塊和控制
數(shù)據(jù)寫回次數(shù)標(biāo)志設(shè)置模塊;
控制數(shù)據(jù)寫入次數(shù)標(biāo)志設(shè)置模塊,用于設(shè)置控制數(shù)據(jù)寫入次數(shù)的標(biāo)志; 第一寫模塊在控制數(shù)據(jù)寫入次數(shù)的標(biāo)志有效時(shí),寫入所述第一數(shù)據(jù);
控制備份校驗(yàn)次數(shù)標(biāo)志設(shè)置模塊,用于設(shè)置控制備份校驗(yàn)次數(shù)的標(biāo)志; 寫備份結(jié)束標(biāo)志設(shè)置模塊在控制備份校驗(yàn)次數(shù)的標(biāo)志有效時(shí),設(shè)置寫備份 結(jié)束標(biāo)志;
控制數(shù)據(jù)寫回次數(shù)標(biāo)志設(shè)置模塊,用于設(shè)置控制數(shù)據(jù)寫回次數(shù)的標(biāo)志; 第二寫模塊在控制數(shù)據(jù)寫回次數(shù)的標(biāo)志有效時(shí),寫入所述第二數(shù)據(jù)。
下面對(duì)工作模塊、備份模塊、標(biāo)志模塊和數(shù)據(jù)寫入裝置進(jìn)行詳細(xì)說明。
即將被寫入數(shù)據(jù)的非易失性存儲(chǔ)模塊叫做工作模塊。工作模塊的介質(zhì)是非 易失性存儲(chǔ)介質(zhì),在整個(gè)寫過程完整結(jié)束后,這些存儲(chǔ)著新寫入的數(shù)據(jù)的模塊 集合即為工作模塊。
工作模塊的基地址是一個(gè)查找標(biāo)志, 一旦寫過程結(jié)束,數(shù)據(jù)寫入裝置可以 利用這個(gè)標(biāo)志得到寫入工作模塊的數(shù)據(jù)。
可以對(duì)工作模塊中的數(shù)據(jù)進(jìn)行讀、寫、分析的模塊叫做數(shù)據(jù)寫入裝置,它
可以為CPU、 DSP ( Digital Signal Processor,數(shù)字信號(hào)處理器)等或者由CPU、 DSP構(gòu)成的集合。
為了保護(hù)工作模塊的數(shù)據(jù),需要備份模塊和標(biāo)志模塊。備份模塊和標(biāo)志模塊的介質(zhì)是非易失性存儲(chǔ)介質(zhì),可以只在數(shù)據(jù)寫入裝置將數(shù)據(jù)寫入工作模塊的 過程中出現(xiàn)。寫過程結(jié)束后,備份模塊和標(biāo)志模塊可以消失,并且,消失后不 影響數(shù)據(jù)寫入裝置對(duì)工作模塊的讀寫操作。
備份模塊的基地址也是一個(gè)查找標(biāo)志,在寫過程中,數(shù)據(jù)寫入裝置可以利 用這個(gè)標(biāo)志得到寫入備份模塊的數(shù)據(jù)。
文件名可以作為工作模塊的基地址,也可以用其他標(biāo)志作工作模塊基地 址,為了使例子易懂所以選文件名。
備份模塊的容量可根據(jù)需要進(jìn)行靈活調(diào)整。在數(shù)據(jù)寫入備份模塊后,備份 模塊中的數(shù)據(jù)與最終寫入工作模塊的數(shù)據(jù)有固定的映射關(guān)系,這種映射關(guān)系可 以是兩者完全一致,也可以是某種固定規(guī)則,即根據(jù)規(guī)則可以通過備份模塊中 的數(shù)據(jù)得到工作模塊的數(shù)據(jù)。
為了追蹤整個(gè)寫數(shù)據(jù)的全過程,需要設(shè)置各種標(biāo)志,存放這些標(biāo)志的非易 失性存儲(chǔ)模塊就是標(biāo)志模塊。在標(biāo)志模塊中,存放工作模塊基地址的區(qū)域是當(dāng) 前指針區(qū),存放備份模塊基地址的區(qū)域是升級(jí)指針區(qū)。
工作模塊、備份模塊、標(biāo)志模塊的存儲(chǔ)介質(zhì)可以是相同的也可以是不同的。 備份模塊、標(biāo)志模塊可以動(dòng)態(tài)分配,即備份模塊、標(biāo)志模塊可以在寫數(shù)據(jù)的開 始階段產(chǎn)生,可以在完整的寫過程結(jié)束時(shí)消失,也可以不動(dòng)態(tài)分配,這不影響 本發(fā)明的實(shí)施。
工作模塊、備份模塊、標(biāo)志模塊如何分布是個(gè)關(guān)鍵,先介紹工作空間、備
份空間、標(biāo)志空間這3個(gè)概念。在數(shù)據(jù)直接寫入工作模塊過程中, 一旦發(fā)生 異常,如斷電、復(fù)位等,則數(shù)據(jù)寫入裝置無法讀回工作模塊中的正確數(shù)據(jù),不 但無法從工作模塊讀回?cái)?shù)據(jù),在某種情況下甚至一些工作模塊之外的數(shù)據(jù)也受 影響。比如,在向硬盤寫文件時(shí),如果在更改文件分配表階段出現(xiàn)斷電,那么 不但剛寫入的文件無法讀取,其他文件也不可讀取。本發(fā)明中所說的工作空間 是指在直接寫工作模塊發(fā)生異常時(shí),這個(gè)異常所波及的范圍稱之為工作空間。 在此波及范圍內(nèi)所存儲(chǔ)的數(shù)據(jù)無法被數(shù)據(jù)寫入裝置正確讀寫。
同理,備份空間是在指定好備份模塊后,直接寫備份模塊發(fā)生異常時(shí)所波 及的范圍,在此范圍內(nèi)所存儲(chǔ)的數(shù)據(jù)無法被數(shù)據(jù)寫入裝置正確讀寫。
標(biāo)志空間是在指定好標(biāo)志模塊后,直接寫標(biāo)志模塊發(fā)生異常時(shí)所波及的范圍,在此范圍內(nèi)所存儲(chǔ)的數(shù)據(jù)無法被數(shù)據(jù)寫入裝置正確讀寫。
工作模塊、備份模塊和標(biāo)志模塊滿足下列規(guī)則
1. 工作模塊位于工作空間中。
2. 備份模塊位于備份空間中。
3. 標(biāo)志模塊位于標(biāo)志空間中。
4. 工作空間、備份空間、標(biāo)志空間這三個(gè)空間互相獨(dú)立,不可互相影響。 本發(fā)明將傳統(tǒng)的對(duì)工作模塊的直接寫入過程變成了一次對(duì)備份模塊的寫
過程再加上一次對(duì)工作模塊的寫過程再加上對(duì)標(biāo)志模塊的多次寫過程,所以標(biāo) 志模塊還要滿足一個(gè)特性,即
5. 標(biāo)志的一次寫失敗不損壞其他標(biāo)志,其他標(biāo)志仍然可以被數(shù)據(jù)寫入裝 置正確讀寫。
下面以寫硬盤為例簡(jiǎn)要闡述這個(gè)分布規(guī)則。
向硬盤寫文件test.bin ,會(huì)涉及寫DBR, FAT1, FAT2,文件目錄,數(shù)據(jù) 區(qū),這5個(gè)環(huán)節(jié)所涉及到的所有的被寫的存儲(chǔ)模塊可以被看作一個(gè)集合,這個(gè) 集合就是工作模塊。在以上任意一個(gè)環(huán)節(jié)都會(huì)發(fā)生斷電可能,如果在寫FAT 時(shí)斷電能導(dǎo)致硬盤無法訪問,則硬盤即是工作空間。在這種情況下,如果存放 備份模塊的備份空間或者存放標(biāo)志模塊的標(biāo)志空間分布在硬盤上,則違反了規(guī) 則4:工作空間、備^f分空間、標(biāo)志空間這三個(gè)空間互相獨(dú)立,不可互相影響。
可以根據(jù)文件的大小插上一個(gè)容量合適的USB盤,在寫過程中,USB盤 上被寫過的存儲(chǔ)模塊的集合就是備份模塊,USB就是備份空間,寫硬盤文件 test.bin失敗不會(huì)影響USB盤,備份模塊內(nèi)容仍然可以被正常訪問。然后再根 據(jù)工作模塊和備份模塊的分布,決定標(biāo)志模塊的分布位置,要滿足上面提到的 5項(xiàng)規(guī)則。
除了以上實(shí)施例提到的工作模塊、備份模塊和標(biāo)志模塊的分布方式,還可 以采用將工作模塊設(shè)置在硬盤中,備份模塊設(shè)置在一個(gè)USB盤上,標(biāo)志模塊 設(shè)置在另一個(gè)USB盤上,或者,工作模塊設(shè)置在一個(gè)USB盤上,備份模塊設(shè) 置在另 一個(gè)USB盤上的一存儲(chǔ)區(qū)域,標(biāo)志模塊設(shè)置在另 一個(gè)USB盤上的另一 存儲(chǔ)區(qū)域等其他的分布方式,只要其分布滿足上述5項(xiàng)原則即可。
下面具體說明為了實(shí)現(xiàn)數(shù)據(jù)保護(hù)目的而在數(shù)據(jù)寫入過程中設(shè)置標(biāo)志的方法。
參考圖2,圖2為本發(fā)明的數(shù)據(jù)寫入方法流程圖,包括步驟 數(shù)據(jù)寫入裝置寫入第一數(shù)據(jù);
寫入第 一數(shù)據(jù)結(jié)束后,數(shù)據(jù)寫入裝置設(shè)置寫備份結(jié)束標(biāo)志; 數(shù)據(jù)寫入裝置根據(jù)第一數(shù)據(jù),寫入與第一數(shù)據(jù)具有預(yù)設(shè)的映射^:系的第二 數(shù)據(jù);
寫入第二數(shù)據(jù)結(jié)束后,數(shù)據(jù)寫入裝置設(shè)置激活標(biāo)志。 為了在出現(xiàn)斷電等異常情況時(shí),控制寫入備份模塊的數(shù)據(jù)的失敗的次數(shù), 在寫入第 一數(shù)據(jù)的步驟之前還包括步驟
數(shù)據(jù)寫入裝置設(shè)置控制數(shù)據(jù)寫入次數(shù)的標(biāo)志。
因?yàn)閷懙臅r(shí)候可能斷電,導(dǎo)致寫了很多次,次次斷電。為了控制數(shù)據(jù)寫入 的次數(shù),設(shè)置了 "第N次升級(jí)標(biāo)志"。有了這個(gè)標(biāo)志就可知道已經(jīng)寫過幾次了。
在控制數(shù)據(jù)寫入次數(shù)的標(biāo)志有效時(shí),數(shù)據(jù)寫入裝置寫入第一數(shù)據(jù),本實(shí)施 例中,控制數(shù)據(jù)寫入次數(shù)的標(biāo)志具體為第N次升級(jí)標(biāo)志。具體流程參考圖3 所示。當(dāng)需要向工作模塊寫入新數(shù)據(jù)時(shí)要準(zhǔn)備備份模塊和標(biāo)志模塊,確保它們 是可用的。具體包括步驟
步驟IOI,將工作模塊基地址寫入標(biāo)志模塊的當(dāng)前指針區(qū),確保存入當(dāng)前 指針區(qū)的數(shù)據(jù)是正確值。
步驟102,從標(biāo)志模塊中讀取并判斷"第N次升級(jí)標(biāo)志"是否有效,如果 無效,則在標(biāo)志模塊置N-l,即"第l次升級(jí)標(biāo)志,,,然后執(zhí)行步驟105;如果 有效,則執(zhí)行步驟103;
步驟103,判斷第N次升級(jí)標(biāo)志的N是否小于閾值ml,如果不是,則上4艮 狀態(tài),如果是,則執(zhí)行步驟104。
步驟104,將N-N十l置入標(biāo)志模塊。
步驟105,將第一數(shù)據(jù)寫入備份模塊。
為了保證寫入的數(shù)據(jù)的正確性,可以進(jìn)一步在寫完第 一數(shù)據(jù)的步驟之后, 設(shè)置控制備份校驗(yàn)次數(shù)的標(biāo)志,對(duì)備份模塊中寫入的數(shù)據(jù)進(jìn)行校驗(yàn),本實(shí)施例 中的控制備份校驗(yàn)次數(shù)的標(biāo)志具體為第N次備份校驗(yàn)標(biāo)志。下面進(jìn)一步說明 寫入數(shù)據(jù)之后進(jìn)行校驗(yàn)的具體步驟。
14步驟106,從標(biāo)志模塊中讀取并判斷"第N次備份校驗(yàn)標(biāo)志"是否有效,如 果無效,則在標(biāo)志模塊置N-l,即"第l次備份校驗(yàn)標(biāo)志",然后執(zhí)行步驟109; 如果有效,則執(zhí)行步驟107;
"第N次備份校驗(yàn)標(biāo)志"的作用是控制校驗(yàn)次數(shù)。在校驗(yàn)時(shí)斷電或者校驗(yàn) 不成功時(shí)通過這個(gè)標(biāo)志可以知道已經(jīng)4交-瞼過幾次。
步驟107,判斷第N次備份校驗(yàn)標(biāo)志中的N是否小于閾值m2,如果不是,則 上報(bào)狀態(tài),如果是,則執(zhí)行步驟108。
步驟108,將N-N十l置入標(biāo)志模塊。
步驟109,校驗(yàn)備份模塊的第一數(shù)據(jù)內(nèi)容,并判斷內(nèi)容是否無誤,如果有 誤,則上才艮狀態(tài);如果內(nèi)容無誤,則執(zhí)行步驟110;
步驟IIO,在標(biāo)志模塊中置"寫備份結(jié)束標(biāo)志"。根據(jù)該標(biāo)志,就可以訪問 寫入備份模塊的數(shù)據(jù)。
上述過程還沒發(fā)生過對(duì)工作模塊的寫操作,新寫入的數(shù)據(jù)存放在備份模塊 中。這時(shí)數(shù)據(jù)寫入裝置已經(jīng)可以采用新寫入的數(shù)據(jù)了。但如果新數(shù)據(jù)保留在備 份模塊中則會(huì)加大數(shù)據(jù)管理的復(fù)雜程度,尤其在多次發(fā)生寫入數(shù)據(jù)之后,數(shù)據(jù) 管理 會(huì)越來越復(fù)雜。為了使數(shù)據(jù)管理更容易,必須繼續(xù)下面操作,將新寫入備 份模塊的數(shù)據(jù)按預(yù)定的映射規(guī)則再寫入工作模塊。
在向工作模塊寫入第二數(shù)據(jù)的步驟之前,為了在出現(xiàn)斷電等異常情況時(shí), 控制寫回工作模塊的數(shù)據(jù)的失敗的次數(shù),在寫入第二數(shù)據(jù)的步驟之前還包括步 驟
數(shù)據(jù)寫入裝置設(shè)置控制數(shù)據(jù)寫回次數(shù)的標(biāo)志;
在控制數(shù)據(jù)寫回次數(shù)的標(biāo)志有效時(shí),數(shù)據(jù)寫入裝置寫入第二數(shù)據(jù)。本實(shí)施 例中,控制數(shù)據(jù)寫回次數(shù)的標(biāo)志具體為第N次數(shù)據(jù)寫回標(biāo)志。具體流程參 考圖4所示,包括以下步驟
步驟113,從標(biāo)志模塊中讀取并判斷"第N次數(shù)據(jù)寫回標(biāo)志"是否有效,如
果該標(biāo)志無效,則在標(biāo)志模塊置N4,即,"第l次數(shù)據(jù)寫回標(biāo)志",然后執(zhí)行
步驟116;如果該標(biāo)志有效則執(zhí)行步驟114;
"第N次數(shù)據(jù)寫回標(biāo)志"的作用是控制寫工作模塊的次數(shù),以便對(duì)寫入工 作模塊的數(shù)據(jù)進(jìn)行合理的控制。步驟114,判斷第N次數(shù)據(jù)寫回標(biāo)志中的N是否小于閾值m3,如果不是,則 上報(bào)狀態(tài),如果是,則執(zhí)行步驟115; 步驟115,將N-N十l置入標(biāo)志模塊。 步驟116,將備份模塊的數(shù)據(jù)映射寫回到工作模塊。
步驟117,在標(biāo)志模塊置"工作模塊激活"標(biāo)志。根據(jù)該標(biāo)志,就可以訪 問寫回工作模塊的數(shù)據(jù)。
在步驟116的將備份模塊的數(shù)據(jù)寫回到工作模塊后,為了保證寫入的正確 性,可以進(jìn)一步執(zhí)行步驟1161,進(jìn)行數(shù)據(jù)的校驗(yàn),校驗(yàn)無誤后,新寫入的數(shù)據(jù) 已正確地寫入工作模塊,執(zhí)行步驟117。
在步驟117之后還可以執(zhí)行步驟118,將備份模塊和標(biāo)志模塊廢棄。到此, 完整的寫過程結(jié)束。
如果有新的數(shù)據(jù)寫入工作模塊,可以重新分配備份模塊和標(biāo)志模塊,然后 按照上述方法進(jìn)行數(shù)據(jù)的寫入。
下面以一個(gè)實(shí)施方式來具體的說明在寫入數(shù)據(jù)的過程中如何設(shè)置標(biāo)志。
若要將文件test.bin寫到硬盤,可以先掛接一個(gè)USB盤,把test.bin做成壓縮 文件test.zip存到USB盤中,向1^8盤上寫入文件的過程#4居上文所述的步驟 101 110執(zhí)行。寫入U(xiǎn)SB盤的數(shù)據(jù)驗(yàn)證無誤后CPU如果想訪問硬盤的test.bin則 可從USB盤上得到正確數(shù)據(jù),在CPU不忙的時(shí)候再將USB盤上的test.zip展開, 寫入硬盤中,寫入硬盤的過程根據(jù)上文所述的步驟113 117執(zhí)行。這時(shí)CPU如 果想訪問硬盤的test.bin就可以直接從硬盤上訪問。整個(gè)過程通過各種標(biāo)志來記 錄跟蹤,標(biāo)志可以放在插在計(jì)算機(jī)上的另外一個(gè)USB盤中。這里的存儲(chǔ)空間是 指在直接寫存儲(chǔ)區(qū)域發(fā)生異常時(shí),這個(gè)異常所波及的范圍。在test.bin正確地存 到硬盤上之后,存儲(chǔ)標(biāo)志的的USB盤和存儲(chǔ)test.zip的USB盤都可以被拔除。。
工作模塊和備份模塊所存的文件不相同,是為了表明兩者之間是映射關(guān) 系。其實(shí)兩者一致也是可以的。
以上所提到的標(biāo)志有如下特點(diǎn)
1、 標(biāo)志根據(jù)時(shí)間先后按順序產(chǎn)生,它們?cè)跁r(shí)間上對(duì)應(yīng)寫過程的不同環(huán)節(jié)。
2、 彼此獨(dú)立地存放在標(biāo)志模塊中。
3、 標(biāo)志如果損壞,每次只會(huì)損壞一個(gè)??傊?,如果寫標(biāo)志模塊時(shí)出現(xiàn)異常,如斷電、復(fù)位或?qū)懙臄?shù)據(jù)不對(duì),則一 定會(huì)在標(biāo)志上反映出來,也就是說,出現(xiàn)異常的情況下得到的標(biāo)志與預(yù)先確定 的標(biāo)志不相符,則表明該標(biāo)志所對(duì)應(yīng)的操作環(huán)節(jié)出現(xiàn)異常,只要將這個(gè)操作環(huán) 節(jié)重新執(zhí)行一遍,則損壞的標(biāo)志即可被恢復(fù)。
如果異常出現(xiàn)在寫備份模塊階段,則可以確定此時(shí)還沒有發(fā)生針對(duì)工作模 塊的寫操作,所以工作模塊所存儲(chǔ)的老數(shù)據(jù)仍是可用的。
如果異常出現(xiàn)在寫工作模塊階段,則可以確定新數(shù)據(jù)已保存在備份模塊 中,數(shù)據(jù)寫入裝置可以從備份模塊中取用新數(shù)據(jù)。
由此可見,無論寫異常出現(xiàn)在寫標(biāo)志模塊環(huán)節(jié)還是寫備份模塊環(huán)節(jié)還是寫 工作模塊環(huán)節(jié),數(shù)據(jù)寫入裝置總能得到可用數(shù)據(jù)。
以上所述僅是本發(fā)明的優(yōu)選實(shí)施方式,應(yīng)當(dāng)指出,對(duì)于本技術(shù)領(lǐng)域的普通 技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以作出若干改進(jìn)和潤(rùn)飾, 這些改進(jìn)和潤(rùn)飾也應(yīng)視為本發(fā)明的保護(hù)范圍。
權(quán)利要求
1.一種將數(shù)據(jù)寫入非易失性存儲(chǔ)介質(zhì)的方法,其特征在于,包括步驟數(shù)據(jù)寫入裝置寫入第一數(shù)據(jù);寫入所述第一數(shù)據(jù)結(jié)束后,所述數(shù)據(jù)寫入裝置設(shè)置寫備份結(jié)束標(biāo)志,以使所述第一數(shù)據(jù)能夠被訪問;所述數(shù)據(jù)寫入裝置根據(jù)所述第一數(shù)據(jù),寫入與所述第一數(shù)據(jù)具有預(yù)設(shè)的映射關(guān)系的第二數(shù)據(jù);寫入第二數(shù)據(jù)結(jié)束后,所述數(shù)據(jù)寫入裝置設(shè)置激活標(biāo)志,以使所述第二數(shù)據(jù)能夠被訪問。
2. 如權(quán)利要求1所述的方法,其特征在于,所述lt據(jù)寫入裝置寫入第一 數(shù)據(jù)的步驟之前還包括步驟數(shù)據(jù)寫入裝置設(shè)置控制數(shù)據(jù)寫入次數(shù)的標(biāo)志;所迷數(shù)據(jù)寫入裝置在所述控制數(shù)據(jù)寫入次數(shù)的標(biāo)志有效時(shí),寫入所述第一 數(shù)據(jù)。
3. 如權(quán)利要求2所述的方法,其特征在于,所述數(shù)據(jù)寫入裝置設(shè)置控制 數(shù)據(jù)寫入次數(shù)的標(biāo)志的步驟具體包括所述控 制數(shù)據(jù)寫入次數(shù)的標(biāo)志具體為第N次升級(jí)標(biāo)志; 所述數(shù)據(jù)寫入裝置判斷第N次升級(jí)標(biāo)志是否有效,如杲無效,則設(shè)置N =1,然后執(zhí)行寫入所述第一數(shù)據(jù)的步驟;如果有效,則判斷N是否小于第一 閾值,如果不是,則上報(bào)狀態(tài),如果是,則設(shè)置N-N+1,然后執(zhí)行寫入所 述第一數(shù)據(jù)的步驟。
4. 如權(quán)利要求1所述的方法,其特征在于,所述寫入第一數(shù)據(jù)的步驟和 所述設(shè)置寫備份結(jié)束標(biāo)志的步驟之間還包括步驟所述數(shù)據(jù)寫入裝置設(shè)置控制備份校驗(yàn)次數(shù)的標(biāo)志;所述數(shù)據(jù)寫入裝置在所述控制備份校驗(yàn)次數(shù)的標(biāo)志有效時(shí),設(shè)置寫備份結(jié)束標(biāo)志。
5. 如權(quán)利要求4所述的方法,其特征在于,所述數(shù)據(jù)寫入裝置設(shè)置控制 備份校驗(yàn)次數(shù)的標(biāo)志的步驟具體為所述控制備份校驗(yàn)次數(shù)的標(biāo)志具體為第N次備份校驗(yàn)標(biāo)志; 所述數(shù)據(jù)寫入裝置判斷第N次備份校驗(yàn)標(biāo)志是否有效,如果無效,則設(shè) 置N-1,然后校驗(yàn)所述第一數(shù)據(jù);如果有效,則判斷N是否小于第二閾值, 如果不是,則上報(bào)狀態(tài),如果是,則設(shè)置N-N+1,然后校驗(yàn)所述第一數(shù)據(jù); 如果校驗(yàn)無誤,則設(shè)置寫備份結(jié)束標(biāo)志,如果校驗(yàn)有誤,則上報(bào)狀態(tài)。
6. 如權(quán)利要求1所述的方法,其特征在于,所述寫入第二數(shù)據(jù)的步驟之 前還包括步驟數(shù)據(jù)寫入裝置設(shè)置控制數(shù)據(jù)寫回次數(shù)的標(biāo)志;所述數(shù)據(jù)寫入裝置在所述控制數(shù)據(jù)寫回次數(shù)的標(biāo)志有效時(shí),寫入所述第二 數(shù)據(jù)。
7. 如權(quán)利要求6所述的方法,其特征在于,所述設(shè)置控制數(shù)據(jù)寫回次數(shù) 的標(biāo)志的步驟具體為所述控制數(shù)據(jù)寫回次數(shù)的標(biāo)志具體為第N次數(shù)據(jù)寫回標(biāo)志; 所述數(shù)據(jù)寫入裝置判斷第N次數(shù)據(jù)寫回標(biāo)志是否有效,如果無效,則設(shè) 置N-l,然后執(zhí)行寫入所述第二數(shù)據(jù)的步驟;如果有效,則判斷N是否小于 第三閾值,如果不是,則上報(bào)狀態(tài),如果是,則設(shè)置N二N+1,然后執(zhí)行寫 入所述第二數(shù)據(jù)的步驟。
8. 如權(quán)利要求1所述的方法,其特征在于,所述寫入第二數(shù)據(jù)的步驟之 后還包括步驟判斷所述第二數(shù)據(jù)是否正確,如果不正確,則上"^艮狀態(tài),如果正確,則設(shè) 置所述激活標(biāo)志。
9. 一種數(shù)據(jù)寫入裝置,其特征在于,包括 第一寫模塊,用于向備份模塊寫入第一數(shù)據(jù);寫備份結(jié)束標(biāo)志設(shè)置模塊,用于寫入所述第一數(shù)據(jù)結(jié)束后,在標(biāo)志模塊設(shè) 置寫備份結(jié)束標(biāo)志,以使所述第一數(shù)據(jù)能夠被訪問;第二寫模塊,用于根據(jù)所述第一數(shù)據(jù),向工作模塊寫入與所述第一數(shù)據(jù)具 有預(yù)設(shè)的映射關(guān)系的第二數(shù)據(jù);激活標(biāo)志設(shè)置模塊,用于寫入所述第二數(shù)據(jù)結(jié)束后,在所述標(biāo)志模塊設(shè)置 激活標(biāo)志,以使所述第二數(shù)據(jù)能夠被訪問;所述工作模塊的基地址位于所述標(biāo)志模塊;所述備份模塊位于備份空間;所述工作模塊位于工作空間;所述標(biāo)志模塊 位于標(biāo)志空間;所述備份空間、工作空間和標(biāo)志空間之間相互獨(dú)立。
10. 如權(quán)利要求9所述的數(shù)據(jù)寫入裝置,其特征在于,所述工作模塊的基 地址為查找標(biāo)志,位于所述標(biāo)志模塊的當(dāng)前指針區(qū),所述第二數(shù)據(jù)寫入所述工 作模塊后,所述數(shù)據(jù)寫入裝置利用所述工作模塊的基地址能夠找到所述第二數(shù)據(jù)。
11. 如權(quán)利要求9所述的數(shù)據(jù)寫入裝置,其特征在于,所述數(shù)據(jù)寫入裝置 還包括控制數(shù)據(jù)寫入次數(shù)標(biāo)志設(shè)置模塊,控制備份校驗(yàn)次數(shù)標(biāo)志設(shè)置模塊和 控制數(shù)據(jù)寫回次數(shù)標(biāo)志設(shè)置模塊;所述控制數(shù)據(jù)寫入次數(shù)標(biāo)志設(shè)置模塊,用于設(shè)置控制數(shù)據(jù)寫入次數(shù)的標(biāo)志',所述第一寫模塊在所述控制數(shù)據(jù)寫入次數(shù)的標(biāo)志有效時(shí),寫入所述第一數(shù)據(jù);所述控制備份校驗(yàn)次數(shù)標(biāo)志設(shè)置模塊,用于在寫入所述第一數(shù)據(jù)后,設(shè)置 控制備份校驗(yàn)次數(shù)的標(biāo)志;所述寫備份結(jié)束標(biāo)志設(shè)置模塊在所述控制備份校驗(yàn)次數(shù)的標(biāo)志有效時(shí),設(shè) 置寫備份結(jié)束標(biāo)志;所述控制數(shù)據(jù)寫回次數(shù)標(biāo)志設(shè)置模塊,用于設(shè)置控制數(shù)據(jù)寫回次數(shù)的標(biāo)志5所述第二寫模塊在所述控制數(shù)據(jù)寫回次數(shù)的標(biāo)志有效時(shí),寫入所述第二數(shù)據(jù)。
12. —種計(jì)算機(jī),其特征在于,包括 第一寫模塊,用于向備份模塊寫入第一數(shù)據(jù);寫備份結(jié)束標(biāo)志設(shè)置模塊,用于寫入所述第一數(shù)據(jù)結(jié)束后,在標(biāo)志模塊設(shè) 置寫備份結(jié)束標(biāo)志,以使所述第一數(shù)據(jù)能夠被訪問;第二寫模塊,用于根據(jù)所述第一數(shù)據(jù),向工作模塊寫入與所述第一數(shù)據(jù)具 有預(yù)設(shè)的映射關(guān)系的第二數(shù)據(jù);激活標(biāo)志設(shè)置模塊,用于寫入所述第二數(shù)據(jù)結(jié)束后,在所述標(biāo)志模塊設(shè)置激活標(biāo)志,以使所述第二數(shù)據(jù)能夠被訪問; 所述工作模塊的基地址位于所述標(biāo)志模塊;所述備份模塊位于備份空間;所述工作模塊位于工作空間;所述標(biāo)志模塊 位于標(biāo)志空間;所述備^f分空間、工作空間和標(biāo)志空間之間相互獨(dú)立。
13. 如權(quán)利要求12所述的計(jì)算機(jī),其特征在于,所述工作模塊的基地址 為查找標(biāo)志,位于所述標(biāo)志模塊的當(dāng)前指針區(qū),所述第二數(shù)據(jù)寫入所述工作模 塊后,所述數(shù)據(jù)寫入裝置利用所述工作模塊的基地址能夠找到所述第二數(shù)據(jù)。
14. 如權(quán)利要求12所述的計(jì)算機(jī),其特征在于,所述數(shù)據(jù)寫入裝置還包 括控制數(shù)據(jù)寫入次數(shù)標(biāo)志設(shè)置模塊,控制備份校驗(yàn)次數(shù)標(biāo)志設(shè)置模塊和控制 數(shù)據(jù)寫回次數(shù)標(biāo)志設(shè)置模塊;所述控制數(shù)據(jù)寫入次數(shù)標(biāo)志設(shè)置模塊,用于設(shè)置控制數(shù)據(jù)寫入次數(shù)的標(biāo)志5所述第一寫模塊在所述控制數(shù)據(jù)寫入次數(shù)的標(biāo)志有效時(shí),寫入所述第一數(shù)據(jù);所述控制備份校驗(yàn)次數(shù)標(biāo)志設(shè)置模塊,用于設(shè)置控制備份校驗(yàn)次數(shù)的標(biāo)志5所述寫備份結(jié)束標(biāo)志設(shè)置模塊在所述控制備份校驗(yàn)次數(shù)的標(biāo)志有效時(shí),設(shè) 置寫備份結(jié)束標(biāo)志;所述控制數(shù)據(jù)寫回次數(shù)標(biāo)志設(shè)置模塊,用于設(shè)置控制數(shù)據(jù)寫回次數(shù)的標(biāo)志;所述第二寫模塊在所述控制數(shù)據(jù)寫回次數(shù)的標(biāo)志有效時(shí),寫入所述第二數(shù)據(jù)。
全文摘要
本發(fā)明提供了一種將數(shù)據(jù)寫入非易失性存儲(chǔ)介質(zhì)的方法、裝置及計(jì)算機(jī),其中的方法包括步驟數(shù)據(jù)寫入裝置寫入第一數(shù)據(jù);數(shù)據(jù)寫入裝置設(shè)置寫備份結(jié)束標(biāo)志;數(shù)據(jù)寫入裝置根據(jù)所述第一數(shù)據(jù),寫入與第一數(shù)據(jù)具有預(yù)設(shè)的映射關(guān)系的第二數(shù)據(jù);數(shù)據(jù)寫入裝置設(shè)置激活標(biāo)志。本發(fā)明在寫數(shù)據(jù)的全過程設(shè)置各種標(biāo)志,通過判斷這些標(biāo)志即可知道寫入的數(shù)據(jù)是否正常,確保新寫入的數(shù)據(jù)只有在正確地寫入之后才能被訪問。如果寫入的數(shù)據(jù)發(fā)生錯(cuò)誤或者寫入過程被打斷,則可以利用標(biāo)志判斷出是寫過程的哪個(gè)環(huán)節(jié)出現(xiàn)了錯(cuò)誤,從而進(jìn)行錯(cuò)誤的修復(fù)或者從正確的位置來訪問數(shù)據(jù),確保被訪問的數(shù)據(jù)仍然是可用的新數(shù)據(jù)或者是可用的老數(shù)據(jù),不會(huì)出現(xiàn)數(shù)據(jù)不可用這種情況。
文檔編號(hào)G06F12/00GK101593153SQ20091008667
公開日2009年12月2日 申請(qǐng)日期2009年6月17日 優(yōu)先權(quán)日2009年6月17日
發(fā)明者李曉新 申請(qǐng)人:中興通訊股份有限公司