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

數(shù)據(jù)寫(xiě)入方法及裝置與流程

文檔序號(hào):11828680閱讀:426來(lái)源:國(guó)知局
數(shù)據(jù)寫(xiě)入方法及裝置與流程

本發(fā)明實(shí)施例屬于通信領(lǐng)域,尤其涉及一種數(shù)據(jù)寫(xiě)入方法及裝置。



背景技術(shù):

用戶的日常生活中,可能需要各種存儲(chǔ)設(shè)備存儲(chǔ)額外的數(shù)據(jù),比如,通過(guò)智能卡或USBKey存儲(chǔ)數(shù)據(jù)。但市面上的智能卡或者USBKey在存入數(shù)據(jù)時(shí),是直接將數(shù)據(jù)存入智能卡或者USBKey的存儲(chǔ)單元的目標(biāo)區(qū)域。而若將數(shù)據(jù)存入智能卡或者USBKey的存儲(chǔ)單元的目標(biāo)區(qū)域的過(guò)程中發(fā)生斷電,則可能導(dǎo)致存儲(chǔ)單元的目標(biāo)區(qū)域產(chǎn)生異常的結(jié)果,比如數(shù)據(jù)亂套,甚至?xí)驗(yàn)閮?nèi)部數(shù)據(jù)結(jié)構(gòu)的錯(cuò)亂而導(dǎo)致智能卡或USBKey報(bào)廢。



技術(shù)實(shí)現(xiàn)要素:

本發(fā)明實(shí)施例提供了一種數(shù)據(jù)寫(xiě)入方法及裝置,旨在解決現(xiàn)有的數(shù)據(jù)寫(xiě)入方法在發(fā)生斷電時(shí)可能導(dǎo)致目標(biāo)區(qū)域產(chǎn)生異常的結(jié)果,甚至?xí)驗(yàn)閮?nèi)部數(shù)據(jù)結(jié)構(gòu)的錯(cuò)亂而導(dǎo)致智能卡或USBKey報(bào)廢的問(wèn)題。

本發(fā)明實(shí)施例是這樣實(shí)現(xiàn)的,一種數(shù)據(jù)寫(xiě)入方法,所述方法包括:

在存儲(chǔ)設(shè)備上電時(shí),判斷備份完成標(biāo)記是否已置位;

在備份完成標(biāo)記已置位時(shí),將所述存儲(chǔ)設(shè)備的備份區(qū)的數(shù)據(jù)寫(xiě)入所述存儲(chǔ)設(shè)備的目標(biāo)區(qū);

在備份完成標(biāo)記未置位且接收到數(shù)據(jù)寫(xiě)入請(qǐng)求時(shí),讀取所述存儲(chǔ)設(shè)備的目標(biāo)區(qū)的數(shù)據(jù),并將讀取的所述存儲(chǔ)設(shè)備的目標(biāo)區(qū)的數(shù)據(jù)與待寫(xiě)入數(shù)據(jù)比較;

根據(jù)比較結(jié)果選擇是否將待寫(xiě)入數(shù)據(jù)寫(xiě)入所述存儲(chǔ)設(shè)備。

本發(fā)明實(shí)施例的另一目的在于提供一種數(shù)據(jù)寫(xiě)入裝置,所述裝置包括:

備份完成標(biāo)記狀態(tài)判斷單元,用于在存儲(chǔ)設(shè)備上電時(shí),判斷備份完成標(biāo)記是否已置位;

目標(biāo)區(qū)數(shù)據(jù)寫(xiě)入單元,用于在備份完成標(biāo)記已置位時(shí),將所述存儲(chǔ)設(shè)備的備份區(qū)的數(shù)據(jù)寫(xiě)入所述存儲(chǔ)設(shè)備的目標(biāo)區(qū);

待寫(xiě)入數(shù)據(jù)比較單元,用于在備份完成標(biāo)記未置位且接收到數(shù)據(jù)寫(xiě)入請(qǐng)求時(shí),讀取所述存儲(chǔ)設(shè)備的目標(biāo)區(qū)的數(shù)據(jù),并將讀取的所述存儲(chǔ)設(shè)備的目標(biāo)區(qū)的數(shù)據(jù)與待寫(xiě)入數(shù)據(jù)比較;

數(shù)據(jù)寫(xiě)入選擇單元,用于根據(jù)比較結(jié)果選擇是否將待寫(xiě)入數(shù)據(jù)寫(xiě)入所述存儲(chǔ)設(shè)備。

在本發(fā)明實(shí)施例中,由于在存儲(chǔ)設(shè)備上電后,根據(jù)備份完成標(biāo)記以及目標(biāo)區(qū)的數(shù)據(jù)與待寫(xiě)入數(shù)據(jù)的比較結(jié)果選擇是否將待寫(xiě)入數(shù)據(jù)寫(xiě)入存儲(chǔ)設(shè)備,因此,避免在目標(biāo)區(qū)重復(fù)寫(xiě)入待寫(xiě)入數(shù)據(jù),從而保證目標(biāo)區(qū)的數(shù)據(jù)的完整性以及準(zhǔn)確性。

