国产成人无码精品久久久,久久国产精品,一本之道高清无码视频,熟妇人妻系列Aⅴ无码一区二区,中文字幕ⅴ亚洲ⅴⅴ天堂

歡迎您訪問鄭州興邦電子股份有限公司官方網站!
阿里巴巴誠信通企業
全國咨詢熱線:40000-63966
興邦電子,中國水控機第一品牌

聯系興邦電子

全國咨詢熱線:40000-63966

售后:0371-55132951/55132952

工廠:河南省 鄭州市 高新區蓮花街電子電器產業園

3G智能卡文件系統的研究與設計

文章出處:http://www.nyfzw.net 作者: 人氣: 發表時間:2012年04月08日

[文章內容簡介]:對基于Flash的3G智能卡文件系統的研究與設計,引用了數據庫日志技術和掉電保護機制,保證了智能卡文件系統可靠性,數據的一致性和完整性;按字節靜態分配存儲空間、合理有效地回收與重用碎片空間,提高了存儲空間的利用率;平均磨損和頁面映射技術的使用延長了Flash的使用壽命;有效的存儲設計提高了數據檢索的速度,從而提高了智能卡的整體性能。

    摘要:對基于Flash的3G智能卡文件系統的研究與設計,引用了數據庫日志技術和掉電保護機制,保證了智能卡文件系統可靠性,數據的一致性和完整性;按字節靜態分配存儲空間、合理有效地回收與重用碎片空間,提高了存儲空間的利用率;平均磨損和頁面映射技術的使用延長了Flash的使用壽命;有效的存儲設計提高了數據檢索的速度,從而提高了智能卡的整體性能。測試證實了該文件系統設計適合3G EVDO卡。

    0 引言

    隨著3G時代的到來,移動電子商務的發展,手機不再僅僅局限于語音和短信功能,基于卡上的應用顯得越來越突出。對于智能卡COS而言,文件系統是核心模塊。目前已經有很多成熟的文件系統,如FAT、UN IX、FTL、NFTL等,這些文件系統是基于大容量磁盤存儲而設計[ 1 ]的,對于智能卡開發有一些性能限制: 1)智能卡系統的應用條件遠比大型機惡劣,電源電壓的不穩定以及突發性斷電將對存儲器造成嚴重的影響; 2)通用文件系統大量使用緩存技術,在運行中要耗費較多的系統資源; 3)智能卡文件系統數據多數是應用數據,這些數據安全性要求較高。

    目前, Flash存儲器已經成為一種非常重要的非易失存儲介質,主要有NOR Flash和NAND Flash,在嵌入式移動平臺得到廣泛的應用,當前基于Flash設計的文件系統有JFFS2、YAFFS、CFFS等[ 1 ] ,但這些都是為NAND Flash而設計的,這些文件系統的研究主要放在NAND Flash的存儲特性上,研究領域也主要集中文件系統快速初始化、頁面分配、垃圾回收、日志管理、系統崩潰恢復技術等方面,而很少考慮文件系統本身的特性;并且在運行過程中要保存大量的節點信息,要消耗大量的內存,最重要的是這些文件系統是為NAND Flash而設計的,且都是基于數據塊的數據存儲,而沒有考慮小容量芯片,如NOR Flash。在當前智能卡開發中,綜合多方面的因素, Flash容量是有限制的,現在大部分使用的是NOR Flash,其頁面大小是512 Byte,本文就是基于NOR Flash進行文件系統的設計與研究。隨著3G EVDO卡業務多樣化及3G技術的發展,構造一個好的文件系統對智能卡至關重要。通過靈活的文件系統設計,達到更高效的數據檢索速度、更優化的空間利用及可靠的數據保證,來有效發揮智能卡的潛能,為構建完善的3G EVDO應用系統提供強有力的支持。

    1 智能卡文件系統的概述

    3G EVDO COS[ 2 ]系統是智能卡的靈魂,要求具有良好的可維護性、可擴展性和高安全性,其智能卡系統結構模型如圖1。其中文件管理模塊是智能卡操作系統的核心模塊,它負責組織、管理、維護智能卡內存儲的所有數據,它是一個承上啟下的模塊,對底層來說實現存儲空間的管理維護,對上層完全透明地實現了數據的管理功能。文件系統的設計和實現既是COS中最靈活、最有個性的部分也是對系統整體結構影響最大的部分,它的設計與實現直接關系到智能卡的整體性能。智能卡文件系統的結構[ 3 - 4 ]由主文件MF、專用文件DF、數據文件EF組成,其中MF是智能卡的整個入口,DF是一類數據或者一個應用在卡內的映射, EF文件是智能卡中應用數據的最終載體。智能卡文件系統設計要達到以下目標:保證COS的可靠性、穩定性、安全性;保證數據的完整性、一致性;保證智能卡的時間、空間效率;保證智能卡的使用壽命;保證智能卡碎片空間的回收與重用。

