本文主要講述智能卡系統(tǒng)的斷電保護(hù)和數(shù)據(jù)備份相關(guān)知識,主要內(nèi)容如下圖,包括數(shù)據(jù)的備份、備份區(qū)的設(shè)計、均衡磨損技術(shù)以及數(shù)據(jù)恢復(fù)的時機(jī)等等。

大學(xué)生就業(yè)培訓(xùn),高中生培訓(xùn),在職人員轉(zhuǎn)行培訓(xùn),企業(yè)團(tuán)訓(xùn)

一、數(shù)據(jù)備份的原因

  在數(shù)據(jù)的一次寫過程中,由于Flash物理特性,需要先擦除要改寫的地址空間所在的頁面,每次擦除的物理頁面大小為512 Byte(假設(shè)一頁大小為512Byte)。智能卡由外部供電,如果在寫過程中突然掉電,導(dǎo)致卡內(nèi)數(shù)據(jù)的丟失,就有可能導(dǎo)致COS崩潰或者用戶數(shù)據(jù)寫入不正確。因此,COS必須提供掉電保護(hù)機(jī)制保證卡內(nèi)數(shù)據(jù)的讀寫安全。

  數(shù)據(jù)備份就是COS的掉電保護(hù)機(jī)制,在寫入數(shù)據(jù)時,將整個頁面?zhèn)浞莺笤俨脸龑懭?,防止在改寫過程中出現(xiàn)突然掉電,導(dǎo)致數(shù)據(jù)丟失。

 

二、數(shù)據(jù)備份的作用

  備份機(jī)制設(shè)計的目的是采取一種措施,使COS在進(jìn)行寫操作時將其作為一個原子操作來完成,不因突然掉電或者惡意拔出而丟失數(shù)據(jù),保證卡內(nèi)數(shù)據(jù)的一致性和安全性。

掉電保護(hù)的軟件措施主要包括兩部分:
  一是設(shè)計系統(tǒng)的數(shù)據(jù)備份算法,在系統(tǒng)突然斷電之后,能有效地保存系統(tǒng)在數(shù)據(jù)更新前的正確運(yùn)行狀態(tài);
  二是在供電復(fù)位之后根據(jù)備份的運(yùn)行狀態(tài)和數(shù)據(jù)及時恢復(fù),避免整個COS因關(guān)鍵數(shù)據(jù)丟失而崩潰。

 

三、數(shù)據(jù)備份區(qū)的位置

  為了保證數(shù)據(jù)備份區(qū)的安全性,數(shù)據(jù)備份區(qū)一般選擇通過文件系統(tǒng)不能訪問到的位置。

 

四、數(shù)據(jù)備份的時機(jī)

  數(shù)據(jù)備份要在寫操作之前進(jìn)行,這樣無論掉電發(fā)生在什么位置,備份區(qū)數(shù)據(jù)或者將要寫入的地址區(qū)總有一個位置的數(shù)據(jù)時正確的。

 五、備份的數(shù)據(jù)

有兩種備份數(shù)據(jù)的方式:
  一是舊數(shù)據(jù)備份方式,優(yōu)點如果寫時發(fā)生掉電,系統(tǒng)的數(shù)據(jù)丟失,可以通過備份將系統(tǒng)恢復(fù)到?jīng)]更新以前的狀態(tài)。
  二是新數(shù)據(jù)備份方式,因為備份的是即將寫入的新數(shù)據(jù),所以當(dāng)寫時發(fā)生掉電導(dǎo)致系統(tǒng)的數(shù)據(jù)丟失,不可能將系統(tǒng)的狀態(tài)恢復(fù)到掉電之前的狀態(tài),只能到更新數(shù)據(jù)之后的狀態(tài)。

六、備份的關(guān)鍵

  備份的關(guān)鍵是保證備份操作的原子性。

七、備份的種類

  備份有兩種機(jī)制,一種是頁備份,另一種是日志備份(也有其他稱呼,如字節(jié)備份),這是兩種完全不同的機(jī)制。詳見第八條。

八、備份與恢復(fù)的原理

  FLASH具有寫入前必須整塊擦除的物理特性,所以在寫之前必須對目標(biāo)地址和備份區(qū)進(jìn)行擦除。

在改寫文件的數(shù)據(jù)時會遇到以下兩種情況(如圖):
  一是需要寫入的數(shù)據(jù)剛好在一

網(wǎng)友評論