附圖說(shuō)明

圖1是本發(fā)明第一實(shí)施例提供的一種數(shù)據(jù)寫(xiě)入方法的流程圖;

圖2是本發(fā)明第一實(shí)施例提供的目標(biāo)區(qū)與備份區(qū)的通訊示意圖;

圖3是本發(fā)明第一實(shí)施例提供的PC終端與智能卡的通訊示意圖;

圖4是本發(fā)明第一實(shí)施例提供的移動(dòng)終端與藍(lán)牙盾或卡盾的通訊示意圖;

圖5是本發(fā)明第一實(shí)施例提供的PC終端與USBKey的通訊示意圖;

圖6是本發(fā)明第二實(shí)施例提供的一種數(shù)據(jù)寫(xiě)入裝置的結(jié)構(gòu)圖。

具體實(shí)施方式

為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。

本發(fā)明實(shí)施例中,在存儲(chǔ)設(shè)備上電時(shí),判斷備份完成標(biāo)記是否已置位,在備份完成標(biāo)記已置位時(shí),將所述存儲(chǔ)設(shè)備的備份區(qū)的數(shù)據(jù)寫(xiě)入所述存儲(chǔ)設(shè)備的目標(biāo)區(qū),在備份完成標(biāo)記未置位且接收到數(shù)據(jù)寫(xiě)入請(qǐng)求時(shí),讀取所述存儲(chǔ)設(shè)備的目標(biāo)區(qū)的數(shù)據(jù),并將讀取的所述存儲(chǔ)設(shè)備的目標(biāo)區(qū)的數(shù)據(jù)與待寫(xiě)入數(shù)據(jù)比較,根據(jù)比較結(jié)果選擇是否將待寫(xiě)入數(shù)據(jù)寫(xiě)入所述存儲(chǔ)設(shè)備。

為了說(shuō)明本發(fā)明所述的技術(shù)方案,下面通過(guò)具體實(shí)施例來(lái)進(jìn)行說(shuō)明。

實(shí)施例一:

圖1示出了本發(fā)明第一實(shí)施例提供的一種數(shù)據(jù)寫(xiě)入方法的流程圖,詳述如下:

步驟S11,在存儲(chǔ)設(shè)備上電時(shí),判斷備份完成標(biāo)記是否已置位。

如圖2所示,備份完成標(biāo)記可以存儲(chǔ)在備份區(qū)的備份信息記錄表中。該備份信息記錄表的內(nèi)容除了包括備份完成標(biāo)記,還可以包括目標(biāo)區(qū)的數(shù)據(jù)塊地址以及數(shù)據(jù)大小、校驗(yàn)位等,其中校驗(yàn)位是用于校驗(yàn)備份完成標(biāo)記、數(shù)據(jù)塊地址以及數(shù)據(jù)大小的完整性。

存儲(chǔ)設(shè)備包括:接觸式或非接觸式智能卡、藍(lán)牙智能卡或藍(lán)牙盾、USBKey等。在本發(fā)明實(shí)施例中,存儲(chǔ)設(shè)備包括備份區(qū)和目標(biāo)區(qū)。

在存儲(chǔ)設(shè)備上電(如存儲(chǔ)設(shè)備與移動(dòng)終端或PC終端通訊)時(shí),當(dāng)數(shù)據(jù)需要從移動(dòng)終端或PC終端傳輸?shù)酱鎯?chǔ)設(shè)備時(shí),為了保證寫(xiě)入目標(biāo)區(qū)的數(shù)據(jù)的完整性,存儲(chǔ)設(shè)備需要判斷上電前是否有數(shù)據(jù)寫(xiě)入異常(其中,寫(xiě)入異常包括斷電導(dǎo)致的寫(xiě)入異常,系統(tǒng)突然崩潰導(dǎo)致的寫(xiě)入異常等)進(jìn)行判斷,具體地,判斷備份完成標(biāo)記是否已置位,例如,當(dāng)備份完成標(biāo)識(shí)為1時(shí),表示備份完成標(biāo)記已置位,當(dāng)備份完成標(biāo)識(shí)為0時(shí),表示備份完成標(biāo)記未置位。如圖3所示,提供了PC終端與智能卡的通訊示意圖,讀卡器與卡片(即智能卡)之間用7816智能卡協(xié)議進(jìn)行通訊。圖4提供了移動(dòng)終端與藍(lán)牙盾或卡盾的通訊示意圖。圖5提供了PC終端與USBKey的通訊示意圖。

步驟S12,在備份完成標(biāo)記已置位時(shí),將所述存儲(chǔ)設(shè)備的備份區(qū)的數(shù)據(jù)寫(xiě)入所述存儲(chǔ)設(shè)備的目標(biāo)區(qū)。

