亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種智能卡數(shù)據(jù)更新方法

文檔序號(hào):9910750閱讀:661來(lái)源:國(guó)知局
一種智能卡數(shù)據(jù)更新方法
【技術(shù)領(lǐng)域】
[0001 ]本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種智能卡數(shù)據(jù)更新方法。
【背景技術(shù)】
[0002] 目前,智能卡普遍采用的數(shù)據(jù)存儲(chǔ)材料是FLASH,但是使用這種存儲(chǔ)材料的產(chǎn)品有 兩個(gè)缺點(diǎn),一是按塊改寫(xiě)造成耗時(shí)較長(zhǎng),因?yàn)樵谛薷哪硞€(gè)字節(jié)的內(nèi)容時(shí),必須先將該字節(jié)所 在的整個(gè)物理塊全部擦除掉,例如原物理塊為512B,全部擦除后所有字節(jié)變成了FF,然后再 寫(xiě)入該物理塊的全部?jī)?nèi)容,整個(gè)過(guò)程耗時(shí)較長(zhǎng)。另一個(gè)是可更新次數(shù)受限造成使用壽命短 暫,因?yàn)镕LASH的一個(gè)物理塊的最大擦出次數(shù)是有上限的,一般可靠的更新次數(shù)大約是10萬(wàn) 次左右,所以這樣造成基于這種FLASH材料實(shí)現(xiàn)的產(chǎn)品的使用壽命比較短暫。
[0003] 假設(shè)一個(gè)物理塊上保存著512字節(jié)數(shù)據(jù),如果要改第一個(gè)字節(jié)的內(nèi)容,則需要以下 三步:(1)將該物理塊擦除,則該物理塊上所有字節(jié)都變成FF;(2)向第一字節(jié)寫(xiě)入新數(shù)據(jù);
[3] 向后面511字節(jié)寫(xiě)入舊數(shù)據(jù)。這整個(gè)過(guò)程需要一定的時(shí)間,如果在這個(gè)過(guò)程中掉電了,則 顯然會(huì)發(fā)生數(shù)據(jù)的丟失。對(duì)于智能卡的文件系統(tǒng)來(lái)說(shuō),關(guān)鍵數(shù)據(jù)的丟失是不能允許的,一般 數(shù)據(jù)的丟失也常常是不可挽回的。所以,必須想辦法使得即便發(fā)生了意外掉電,也要保證數(shù) 據(jù)的一致性,即要么新數(shù)據(jù)更新成功,要么舊數(shù)據(jù)全部都在。從物理上講,F(xiàn)LASH的一個(gè)物理 塊的擦除次數(shù)是有上限的,次數(shù)到了,則該物理塊就損壞了。大多數(shù)情況下,一個(gè)物理塊的 損壞等于整個(gè)FLASH的損壞。所以,必須想辦法讓寫(xiě)操作在物理上分?jǐn)傞_(kāi),以延長(zhǎng)FLASH整體 的壽命。
[0004] 因此,有必要針對(duì)智能卡存儲(chǔ)材料的特點(diǎn),設(shè)計(jì)一個(gè)文件系統(tǒng)更新方法,以提高智 能卡的穩(wěn)定性和安全性。
[0005] 鑒于FLASH存儲(chǔ)材料存在的上述問(wèn)題,因此在使用這種存儲(chǔ)材料實(shí)現(xiàn)的文件系統(tǒng) 時(shí)也就主要考慮兩個(gè)方面:如何保證數(shù)據(jù)更新的完整性和如何提高數(shù)據(jù)存儲(chǔ)的使用壽命。 而目前,幾乎所有的智能卡都以文件為單位對(duì)數(shù)據(jù)進(jìn)行讀寫(xiě),并且設(shè)計(jì)了更新方法,一個(gè)典 型更新方法舉例如下:1)在智能卡里劃分出一段存儲(chǔ)區(qū)域作為備份區(qū)和標(biāo)志區(qū);2)將要更 新的數(shù)據(jù)所在的整個(gè)存儲(chǔ)塊備份至備份區(qū);3)設(shè)置備份區(qū)有效的標(biāo)志;4)更新目標(biāo)數(shù)據(jù);5) 清楚備份區(qū)有效的標(biāo)志。如果這個(gè)過(guò)程由于智能卡斷電而發(fā)生中斷,則智能卡會(huì)在下一次 上電后檢查標(biāo)志,如果標(biāo)志有效則把備份區(qū)的數(shù)據(jù)恢復(fù)到要更新的目標(biāo)地址去。這個(gè)方法 雖然解決了文件更新時(shí)可能發(fā)生數(shù)據(jù)丟失的問(wèn)題,但是并沒(méi)能提高文件數(shù)據(jù)的可更新次 數(shù),更新的效率低,速度慢。
[0006] 所以需要一種能夠提高智能卡穩(wěn)定性和安全性的智能卡數(shù)據(jù)更新方法。

