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

一種Java卡包數(shù)據(jù)管理方法

文檔序號:8339528閱讀:372來源:國知局
一種Java卡包數(shù)據(jù)管理方法
【技術領域】
[0001] 本發(fā)明涉及計算機技術領域,具體涉及一種Java卡包數(shù)據(jù)管理方法。
【背景技術】
[0002] 隨著金融電子化的全面發(fā)展,為解決用戶對一卡多用的需要,支持多應用的Java 卡得到了越來越多的普及應用。Java卡技術是一項新興的智能卡技術,是一個開放的多應 用平臺,依據(jù)Oracle Javacard規(guī)范,Java卡中的多應用是以包為單位進行代碼管理的。 Java卡的應用基于包數(shù)據(jù)的下載和訪問而展開,因此,包數(shù)據(jù)管理是Java卡操作系統(tǒng)的基 本功能模塊。
[0003] 由于越來越多的金融應用對交易速度提出了更高的要求,比如閃付要求一次交易 的交易時間小于400ms,如何從包數(shù)據(jù)管理角度優(yōu)化數(shù)據(jù)訪問速度,是對Java卡提出的一 個新的功能需求;此外,智能卡的存儲空間通常較小,如何有效利用有限的存儲空間存儲更 多的多應用程序和數(shù)據(jù),是對包數(shù)據(jù)管理提出的另一個性能需求。因此,提出一種可參考的 高效的Java卡包數(shù)據(jù)管理實現(xiàn)方法,是一個迫切需要解決的問題。

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