當(dāng)備份完成標(biāo)記已置位時(shí),表明數(shù)據(jù)已完全寫(xiě)入存儲(chǔ)設(shè)備的備份區(qū),此時(shí),即使在將備份區(qū)的數(shù)據(jù)寫(xiě)入目標(biāo)區(qū)時(shí),發(fā)生斷電等異常行為,也能在再次上電后,再次從備份區(qū)讀取數(shù)據(jù)寫(xiě)入目標(biāo)區(qū),從而保證目標(biāo)區(qū)的數(shù)據(jù)的完整性。

其中,所述步驟S12包括:

A1、在備份完成標(biāo)記已置位時(shí),判斷所述存儲(chǔ)設(shè)備的目標(biāo)區(qū)是否存在與所述存儲(chǔ)設(shè)備的備份區(qū)的數(shù)據(jù)相同的數(shù)據(jù)。

A2、在所述存儲(chǔ)設(shè)備的目標(biāo)區(qū)沒(méi)有存在與所述存儲(chǔ)設(shè)備的備份區(qū)的數(shù)據(jù)相同的數(shù)據(jù)時(shí),將所述存儲(chǔ)設(shè)備的備份區(qū)的數(shù)據(jù)寫(xiě)入所述存儲(chǔ)設(shè)備的目標(biāo)區(qū)。

上述A1~A2中,當(dāng)目標(biāo)區(qū)沒(méi)有存在與備份區(qū)相同的數(shù)據(jù)時(shí),表明目標(biāo)區(qū)還沒(méi)有存儲(chǔ)備份區(qū)存儲(chǔ)的數(shù)據(jù),此時(shí),再將備份區(qū)的數(shù)據(jù)寫(xiě)入目標(biāo)區(qū),保證了目標(biāo)區(qū)的數(shù)據(jù)的完整性。當(dāng)然,在目標(biāo)區(qū)存在與備份區(qū)相同的數(shù)據(jù)時(shí),不再將備份區(qū)的數(shù)據(jù)寫(xiě)入目標(biāo)區(qū),由于減少了存儲(chǔ)設(shè)備的一次寫(xiě)入操作,因此有利于提高存儲(chǔ)設(shè)備的使用壽命。

需要指出的是,在將所述存儲(chǔ)設(shè)備的備份區(qū)的數(shù)據(jù)寫(xiě)入所述存儲(chǔ)設(shè)備的目標(biāo)區(qū)時(shí),可以直接將存儲(chǔ)設(shè)備的備份區(qū)的數(shù)據(jù)寫(xiě)入存儲(chǔ)設(shè)備的目標(biāo)區(qū),也可以如上述A1和A2中,先判斷所述存儲(chǔ)設(shè)備的目標(biāo)區(qū)是否存在與所述存儲(chǔ)設(shè)備的備份區(qū)的數(shù)據(jù)相同的數(shù)據(jù),再根據(jù)判斷結(jié)果選擇是否將所述存儲(chǔ)設(shè)備的備份區(qū)的數(shù)據(jù)寫(xiě)入所述存儲(chǔ)設(shè)備的目標(biāo)區(qū)。

可選地,在所述A2或在直接將存儲(chǔ)設(shè)備的備份區(qū)的數(shù)據(jù)寫(xiě)入存儲(chǔ)設(shè)備的目標(biāo)區(qū)之后包括:

將備份完成標(biāo)記從已置位狀態(tài)更新為未置位狀態(tài)。進(jìn)一步地,在所述將備份完成標(biāo)記從已置位狀態(tài)更新為未置位狀態(tài)之后,包括:

刪除所述存儲(chǔ)設(shè)備的備份區(qū)的數(shù)據(jù)。當(dāng)已將備份區(qū)的數(shù)據(jù)寫(xiě)入目標(biāo)區(qū)之后,為了節(jié)省備份區(qū)的存儲(chǔ)空間,便于下一次數(shù)據(jù)更新和備份,需要?jiǎng)h除已寫(xiě)入存儲(chǔ)設(shè)備的備份區(qū)的數(shù)據(jù)。

上述步驟中,由于先將備份完成標(biāo)記從已置位狀態(tài)更新為未置位狀態(tài),再刪除備份區(qū)的數(shù)據(jù),而不是先刪除備份區(qū)的數(shù)據(jù)再將備份完成標(biāo)記從已置位狀態(tài)更新為未置位狀態(tài),因此,能夠避免出現(xiàn)刪除備份區(qū)的數(shù)據(jù)后但還沒(méi)將備份完成標(biāo)記從已置位狀態(tài)更新為未置位狀態(tài)時(shí)出現(xiàn)斷電,在下次上電時(shí)不能將備份區(qū)的數(shù)據(jù)寫(xiě)入目標(biāo)區(qū)的情況,從而進(jìn)一步保證目標(biāo)區(qū)的數(shù)據(jù)的完整性。

步驟S13,在備份完成標(biāo)記未置位且接收到數(shù)據(jù)寫(xiě)入請(qǐng)求時(shí),讀取所述存儲(chǔ)設(shè)備的目標(biāo)區(qū)的數(shù)據(jù),并將讀取的所述存儲(chǔ)設(shè)備的目標(biāo)區(qū)的數(shù)據(jù)與待寫(xiě)入數(shù)據(jù)比較。