【發(fā)明內(nèi)容】

[0007] 本發(fā)明的目的在于解決現(xiàn)有技術(shù)中存在的智能卡數(shù)據(jù)更新方法穩(wěn)定性差、工作效 率低的問(wèn)題。為解決上述問(wèn)題,本發(fā)明實(shí)施例提供了 一種智能卡數(shù)據(jù)更新方法。
[0008] 本發(fā)明提供一種智能卡數(shù)據(jù)更新方法,可包括:
[0009] 創(chuàng)建待更新文件;
[0010] 為所述待更新文件配置兩個(gè)同樣大小的數(shù)據(jù)存儲(chǔ)空間;
[0011] 初始化所述兩個(gè)數(shù)據(jù)存儲(chǔ)空間;
[0012] 獲得所述兩個(gè)數(shù)據(jù)存儲(chǔ)空間中需要更新的數(shù)據(jù)存儲(chǔ)空間;
[0013] 寫(xiě)入新數(shù)據(jù)到所述需要更新的數(shù)據(jù)存儲(chǔ)空間完成文件更新。
[0014] 優(yōu)選的,所述兩個(gè)同樣大小的數(shù)據(jù)存儲(chǔ)空間的狀態(tài)在同一時(shí)刻只有其中一個(gè)是有 效的。
[0015] 優(yōu)選的,所述兩個(gè)同樣大小的數(shù)據(jù)存儲(chǔ)空間的大小均為N+3字節(jié)。
[0016]優(yōu)選的,所述兩個(gè)同樣大小的數(shù)據(jù)空間分別包括有效標(biāo)志序號(hào)、數(shù)據(jù)存儲(chǔ)內(nèi)容和 校驗(yàn)和,其中所述有效標(biāo)志序號(hào)占1字節(jié),所述數(shù)據(jù)存儲(chǔ)內(nèi)容占 N字節(jié),所述校驗(yàn)和占2字節(jié)。 [0017]優(yōu)選的,所述兩個(gè)同樣大小的數(shù)據(jù)存儲(chǔ)空間分別定位在獨(dú)立的FLASH存儲(chǔ)塊中。
[0018] 優(yōu)選的,獲得所述兩個(gè)數(shù)據(jù)存儲(chǔ)空間中需要更新的數(shù)據(jù)存儲(chǔ)空間包括:
[0019] 判斷所述兩個(gè)數(shù)據(jù)存儲(chǔ)空間的校驗(yàn)和是否正確;
[0020] 若其中一個(gè)數(shù)據(jù)存儲(chǔ)空間的校驗(yàn)和不正確,則確定該數(shù)據(jù)存儲(chǔ)空間為需要更新的 數(shù)據(jù)存儲(chǔ)空間。
[0021] 優(yōu)選的,若所述兩個(gè)數(shù)據(jù)存儲(chǔ)空間的校驗(yàn)和均正確,則判斷所述兩個(gè)數(shù)據(jù)存儲(chǔ)空 間的有效標(biāo)志序號(hào)值的大小,所述有效標(biāo)志序號(hào)值小的為需要更新的數(shù)據(jù)存儲(chǔ)空間。
[0022] 優(yōu)選的,所述方法完成所述文件更新后還包括:
[0023]獲得當(dāng)前有效的數(shù)據(jù)存儲(chǔ)空間的地址;
[0024] 找到所述文件的數(shù)據(jù)存儲(chǔ)內(nèi)容的存儲(chǔ)地址;
[0025] 讀取所述存儲(chǔ)地址中的數(shù)據(jù)存儲(chǔ)內(nèi)容完成所述文件讀取。
[0026] 優(yōu)選的,所述獲得當(dāng)前有效的數(shù)據(jù)存儲(chǔ)空間的地址包括:
[0027] 判斷所述兩個(gè)數(shù)據(jù)存儲(chǔ)空間的校驗(yàn)和是否正確;
[0028]若其中一個(gè)數(shù)據(jù)存儲(chǔ)空間的校驗(yàn)和不正確,則判斷另一個(gè)數(shù)據(jù)存儲(chǔ)空間是有效 的。
[0029] 優(yōu)選的,若所述兩個(gè)數(shù)據(jù)存儲(chǔ)空間的校驗(yàn)和都正確,則判斷所述兩個(gè)存儲(chǔ)空間的 有效標(biāo)志序號(hào)值的大小,所述有效標(biāo)志序號(hào)值大的為當(dāng)前有效的數(shù)據(jù)存儲(chǔ)空間。
[0030] 優(yōu)選的,所述有效標(biāo)志序號(hào)值判斷大小時(shí)規(guī)定0大于255。
[0031] 本發(fā)明實(shí)施例提供的一種智能卡數(shù)據(jù)更新方法,通過(guò)對(duì)待更新文件配置兩塊同樣 大小的數(shù)據(jù)存儲(chǔ)空間進(jìn)行文件更新,使得文件更新可以把擦寫(xiě)FLASH的次數(shù)大大降低,提高 了FLASH存儲(chǔ)器的使用壽命。同時(shí),F(xiàn)LASH的擦寫(xiě)操作是智能卡里最耗時(shí)的處理,本發(fā)明提供 的方法由于減少了 FLASH擦寫(xiě)的次數(shù),極大地提高了文件更新的處理速度,提高了工作效 率。
【附圖說(shuō)明】
[0032] 圖1為本發(fā)明實(shí)施例1提供的一種智能卡數(shù)據(jù)更新方法流程圖。
【具體實(shí)施方式】
[0033] 本發(fā)明實(shí)施例提供了一種智能卡數(shù)據(jù)更新方法,能夠解決現(xiàn)有技術(shù)中存在的智能 卡數(shù)據(jù)更新方法穩(wěn)定性差、工作效率低的問(wèn)題。
[0034] 為了使本技術(shù)領(lǐng)域的人員更好地理解本發(fā)明方案,下面將結(jié)合本發(fā)明實(shí)施例中的 附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是 本發(fā)明一部分的實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人 員在沒(méi)有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都應(yīng)當(dāng)屬于本發(fā)明保護(hù)的范 圍。
[0035] 智能卡在建立文件時(shí)會(huì)在存儲(chǔ)區(qū)按照要建立的文件的大小分配一定的空間,本發(fā) 明所述方法會(huì)在分配的空間基礎(chǔ)上,再申請(qǐng)同樣大小的存儲(chǔ)空間,這樣要建立的文件就擁 有2塊同樣大小的數(shù)據(jù)空間,即一個(gè)文件擁有大小相同的2個(gè)文件數(shù)據(jù)區(qū)。
[0036] 智能卡對(duì)該文件的更新和讀取都是基于該文件的這兩個(gè)文件區(qū)來(lái)完成的,同一時(shí) 刻只有其中的一個(gè)文件區(qū)是有效的。智能卡在工作時(shí)會(huì)根據(jù)具體的情況來(lái)完成兩個(gè)文件區(qū) 的切換。
[0037] 可以理解的是,本發(fā)明所述方法適用于更新頻率高、文件大小適中的、對(duì)更新速度 要求高的文件,對(duì)于在使用中不會(huì)經(jīng)常被更新的文件可以不使用本發(fā)明所述方法,即本發(fā) 明所述的方法并不應(yīng)用于全部智能卡里的全部文件,而是根據(jù)需要在創(chuàng)建文件時(shí)指明使用 的是傳統(tǒng)的方法,還是本發(fā)明所述方法。下面所述各種實(shí)施例均以在創(chuàng)建文件時(shí)指明使用 本發(fā)明所述方法為例進(jìn)行說(shuō)明。
[0038] 本發(fā)明提供實(shí)施例1,參照?qǐng)D1所示,本發(fā)明實(shí)施例1所述智能卡數(shù)據(jù)更新方法具體 可以包括:
[0039] S101、創(chuàng)建待更新文件;
[0040]具體的,由智能卡的文件系統(tǒng)負(fù)責(zé)創(chuàng)建待更新文件。
[0041] S102、為所述待更新文件配置兩個(gè)同樣大小的數(shù)據(jù)存儲(chǔ)空間;
[0042] 具體的,在創(chuàng)建完所述待更新文件后,所述智能卡會(huì)再未使用的數(shù)據(jù)存儲(chǔ)空間里 份配兩塊數(shù)據(jù)存儲(chǔ)空間,這兩塊數(shù)據(jù)存儲(chǔ)空間的大小一樣,用來(lái)存儲(chǔ)所述待更新文件的內(nèi) 容。
[0043] S103、初始化所述兩個(gè)數(shù)據(jù)存儲(chǔ)空間;
[0044] 具體的,所述智能卡對(duì)所述待更新文件的兩個(gè)同樣大小的數(shù)據(jù)存儲(chǔ)空間進(jìn)行初始 化,這樣就算完成了所述待更新文件的創(chuàng)建過(guò)程。
[0045] S104、獲得所述兩個(gè)數(shù)據(jù)存儲(chǔ)空間中需要更新的數(shù)據(jù)存儲(chǔ)空間;
[0046] 具體的,所述智能卡的文件系統(tǒng)針對(duì)所述待更新文件進(jìn)行文件更新前,需要先確 定需要更新的數(shù)據(jù)存儲(chǔ)空間是哪一個(gè),即在上述兩個(gè)同樣大小的數(shù)據(jù)存儲(chǔ)空間中確定出一 個(gè)需要更新的數(shù)據(jù)存儲(chǔ)空間。
[0047] S105、寫(xiě)入新數(shù)據(jù)到所述需要更新的數(shù)據(jù)存儲(chǔ)空間完成文件更新。
[0048] 具體的,在確定出需要更新的數(shù)據(jù)存儲(chǔ)空間后,所述智能卡的文件系統(tǒng)將需要更 新的內(nèi)容,即新數(shù)據(jù)寫(xiě)入到所述需要更新的數(shù)據(jù)存儲(chǔ)空間中,完成所述文件更新。
[0049] 本發(fā)明實(shí)施例所述方法通過(guò)對(duì)待更新文件配置兩塊同樣大小的數(shù)據(jù)存儲(chǔ)空間進(jìn) 行文件更新,使得文件更新可以把擦寫(xiě)FLASH的次數(shù)大大降低,提高了 FLASH存儲(chǔ)器的使用 壽命。
[0050] 為了更清楚的理解本發(fā)明提供的智能卡數(shù)據(jù)更新方法,本發(fā)明還提供了實(shí)施例2, 在實(shí)施例1的基礎(chǔ)上,智能卡數(shù)據(jù)更新方法具體還可以包括如下內(nèi)容。
[0051] 所述待更新文件的創(chuàng)建是由智能卡的文件系統(tǒng)來(lái)負(fù)責(zé)的,所述待更新文件的創(chuàng)建 過(guò)程具體可以包括:設(shè)定要?jiǎng)?chuàng)建的所述待更新文件大小是N字節(jié),則在智能卡的未使用的存 儲(chǔ)空間里分配2塊數(shù)據(jù)存儲(chǔ)空間,在這標(biāo)記為A塊和B塊,每塊數(shù)據(jù)存儲(chǔ)空間的大小是N+3,即 所述兩個(gè)同樣大小的數(shù)據(jù)存儲(chǔ)空間的大小均為N+3字節(jié)。兩個(gè)同樣大小的數(shù)據(jù)存儲(chǔ)空間分 別定位在獨(dú)立的FLASH存儲(chǔ)塊中。
[0052] 其中,A數(shù)據(jù)存儲(chǔ)空間數(shù)據(jù)如下:
[0053]
[0054] B數(shù)據(jù)存儲(chǔ)空間數(shù)據(jù)如下:
[0055]
[0056] ~由上面兩個(gè)表格可以看出,所述兩個(gè)同樣大小的數(shù)據(jù)空間分別包括有效標(biāo)志序, 號(hào)、數(shù)據(jù)存儲(chǔ)內(nèi)容和校驗(yàn)和,其中所述有效標(biāo)志序號(hào)占
當(dāng)前第1頁(yè)1 2 
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1