圖1 3G COS系統結構模型圖 

圖1 3G COS系統結構模型圖

    2 存儲空間的分配與相關數據結構的設計

    為了有效合理地使用智能卡有限的存儲空間,采用了靜態的存儲管理方式,在存儲空間的分配上按字節來分配,而不是按塊分配。智能卡文件系統采用的是一種連續分配的存儲結構[ 5 ] ,文件中的數據都存放在連續的物理空間中,以減少查找文件、讀取、更新文件數據的所花的時間,在智能卡的生命周期內,寫入或讀出數據文件的數據量只能小于或等于所有規定的文件大小。主文件MF在智能卡初始化首先創建,其存儲空間為整個數據域的空間。DF的存儲空間也是連續分配的,文件的創建、刪除操作都是在DF的存儲空間內進行的,DF不能使用自身存儲空間以外的存儲空間。為了方便與快速地查找,在這引用了目錄項,目錄項就是把文件句柄部分屬性進行分離,目錄項數據結構如下描述所示:

 

    status值的定義如下所示: F8H表示目錄文件; F0H表示基本數據文件; F2表示為無效文件; FFH表示空閑目錄項。文件句柄是用于描述文件和控制文件的數據結構,各文件數據結構如圖2,其中file Id表示文件標識名; availSize表示目錄下可用空間大小; fileSize表示文件大小; fileDes表示文件類型; noOfDF表示當前目錄下直接DF數目; noOfEF表示當前目錄下直接EF 數目; accessCondiction 表示安全訪問規則;recordLength表示記錄長度; firstRecordNum 表示指向環形文件第一條記錄的記錄號; lifeCycstatus表示文件的生命周期;另外文件特征、PUK、CHV、ADM及后三者的數目存儲在Flash特定的位置,以方便對文件的鑒權等操作。

 

    創建文件分配存儲空間時,是從當前目錄下可用的存儲空間的起始地址開始分配的,而不理會當前目錄下無效文件碎片空間,直到當前目錄下無可用空間或可用空間不夠時,系統才去回收無效文件的碎片空間。在當前目錄文件的句柄中有一個控制參數:當前目錄下可用存儲空間,它是指在當前目錄下創建文件時可用的連續存儲空間,來決定是否滿足創建文件時所申請的空間大小,根據此參數與當前目錄文件存儲空間大小及首地址,可計算出當前創建文件時的起始地址,每創建一個文件后,該參數減去所創建文件分配空間,即為當前目錄下可用空間的大小。文件系統的數據結構采用靜態樹型目錄結構,靜態存儲管理時文件存儲的數據結構如圖3所示。

 