這里的待寫(xiě)入數(shù)據(jù)是指將要寫(xiě)入存儲(chǔ)設(shè)備的數(shù)據(jù),當(dāng)存儲(chǔ)設(shè)備接收到數(shù)據(jù)寫(xiě)入請(qǐng)求時(shí),可從數(shù)據(jù)寫(xiě)入請(qǐng)求獲取待寫(xiě)入數(shù)據(jù)。

具體地,逐個(gè)將讀取的存儲(chǔ)設(shè)備的目標(biāo)區(qū)的數(shù)據(jù)與待寫(xiě)入數(shù)據(jù)比較,當(dāng)然,為了提高數(shù)據(jù)比較速度,可在比較一個(gè)字符后,再在目標(biāo)區(qū)和待寫(xiě)入數(shù)據(jù)中抽取相同間隔的字符進(jìn)行比較。

步驟S14,根據(jù)比較結(jié)果選擇是否將待寫(xiě)入數(shù)據(jù)寫(xiě)入所述存儲(chǔ)設(shè)備。

可選地,所述步驟S14具體包括:

B1、在讀取的所述存儲(chǔ)設(shè)備的目標(biāo)區(qū)的數(shù)據(jù)與待寫(xiě)入數(shù)據(jù)相同時(shí),拒絕所述數(shù)據(jù)寫(xiě)入請(qǐng)求。具體地,當(dāng)拒絕數(shù)據(jù)寫(xiě)入請(qǐng)求時(shí),拒絕將待寫(xiě)入數(shù)據(jù)寫(xiě)入存儲(chǔ)設(shè)備的目標(biāo)區(qū)。

B2、在讀取的所述存儲(chǔ)設(shè)備的目標(biāo)區(qū)的數(shù)據(jù)與待寫(xiě)入數(shù)據(jù)不同時(shí),將所述待寫(xiě)入數(shù)據(jù)寫(xiě)入所述存儲(chǔ)設(shè)備的備份區(qū),并在寫(xiě)入結(jié)束后將備份完成標(biāo)記更新為已置位狀態(tài)。

B3、將所述存儲(chǔ)設(shè)備的備份區(qū)的數(shù)據(jù)寫(xiě)入所述存儲(chǔ)設(shè)備的目標(biāo)區(qū)。

B4、在寫(xiě)入所述存儲(chǔ)設(shè)備的目標(biāo)區(qū)之后,將備份完成標(biāo)記從已置位狀態(tài)更新為未置位狀態(tài),再刪除所述存儲(chǔ)設(shè)備的備份區(qū)的數(shù)據(jù)。

上述B1~B4中,當(dāng)目標(biāo)區(qū)的數(shù)據(jù)與待寫(xiě)入數(shù)據(jù)相同時(shí),表明目標(biāo)區(qū)已寫(xiě)入該待寫(xiě)入數(shù)據(jù),為了避免多次寫(xiě)入,提高存儲(chǔ)設(shè)備的壽命,將拒絕數(shù)據(jù)寫(xiě)入請(qǐng)求。當(dāng)目標(biāo)區(qū)的數(shù)據(jù)與待寫(xiě)入數(shù)據(jù)不同時(shí),表明目標(biāo)區(qū)未寫(xiě)入該待寫(xiě)入數(shù)據(jù),則為了保證目標(biāo)區(qū)的數(shù)據(jù)的完整性,需要將備份區(qū)的數(shù)據(jù)寫(xiě)入目標(biāo)區(qū)。

可選地,在所述步驟S14之后,包括:

C1、接收數(shù)據(jù)寫(xiě)入請(qǐng)求。其中,該數(shù)據(jù)寫(xiě)入請(qǐng)求攜帶待寫(xiě)入數(shù)據(jù)。

C2、將所述待寫(xiě)入數(shù)據(jù)寫(xiě)入所述存儲(chǔ)設(shè)備的備份區(qū),并在寫(xiě)入結(jié)束后將備份完成標(biāo)記更新為已置位狀態(tài)。

C3、將所述存儲(chǔ)設(shè)備的備份區(qū)的數(shù)據(jù)寫(xiě)入所述存儲(chǔ)設(shè)備的目標(biāo)區(qū)。

C4、在寫(xiě)入所述存儲(chǔ)設(shè)備的目標(biāo)區(qū)之后,將備份完成標(biāo)記從已置位狀態(tài)更新為未置位狀態(tài),再刪除所述存儲(chǔ)設(shè)備的備份區(qū)的數(shù)據(jù)。

當(dāng)上電后不是首次寫(xiě)入數(shù)據(jù)時(shí),將數(shù)據(jù)寫(xiě)入存儲(chǔ)設(shè)備時(shí),首先會(huì)寫(xiě)入存儲(chǔ)設(shè)備的備份區(qū)域,當(dāng)完全寫(xiě)入存儲(chǔ)設(shè)備的備份區(qū)域之后將更新備份信息記錄表的備份標(biāo)識(shí),最后再將寫(xiě)入存儲(chǔ)設(shè)備的備份區(qū)域的數(shù)據(jù)寫(xiě)入存儲(chǔ)設(shè)備的目標(biāo)區(qū)域。如果需要全部更新目標(biāo)區(qū)域的數(shù)據(jù),那么不需要讀取原有目標(biāo)區(qū)域的數(shù)據(jù),直接把需要更新的數(shù)據(jù)寫(xiě)入到存儲(chǔ)設(shè)備的備份區(qū)域中。