[0004] 為解決上述問題,本發(fā)明的目的是提供一種Java卡包數(shù)據(jù)管理方法。
[0005] 本發(fā)明為實現(xiàn)上述目的,通過以下技術方案實現(xiàn): 一種Java卡包數(shù)據(jù)管理方法,Java卡以包為基本單位進行代碼管理,包要進行編號, 包的編號按順序遞增,數(shù)值介于1到128之間,包的管理包括添加包和刪除包Java卡包數(shù) 據(jù)包括包地址信息和包數(shù)據(jù)信息,所述包地址信息位于包地址表,所述包數(shù)據(jù)信息分為包 信息表和包組件數(shù)據(jù)兩部分,所述包信息表由基本信息、類組件、方法組件、靜態(tài)域組件和 導出組件五部分組成Java卡包數(shù)據(jù)的管理包括存儲機制和訪問方法,其中Java卡包數(shù)據(jù) 的存儲機制為包地址信息和包數(shù)據(jù)信息分離存儲。
[0006] 為進一步實現(xiàn)本發(fā)明的目的,還可以采用以下技術方案: 優(yōu)選的,對于包的編號進行管理,具體為:Java卡中最多存儲128個包,每個包的編號 介于1到128之間;包的編號在下載數(shù)據(jù)到卡片時確定,通過從小到大對包地址表中存儲的 地址進行遍歷來確定,如果某個地址為無效地址,則返回該地址對應的編號,如果全部地址 信息均為有效地址,則表示已達到最大包個數(shù)。
[0007] 優(yōu)選的,包地址信息和包數(shù)據(jù)信息分離存儲具體分為: (1) 包地址表在卡片出廠時確定存儲位置,從EEPROM申請128 X 4字節(jié)的空間來存儲每 個包的地址信息; (2) 包信息表和包組件數(shù)據(jù)在添加包數(shù)據(jù)的時候動態(tài)從EEPROM中分配空間;其中包信 息表的大小為5X4字節(jié),包括基本信息、類組件、方法組件、靜態(tài)域組件和導出組件五個部 分數(shù)據(jù)的地址及長度,其中每個部分數(shù)據(jù)的地址的空間大小為3字節(jié),長度的空間大小為1 字節(jié);包組件數(shù)據(jù)其大小由包組件實際數(shù)據(jù)的確定。
[0008] 優(yōu)選的Java卡包數(shù)據(jù)的訪問方法,具體步驟為: (1) 通過包的編號,從包地址表中得到包信息表的地址,步驟如下: ① 計算包地址表中的偏移量為包編號X4 ; ② 從計算出的偏移地址中讀取4字節(jié),即為該包信息表的地址; (2) 通過組件編號,從包信息表中得到包的組件數(shù)據(jù)的地址,步驟如下: ① 計算包信息表中的組件數(shù)據(jù)的偏移地址,即組件編號X4 ; ② 從計算出的偏移地址中讀取3字節(jié),即為該包的組件數(shù)據(jù)的存儲地址; (3) 從組件數(shù)據(jù)的存儲地址中,進一步根據(jù)組件數(shù)據(jù)特征讀取更進一步的數(shù)據(jù)信息。
[0009] 優(yōu)選的包的管理包括添加包和刪除包,其中添加包的步驟為: (1) 為待添加包分配一個編號:從小到大按4個字節(jié)為單元遍歷包地址表,如果當前地 址為無效地址,則返回該地址對應的包編號作為新包的編號,如果全部地址均為有效地址, 則表示已達到最大包個數(shù),添加失敗; (2) 在EEPROM中為待添加包的信息表分配5 X 4字節(jié)的空間,將地址寫入到包地址表的 相應位置; (3) 為待添加包的基本信息分配空間,并將該地址寫入到包信息表的前3個字節(jié); (4) 下載包組件數(shù)據(jù)到卡中,為這些組件數(shù)據(jù)分配空間,并將地址和數(shù)據(jù)長度根據(jù)組件 類型寫入到包信息表的合適位置。
[0010] 刪除包的步驟為: (1) 根據(jù)包的編號確定其包信息表的位置; (2) 按照基本信息、類組件、方法組件、靜態(tài)域組件和導出組件的順序,依次釋放組件數(shù) 據(jù)所占據(jù)的存儲空間; (3) 釋放包信息表所占用的存儲空間; (4) 將包地址表中該包對應的地址設置為無效地址。
[0011] 本發(fā)明的優(yōu)點在于: 本發(fā)明預先分配一塊128X4字節(jié)的空間存儲包地址表,避免了由多塊分散空間存儲 引起的數(shù)據(jù)訪問指針移動次數(shù)多、范圍大的問題,提高了包數(shù)據(jù)訪問的速度;在包信息表 中引入基本信息數(shù)據(jù)塊,減少了單獨存儲和維護引起的空間開銷和管理復雜度;包地址和 組件數(shù)據(jù)分離,組件數(shù)據(jù)在下載時候從EEPROM動態(tài)分配存儲空間,增加了空間利用的有效 性,實現(xiàn)在Java卡有限的存儲空間存儲更多的應用程序和數(shù)據(jù)。
【附圖說明】
[0012] 圖1為包地址表、包信息表和包組件數(shù)據(jù)的關系圖。
【具體實施方式】
[0013] 一種Java卡包數(shù)據(jù)管理方法,Java卡以包為基本單位進行代碼管理,包要進行編 號,包的編號按順序遞增,數(shù)值介于1到128之間,包的管理包括添加包和刪除包Java卡 包數(shù)據(jù)包括包地址信息和包數(shù)據(jù)信息,所述包地址信息位于包地址表,所述包數(shù)據(jù)信息分 為包信息表和包組件數(shù)據(jù)兩部分,所述包信息表由基本信息、類組件、方法組件、靜態(tài)域組 件和導出組件五部分組成Java卡包數(shù)據(jù)的管理包括存儲機制和訪問方法,其中Java卡包 數(shù)據(jù)的存儲機制為包地址信息和包數(shù)據(jù)信息分離存儲。
[0014] 為進一步實現(xiàn)本發(fā)明的目的,還可以采用以下技術方案: 優(yōu)選的,對于包的編號進行管理,具體為:Java卡中最多存儲128個包,每個包的編號 介于1到128之間;包的編號在下載數(shù)據(jù)到卡片時確定,通過從小到大對包地址表中存儲的 地址進行遍歷來確定,如果某個地址為無效地址,則返回該地址對應的編號,如果全部地址 信息均為有效地址,則表示已達到最大包個數(shù),通過對包進行編號的管理,可以有效提高數(shù) 據(jù)的訪問速度。
[0015] 優(yōu)選的,包地址信息和包數(shù)據(jù)信息分離存儲具體分為: (1) 包地址表在卡片出廠時確定存儲位置,從EEPROM申請128 X 4字節(jié)的空間來存儲每 個包的地址信息; (2) 包信息表和包組件數(shù)據(jù)在添加包數(shù)據(jù)的時候動態(tài)從EEPROM中分配空間;其中包信 息表的大小為5X4字節(jié),包括基本信息、類組件、方法組件、靜態(tài)域組件和導出組件五個部 分數(shù)據(jù)的地址及長度,其中每個部分數(shù)據(jù)的地址的空間大小為3字節(jié),長度的空間大小為1 字節(jié);包組件數(shù)據(jù)其大小由包組件實際數(shù)據(jù)的確定。在包信息表中引入基本信息數(shù)據(jù)塊,減 少了單獨存儲和維護引起的空間開銷和管理復雜度;通過將包地址信息和包數(shù)據(jù)信息的分 離存儲,避免由多塊分散空間存儲引起的數(shù)據(jù)訪問指針移動次數(shù)多,范圍大的問題,提高了 包數(shù)據(jù)訪問的速度;包地址和組件數(shù)據(jù)分離,組件數(shù)據(jù)在下載時候從EEPROM動態(tài)分配存儲 空間,增加了空間利用的有效性。
[0016] 優(yōu)選的,Java卡包數(shù)據(jù)的訪問方法,具體步驟為: (1) 通過包的編號,從包地址表中得到包信息表的地址,步驟如下: ① 計算包地址表中的偏移量為包編號X4 ; ② 從計算出的偏移地址中讀取4字
當前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1