圖3 靜態存儲數據結構

    3 文件系統相關機制設計

    3. 1 碎片空間回收機制

    由于所有的應用都可以進行刪除與創建,所以這就要求文件系統能夠動態地對多應用文件進刪除、創建等操作??紤]到文件的動態刪除可能會造成卡內一些空間碎片,所以在文件系統上增加了碎片空間的回收機制,該機制主要針對卡內由于刪除文件操作產生的碎片空間??臻g回收機制是在創建文件且發生空間不足時被調用的,是為了有效與合理地使用存儲空間。

    回收機制的實質是對空間碎片的整理與再利用的過程,要注重無效文件節點的合并,系統在不斷地進行分配和回收過程中,大的空閑區逐漸分割成小的占用區,為了更有效地利用存儲空間,需將相鄰關系的碎片空間進行合并。在回收過程中,主要的任務是查找刪除文件留下的碎片空間,具體算法如下所示:

    1)查找碎片:從當前目錄開始,順序遍歷其目錄項,將一個有效文件作為起始,下一個相鄰的有效文件作為終止,如果前一個文件的大小小于兩文件的間隔,證明兩文件間存在碎片。
    2)計算碎片大小,將兩文件的間隔大小減去前一個文件的空間的大小,則得到碎片空間大小。
    3)如果碎片空間太小,則轉向1繼續查找。
    4)遍歷碎片中無效文件,備份碎片起始地址。
    5)回到碎片的起始地址。

    3. 2 壞損頁面的管理

    對于NOR Flash,一般情況下擦寫次數是十萬次,在使用過程中,數據區某些頁面可能由于物理原因或者經常操作,可能出現某些頁面壞損的情況,這有可能導致整個Flash芯片不能正常工作。為了延長Flash的使用壽命,對于壞損頁面必須進行有效地管理,在這采用頁面映射技術[ 1 ] ,也就是將壞損頁面邏輯頁面號映射到的好的頁面上去。通過寫校驗來檢查當前頁面是否壞損,如果壞損,就將壞損頁面號和映射頁面號添加到壞損頁面映射管理表中,映射頁面號取值應為數據區可用頁面最大頁面號。在讀寫操作中,如果讀寫物理地址所在頁面是壞損頁面,那么就需對壞損頁面進行映射處理,其處理流程如下所述:

    1)根據讀寫操作的邏輯地址,來確定數據區物理地址,從而來確定當前數據區頁面號。
    2)根據頁面號來遍歷壞損頁面映射表,如果此頁面號在壞損頁面映射表中存在,那么就進行地址映射, 修改讀寫地址。

    為了提高讀寫的速度,對讀寫數據長度進行比較處理,判斷所處理的地址涉及的頁面情況:一是所有處理的數據在一個頁面;二是所有處理的數據在兩個頁面。這樣在讀寫操作中最多核查壞損頁面映射表兩次,沒必要在讀寫操作時,頻繁判斷讀寫地址所在頁面情況,可大大提高讀寫的速度。

    3. 3 平均磨損技術

    平均磨損就是使有壽命期限的Flash的各個部分同時到達壽命期限,平均磨損技術的主旨是在空間的使用上能夠均勻的使用Flash每個頁面,保證某些頁面不至于先于其他頁面達到磨損界限,平均磨損技術的引入提高了Flash 的使用壽命期限。平均磨損技術以碎片空間回收技術、存儲空間分配方式和頁面映射為基礎,來使Flash損耗達到平衡。在刪除文件時,它的物理內存空間并沒有立即釋放,即將當前目錄下該文件的目錄項狀態置為無效文件標志位,表明處于邏輯刪除狀態,所有被刪除文件并沒有在物理空間被清空,只改變文件的狀態。在分配空間時,并不是從當前目錄起始地址開始搜索空閑空間,而是從當前目錄下尋找可用空間,這樣可以最大限度地保證均衡使用每個頁面。

    由于NOR Flash擦寫次數是有限的,對于特定的應用數據區,若經常擦寫,可能導致Flash局部區域過早老化,為了延長Flash的使用壽命,對特定應用文件的頁面進行頁面映射,在管理上與壞損頁面塊映射一致,不過在這對特定應用文件的頁面加入一個特定的計數器,如果計數器達到特定的峰值時,就需對這些特定應用的頁面進行頁面映射。在整個3GEVDO卡中,讀要比寫操作頻繁,而且少數特定文件存在經常擦寫的現象,如號薄文件、短信息文件等,對于這些特殊文件可以特殊處理,沒必要對整個數據區文件進行處理,這樣全面考慮能提高智能卡整體性能。

    3. 4 掉電保護機制

    在數據的一次寫過程中,由于Flash物理特性,需要先擦除要改寫的地址空間所在的頁面,每次擦除的物理頁面大小為512 Byte,所以要將這整個頁面備份,防止在改寫過程中出現突然掉電,導致數據丟失的情況發生。在這采用舊數據備份[ 4 ]的方式,數據在當前頁面得到全部更新以后才認為更新成功,否則自動恢復到原始狀態。備份區是個經常擦寫的地方,為了保證備份區的有效性,這配置了多個安全備份區,以達到循環使用,均衡擦寫。改寫Flash有兩種情況,如圖4所示(圖中斜線部分為改寫的數據段) ,一種情況改寫數據在一個Flash頁面;另一種情況改寫數據涉及了兩個Flash頁面。舊數據備份具體算法如下所示:

    1)將要改寫數據段的Flash頁面的所有數據備份到備份區中。
    2)數據備份完成后,將備份標志位置為有效,并將有效的標志位和改寫的地址保存到標志區。
    3)數據開始更新,依次將數據寫入目標地址。
    4)備份標志位復位,表示改寫成功,并將復位的標志寫入到標志區。

    安全寫恢復流程算法:查看Flash備份標志位是否有效,如果無效表示不需要進行數據安全寫恢復操作,結束流程;如果有效,表示要進行數據安全寫的恢復操作,步驟如下所示:

    1)讀取備份的數據,根據備份的地址,對數據進行恢復操作。
    2)所有的數據恢復成功之后,將備份標志位復位,將復位的標志位寫入標志區。

 

第1頁第2頁

本文關鍵詞:3G,智能卡系統,COS,智能卡
回到頂部