本發(fā)明第一實(shí)施例中,在存儲(chǔ)設(shè)備上電時(shí),判斷備份完成標(biāo)記是否已置位,在備份完成標(biāo)記已置位時(shí),將所述存儲(chǔ)設(shè)備的備份區(qū)的數(shù)據(jù)寫(xiě)入所述存儲(chǔ)設(shè)備的目標(biāo)區(qū),在備份完成標(biāo)記未置位且接收到數(shù)據(jù)寫(xiě)入請(qǐng)求時(shí),讀取所述存儲(chǔ)設(shè)備的目標(biāo)區(qū)的數(shù)據(jù),并將讀取的所述存儲(chǔ)設(shè)備的目標(biāo)區(qū)的數(shù)據(jù)與待寫(xiě)入數(shù)據(jù)比較,根據(jù)比較結(jié)果選擇是否將待寫(xiě)入數(shù)據(jù)寫(xiě)入所述存儲(chǔ)設(shè)備。由于在存儲(chǔ)設(shè)備上電后,根據(jù)備份完成標(biāo)記以及目標(biāo)區(qū)的數(shù)據(jù)與待寫(xiě)入數(shù)據(jù)的比較結(jié)果選擇是否將待寫(xiě)入數(shù)據(jù)寫(xiě)入存儲(chǔ)設(shè)備,因此,避免在目標(biāo)區(qū)重復(fù)寫(xiě)入待寫(xiě)入數(shù)據(jù),從而保證目標(biāo)區(qū)的數(shù)據(jù)的完整性以及準(zhǔn)確性。

應(yīng)理解,在本發(fā)明實(shí)施例中,上述各過(guò)程的序號(hào)的大小并不意味著執(zhí)行順序的先后,各過(guò)程的執(zhí)行順序應(yīng)以其功能和內(nèi)在邏輯確定,而不應(yīng)對(duì)本發(fā)明實(shí)施例的實(shí)施過(guò)程構(gòu)成任何限定。

實(shí)施例二:

圖5示出了本發(fā)明第二實(shí)施例提供的一種數(shù)據(jù)寫(xiě)入裝置的結(jié)構(gòu)圖,該數(shù)據(jù)寫(xiě)入裝置可應(yīng)用于各種存儲(chǔ)設(shè)備中,比如,應(yīng)用于接觸式或非接觸式智能卡、藍(lán)牙智能卡或藍(lán)牙盾、USBKey。為了便于說(shuō)明,僅示出了與本發(fā)明實(shí)施例相關(guān)的部分。

該數(shù)據(jù)寫(xiě)入裝置包括:備份完成標(biāo)記狀態(tài)判斷單元61、目標(biāo)區(qū)數(shù)據(jù)寫(xiě)入單元62、待寫(xiě)入數(shù)據(jù)比較單元63、數(shù)據(jù)寫(xiě)入選擇單元64。其中:

備份完成標(biāo)記狀態(tài)判斷單元61,用于在存儲(chǔ)設(shè)備上電時(shí),判斷備份完成標(biāo)記是否已置位。

在存儲(chǔ)設(shè)備上電(如存儲(chǔ)設(shè)備與移動(dòng)終端或PC終端通訊)時(shí),當(dāng)數(shù)據(jù)需要從移動(dòng)終端或PC終端傳輸?shù)酱鎯?chǔ)設(shè)備時(shí),為了保證寫(xiě)入目標(biāo)區(qū)的數(shù)據(jù)的完整性,存儲(chǔ)設(shè)備需要判斷上電前是否有數(shù)據(jù)寫(xiě)入異常(其中,寫(xiě)入異常包括斷電導(dǎo)致的寫(xiě)入異常,系統(tǒng)突然崩潰導(dǎo)致的寫(xiě)入異常等)進(jìn)行判斷。

目標(biāo)區(qū)數(shù)據(jù)寫(xiě)入單元62,用于在備份完成標(biāo)記已置位時(shí),將所述存儲(chǔ)設(shè)備的備份區(qū)的數(shù)據(jù)寫(xiě)入所述存儲(chǔ)設(shè)備的目標(biāo)區(qū)。

當(dāng)備份完成標(biāo)記已置位時(shí),表明數(shù)據(jù)已完全寫(xiě)入存儲(chǔ)設(shè)備的備份區(qū),此時(shí),即使在將備份區(qū)的數(shù)據(jù)寫(xiě)入目標(biāo)區(qū)時(shí),發(fā)生斷電等異常行為,也能在再次上電后,再次從備份區(qū)讀取數(shù)據(jù)寫(xiě)入目標(biāo)區(qū),從而保證目標(biāo)區(qū)的數(shù)據(jù)的完整性。

待寫(xiě)入數(shù)據(jù)比較單元63,用于在備份完成標(biāo)記未置位且接收到數(shù)據(jù)寫(xiě)入請(qǐng)求時(shí),讀取所述存儲(chǔ)設(shè)備的目標(biāo)區(qū)的數(shù)據(jù),并將讀取的所述存儲(chǔ)設(shè)備的目標(biāo)區(qū)的數(shù)據(jù)與待寫(xiě)入數(shù)據(jù)比較。

這里的待寫(xiě)入數(shù)據(jù)是指將要寫(xiě)入存儲(chǔ)設(shè)備的數(shù)據(jù),當(dāng)存儲(chǔ)設(shè)備接收到數(shù)據(jù)寫(xiě)入請(qǐng)求時(shí),可從數(shù)據(jù)寫(xiě)入請(qǐng)求獲取待寫(xiě)入數(shù)據(jù)。

具體地,逐個(gè)將讀取的存儲(chǔ)設(shè)備的目標(biāo)區(qū)的數(shù)據(jù)與待寫(xiě)入數(shù)據(jù)比較,當(dāng)然,為了提高數(shù)據(jù)比較速度,可在比較一個(gè)字符后,再在目標(biāo)區(qū)和待寫(xiě)入數(shù)據(jù)中抽取相同間隔的字符進(jìn)行比較。

數(shù)據(jù)寫(xiě)入選擇單元64,用于根據(jù)比較結(jié)果選擇是否將待寫(xiě)入數(shù)據(jù)寫(xiě)入所述存儲(chǔ)設(shè)備。

可選地,所述數(shù)據(jù)寫(xiě)入選擇單元64包括:

數(shù)據(jù)寫(xiě)入請(qǐng)求拒絕模塊,用于在讀取的所述存儲(chǔ)設(shè)備的目標(biāo)區(qū)的數(shù)據(jù)與待寫(xiě)入數(shù)據(jù)相同時(shí),拒絕所述數(shù)據(jù)寫(xiě)入請(qǐng)求。

備份區(qū)數(shù)據(jù)寫(xiě)入模塊,用于在讀取的所述存儲(chǔ)設(shè)備的目標(biāo)區(qū)的數(shù)據(jù)與待寫(xiě)入數(shù)據(jù)不同時(shí),將所述待寫(xiě)入數(shù)據(jù)寫(xiě)入所述存儲(chǔ)設(shè)備的備份區(qū),并在寫(xiě)入結(jié)束后將備份完成標(biāo)記更新為已置位狀態(tài)。

第一目標(biāo)區(qū)數(shù)據(jù)寫(xiě)入模塊,用于將所述存儲(chǔ)設(shè)備的備份區(qū)的數(shù)據(jù)寫(xiě)入所述存儲(chǔ)設(shè)備的目標(biāo)區(qū)。

備份完成標(biāo)記更新模塊,用于在寫(xiě)入所述存儲(chǔ)設(shè)備的目標(biāo)區(qū)之后,將備份完成標(biāo)記從已置位狀態(tài)更新為未置位狀態(tài),再刪除所述存儲(chǔ)設(shè)備的備份區(qū)的數(shù)據(jù)。

上述數(shù)據(jù)寫(xiě)入請(qǐng)求拒絕模塊、備份區(qū)數(shù)據(jù)寫(xiě)入模塊、第一目標(biāo)區(qū)數(shù)據(jù)寫(xiě)入模塊、備份完成標(biāo)記更新模塊中,當(dāng)目標(biāo)區(qū)的數(shù)據(jù)與待寫(xiě)入數(shù)據(jù)相同時(shí),表明目標(biāo)區(qū)已寫(xiě)入該待寫(xiě)入數(shù)據(jù),為了避免多次寫(xiě)入,提高存儲(chǔ)設(shè)備的壽命,將拒絕數(shù)據(jù)寫(xiě)入請(qǐng)求。當(dāng)目標(biāo)區(qū)的數(shù)據(jù)與待寫(xiě)入數(shù)據(jù)不同時(shí),表明目標(biāo)區(qū)未寫(xiě)入該待寫(xiě)入數(shù)據(jù),則為了保證目標(biāo)區(qū)的數(shù)據(jù)的完整性,需要將備份區(qū)的數(shù)據(jù)寫(xiě)入目標(biāo)區(qū)。

可選地,上述目標(biāo)區(qū)數(shù)據(jù)寫(xiě)入單元62包括:

數(shù)據(jù)異同比較模塊,用于在備份完成標(biāo)記已置位時(shí),判斷所述存儲(chǔ)設(shè)備的目標(biāo)區(qū)是否存在與所述存儲(chǔ)設(shè)備的備份區(qū)的數(shù)據(jù)相同的數(shù)據(jù)。

第二目標(biāo)區(qū)數(shù)據(jù)寫(xiě)入模塊,用于在所述存儲(chǔ)設(shè)備的目標(biāo)區(qū)沒(méi)有存在與所述存儲(chǔ)設(shè)備的備份區(qū)的數(shù)據(jù)相同的數(shù)據(jù)時(shí),將所述存儲(chǔ)設(shè)備的備份區(qū)的數(shù)據(jù)寫(xiě)入所述存儲(chǔ)設(shè)備的目標(biāo)區(qū)。

上述數(shù)據(jù)異同比較模塊和第二目標(biāo)區(qū)數(shù)據(jù)寫(xiě)入模塊中,當(dāng)目標(biāo)區(qū)沒(méi)有存在與備份區(qū)相同的數(shù)據(jù)時(shí),表明目標(biāo)區(qū)還沒(méi)有存儲(chǔ)備份區(qū)存儲(chǔ)的數(shù)據(jù),此時(shí),再將備份區(qū)的數(shù)據(jù)寫(xiě)入目標(biāo)區(qū),保證了目標(biāo)區(qū)的數(shù)據(jù)的完整性。當(dāng)然,在目標(biāo)區(qū)存在與備份區(qū)相同的數(shù)據(jù)時(shí),不再將備份區(qū)的數(shù)據(jù)寫(xiě)入目標(biāo)區(qū),由于減少了存儲(chǔ)設(shè)備的一次寫(xiě)入操作,因此有利于提高存儲(chǔ)設(shè)備的使用壽命。

需要指出的是,在將所述存儲(chǔ)設(shè)備的備份區(qū)的數(shù)據(jù)寫(xiě)入所述存儲(chǔ)設(shè)備的目標(biāo)區(qū)時(shí),可以直接將存儲(chǔ)設(shè)備的備份區(qū)的數(shù)據(jù)寫(xiě)入存儲(chǔ)設(shè)備的目標(biāo)區(qū),也可以先判斷所述存儲(chǔ)設(shè)備的目標(biāo)區(qū)是否存在與所述存儲(chǔ)設(shè)備的備份區(qū)的數(shù)據(jù)相同的數(shù)據(jù),再根據(jù)判斷結(jié)果選擇是否將所述存儲(chǔ)設(shè)備的備份區(qū)的數(shù)據(jù)寫(xiě)入所述存儲(chǔ)設(shè)備的目標(biāo)區(qū)。

可選地,所述數(shù)據(jù)寫(xiě)入裝置包括:

第一備份完成標(biāo)記更新為未置位單元,用于將備份完成標(biāo)記從已置位狀態(tài)更新為未置位狀態(tài)。

可選地,所述數(shù)據(jù)寫(xiě)入裝置包括:

備份區(qū)數(shù)據(jù)刪除單元,用于刪除所述存儲(chǔ)設(shè)備的備份區(qū)的數(shù)據(jù)。當(dāng)已將備份區(qū)的數(shù)據(jù)寫(xiě)入目標(biāo)區(qū)之后,為了節(jié)省備份區(qū)的存儲(chǔ)空間,便于下一次數(shù)據(jù)更新和備份,需要?jiǎng)h除已寫(xiě)入存儲(chǔ)設(shè)備的備份區(qū)的數(shù)據(jù)。

第一備份完成標(biāo)記更新為未置位單元和備份區(qū)數(shù)據(jù)刪除單元中,由于先將備份完成標(biāo)記從已置位狀態(tài)更新為未置位狀態(tài),再刪除備份區(qū)的數(shù)據(jù),而不是先刪除備份區(qū)的數(shù)據(jù)再將備份完成標(biāo)記從已置位狀態(tài)更新為未置位狀態(tài),因此,能夠避免出現(xiàn)刪除備份區(qū)的數(shù)據(jù)后但還沒(méi)將備份完成標(biāo)記從已置位狀態(tài)更新為未置位狀態(tài)時(shí)出現(xiàn)斷電,在下次上電時(shí)不能將備份區(qū)的數(shù)據(jù)寫(xiě)入目標(biāo)區(qū)的情況,從而進(jìn)一步保證目標(biāo)區(qū)的數(shù)據(jù)的完整性。

可選地,所述數(shù)據(jù)寫(xiě)入裝置包括:

數(shù)據(jù)寫(xiě)入請(qǐng)求接收單元,用于接收數(shù)據(jù)寫(xiě)入請(qǐng)求。其中,該數(shù)據(jù)寫(xiě)入請(qǐng)求攜帶待寫(xiě)入數(shù)據(jù)。

備份完成標(biāo)記更新為已置位單元,用于將所述待寫(xiě)入數(shù)據(jù)寫(xiě)入所述存儲(chǔ)設(shè)備的備份區(qū),并在寫(xiě)入結(jié)束后將備份完成標(biāo)記更新為已置位狀態(tài)。

備份區(qū)的數(shù)據(jù)轉(zhuǎn)移單元,用于將所述存儲(chǔ)設(shè)備的備份區(qū)的數(shù)據(jù)寫(xiě)入所述存儲(chǔ)設(shè)備的目標(biāo)區(qū)。

第二備份完成標(biāo)記更新為未置位單元,用于在寫(xiě)入所述存儲(chǔ)設(shè)備的目標(biāo)區(qū)之后,將備份完成標(biāo)記從已置位狀態(tài)更新為未置位狀態(tài),再刪除所述存儲(chǔ)設(shè)備的備份區(qū)的數(shù)據(jù)。

當(dāng)上電后不是首次寫(xiě)入數(shù)據(jù)時(shí),將數(shù)據(jù)寫(xiě)入存儲(chǔ)設(shè)備時(shí),首先會(huì)寫(xiě)入存儲(chǔ)設(shè)備的備份區(qū)域,當(dāng)完全寫(xiě)入存儲(chǔ)設(shè)備的備份區(qū)域之后將更新備份信息記錄表的備份標(biāo)識(shí),最后再將寫(xiě)入存儲(chǔ)設(shè)備的備份區(qū)域的數(shù)據(jù)寫(xiě)入存儲(chǔ)設(shè)備的目標(biāo)區(qū)域。如果需要全部更新目標(biāo)區(qū)域的數(shù)據(jù),那么不需要讀取原有目標(biāo)區(qū)域的數(shù)據(jù),直接把需要更新的數(shù)據(jù)寫(xiě)入到存儲(chǔ)設(shè)備的備份區(qū)域中。

本發(fā)明第二實(shí)施例中,由于在存儲(chǔ)設(shè)備上電后,根據(jù)備份完成標(biāo)記以及目標(biāo)區(qū)的數(shù)據(jù)與待寫(xiě)入數(shù)據(jù)的比較結(jié)果選擇是否將待寫(xiě)入數(shù)據(jù)寫(xiě)入存儲(chǔ)設(shè)備,因此,避免在目標(biāo)區(qū)重復(fù)寫(xiě)入待寫(xiě)入數(shù)據(jù),從而保證目標(biāo)區(qū)的數(shù)據(jù)的完整性以及準(zhǔn)確性。

本領(lǐng)域普通技術(shù)人員可以意識(shí)到,結(jié)合本文中所公開(kāi)的實(shí)施例描述的各示例的單元及算法步驟,能夠以電子硬件、或者計(jì)算機(jī)軟件和電子硬件的結(jié)合來(lái)實(shí)現(xiàn)。這些功能究竟以硬件還是軟件方式來(lái)執(zhí)行,取決于技術(shù)方案的特定應(yīng)用和設(shè)計(jì)約束條件。專業(yè)技術(shù)人員可以對(duì)每個(gè)特定的應(yīng)用來(lái)使用不同方法來(lái)實(shí)現(xiàn)所描述的功能,但是這種實(shí)現(xiàn)不應(yīng)認(rèn)為超出本發(fā)明的范圍。

所屬領(lǐng)域的技術(shù)人員可以清楚地了解到,為描述的方便和簡(jiǎn)潔,上述描述的系統(tǒng)、裝置和單元的具體工作過(guò)程,可以參考前述方法實(shí)施例中的對(duì)應(yīng)過(guò)程,在此不再贅述。

在本申請(qǐng)所提供的幾個(gè)實(shí)施例中,應(yīng)該理解到,所揭露的系統(tǒng)、裝置和方法,可以通過(guò)其它的方式實(shí)現(xiàn)。例如,以上所描述的裝置實(shí)施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實(shí)際實(shí)現(xiàn)時(shí)可以有另外的劃分方式,例如多個(gè)單元或組件可以結(jié)合或者可以集成到另一個(gè)系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點(diǎn),所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過(guò)一些接口,裝置或單元的間接耦合或通信連接,可以是電性,機(jī)械或其它的形式。

所述作為分離部件說(shuō)明的單元可以是或者也可以不是物理上分開(kāi)的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個(gè)地方,或者也可以分布到多個(gè)網(wǎng)絡(luò)單元上??梢愿鶕?jù)實(shí)際的需要選擇其中的部分或者全部單元來(lái)實(shí)現(xiàn)本實(shí)施例方案的目的。

另外,在本發(fā)明各個(gè)實(shí)施例中的各功能單元可以集成在一個(gè)處理單元中,也可以是各個(gè)單元單獨(dú)物理存在,也可以兩個(gè)或兩個(gè)以上單元集成在一個(gè)單元中。

所述功能如果以軟件功能單元的形式實(shí)現(xiàn)并作為獨(dú)立的產(chǎn)品銷售或使用時(shí),可以存儲(chǔ)在一個(gè)計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說(shuō)對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分或者該技術(shù)方案的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來(lái),該計(jì)算機(jī)軟件產(chǎn)品存儲(chǔ)在一個(gè)存儲(chǔ)介質(zhì)中,包括若干指令用以使得一臺(tái)計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例所述方法的全部或部分步驟。而前述的存儲(chǔ)介質(zhì)包括:U盤(pán)、移動(dòng)硬盤(pán)、只讀存儲(chǔ)器(ROM,Read-Only Memory)、隨機(jī)存取存儲(chǔ)器(RAM,Random Access Memory)、磁碟或者光盤(pán)等各種可以存儲(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)。

當(dāng)前第1頁(yè)1 2 3 
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1