資料介紹
近年來,智能卡已經(jīng)越來越廣泛地應(yīng)用于社會生產(chǎn)、生活的各個領(lǐng)域,相關(guān)技術(shù)也得到了迅猛發(fā)展。Java技術(shù)具有安全、簡單、即時編譯和跨平臺的眾多優(yōu)點,將Java技術(shù)運用于智能卡的開發(fā)領(lǐng)域,已經(jīng)成為智能卡技術(shù)發(fā)展的熱點。Java卡是一種能運行Java應(yīng)用程序的智能卡,支持部分Java編程語言,是Java技術(shù)和智能卡的一個成功結(jié)合。Java卡技術(shù)的核心是Java卡虛擬機JCVM(Java Card Virtual Machine)。不同于一般的Java虛擬機,由于受到智能卡存儲與處理能力的限制,JCVM的可用資源非常有限。通常JCVM對于內(nèi)部資源的管理和使用非常嚴格。
1 JCVM和相關(guān)技術(shù)簡介
由于智能卡的可用資源非常有限,不可能在智能卡內(nèi)實現(xiàn)JCVM的全部功能,所以,通常將JCVM分為卡外虛擬機和卡內(nèi)虛擬機兩部分。卡外虛擬機可運行于一般的PC或SUN工作站上,主要工作是將由Java語言編寫的class文件轉(zhuǎn)換成為字節(jié)碼形式的CAP文件。而卡內(nèi)虛擬機在智能卡內(nèi)部實現(xiàn),負責裝載、執(zhí)行字節(jié)碼和支持Java語言。下面所說的JCVM主要是指卡內(nèi)虛擬機部分。Java卡應(yīng)用程序的開發(fā)和其他Java應(yīng)用程序的開發(fā)在最初階段基本相同,開發(fā)者編寫若干Java類源代碼,利用Java編譯器編譯成類文。然后,將相應(yīng)的類文件用Java卡轉(zhuǎn)換器轉(zhuǎn)換成為CAP文件,CAP文件相比起類文件更加緊湊、短小,將其下載到卡內(nèi)虛擬機。卡內(nèi)虛擬機執(zhí)行CAP文件中的代碼,完成應(yīng)用的安裝,使應(yīng)用處于能夠被卡內(nèi)虛擬機執(zhí)行的狀態(tài)。
對于JCVM的載體,Java卡的系統(tǒng)結(jié)構(gòu)如圖1所示。
![CVM中棧與幀的研究和設(shè)計解析](/uploads/allimg/171029/2362486-1G029102301b3.png)
Java卡系統(tǒng)主要由三個部分組成:COS和本地方法層、JCRE、Java卡應(yīng)用程序。其中,JCRE包括JCVM、Java Card API和企業(yè)添加類。
在系統(tǒng)結(jié)構(gòu)圖1中,位于最下層的COS和本地方法層主要用于對智能卡的硬件進行管理和操作。JCRE是Java卡的核心部分,主要工作是維護Java卡系統(tǒng)運行時的環(huán)境,同時也負責應(yīng)用的執(zhí)行和安全。JCVM是完成Java程序字節(jié)碼解析和執(zhí)行的主要部分。最上面的是Java卡應(yīng)用程序。Java卡允許一卡多用的存在,當卡中有多個應(yīng)用時,應(yīng)用需要通過被選擇,才能處于工作狀態(tài),其程序字節(jié)碼才能通過JCVM進行解析和執(zhí)行。
從圖1所示可以明確得到JCVM在Java卡內(nèi)所處的層次關(guān)系。JCVM本身是JCRE的一部分。JCVM通過調(diào)用COS提供的命令和一些本地方法,控制硬件的運算、存儲等操作。JCVM被各個Applet通過企業(yè)添加類和API調(diào)用,執(zhí)行應(yīng)用程序的字節(jié)碼。
2 JCVM實現(xiàn)難點
對于JCVM棧與幀結(jié)構(gòu)的實現(xiàn),主要難點可以歸結(jié)為以下幾點:
(1)智能卡因為其受到存儲空間的限制,需要一套科學有效的管理和利用方案,以保證存儲空間的高效使用。
(2)JCVM中棧與幀的結(jié)構(gòu)設(shè)計,需要做到既能高效地利用有限的空間,同時又能保證Java應(yīng)用程序正常執(zhí)行。
(3)在棧中,如何實現(xiàn)幀的創(chuàng)建和銷毀,這并非只是簡單地申請空間或釋放空間的操作,而且還包括整個程序執(zhí)行過程的相關(guān)動態(tài)鏈接、全局控制等數(shù)據(jù)的處理。
(4)如何符合規(guī)范地進行幀內(nèi)部數(shù)據(jù)的處理。
下面將就這些實現(xiàn)難點進行分析,提出設(shè)計思路和解決方案。
1 JCVM和相關(guān)技術(shù)簡介
由于智能卡的可用資源非常有限,不可能在智能卡內(nèi)實現(xiàn)JCVM的全部功能,所以,通常將JCVM分為卡外虛擬機和卡內(nèi)虛擬機兩部分。卡外虛擬機可運行于一般的PC或SUN工作站上,主要工作是將由Java語言編寫的class文件轉(zhuǎn)換成為字節(jié)碼形式的CAP文件。而卡內(nèi)虛擬機在智能卡內(nèi)部實現(xiàn),負責裝載、執(zhí)行字節(jié)碼和支持Java語言。下面所說的JCVM主要是指卡內(nèi)虛擬機部分。Java卡應(yīng)用程序的開發(fā)和其他Java應(yīng)用程序的開發(fā)在最初階段基本相同,開發(fā)者編寫若干Java類源代碼,利用Java編譯器編譯成類文。然后,將相應(yīng)的類文件用Java卡轉(zhuǎn)換器轉(zhuǎn)換成為CAP文件,CAP文件相比起類文件更加緊湊、短小,將其下載到卡內(nèi)虛擬機。卡內(nèi)虛擬機執(zhí)行CAP文件中的代碼,完成應(yīng)用的安裝,使應(yīng)用處于能夠被卡內(nèi)虛擬機執(zhí)行的狀態(tài)。
對于JCVM的載體,Java卡的系統(tǒng)結(jié)構(gòu)如圖1所示。
![CVM中棧與幀的研究和設(shè)計解析](/uploads/allimg/171029/2362486-1G029102301b3.png)
Java卡系統(tǒng)主要由三個部分組成:COS和本地方法層、JCRE、Java卡應(yīng)用程序。其中,JCRE包括JCVM、Java Card API和企業(yè)添加類。
在系統(tǒng)結(jié)構(gòu)圖1中,位于最下層的COS和本地方法層主要用于對智能卡的硬件進行管理和操作。JCRE是Java卡的核心部分,主要工作是維護Java卡系統(tǒng)運行時的環(huán)境,同時也負責應(yīng)用的執(zhí)行和安全。JCVM是完成Java程序字節(jié)碼解析和執(zhí)行的主要部分。最上面的是Java卡應(yīng)用程序。Java卡允許一卡多用的存在,當卡中有多個應(yīng)用時,應(yīng)用需要通過被選擇,才能處于工作狀態(tài),其程序字節(jié)碼才能通過JCVM進行解析和執(zhí)行。
從圖1所示可以明確得到JCVM在Java卡內(nèi)所處的層次關(guān)系。JCVM本身是JCRE的一部分。JCVM通過調(diào)用COS提供的命令和一些本地方法,控制硬件的運算、存儲等操作。JCVM被各個Applet通過企業(yè)添加類和API調(diào)用,執(zhí)行應(yīng)用程序的字節(jié)碼。
2 JCVM實現(xiàn)難點
對于JCVM棧與幀結(jié)構(gòu)的實現(xiàn),主要難點可以歸結(jié)為以下幾點:
(1)智能卡因為其受到存儲空間的限制,需要一套科學有效的管理和利用方案,以保證存儲空間的高效使用。
(2)JCVM中棧與幀的結(jié)構(gòu)設(shè)計,需要做到既能高效地利用有限的空間,同時又能保證Java應(yīng)用程序正常執(zhí)行。
(3)在棧中,如何實現(xiàn)幀的創(chuàng)建和銷毀,這并非只是簡單地申請空間或釋放空間的操作,而且還包括整個程序執(zhí)行過程的相關(guān)動態(tài)鏈接、全局控制等數(shù)據(jù)的處理。
(4)如何符合規(guī)范地進行幀內(nèi)部數(shù)據(jù)的處理。
下面將就這些實現(xiàn)難點進行分析,提出設(shè)計思路和解決方案。
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- 2021年中國互聯(lián)網(wǎng)醫(yī)療內(nèi)容行業(yè)研究報告 24次下載
- ZStack協(xié)議棧資源下載 19次下載
- 異構(gòu)文本數(shù)據(jù)轉(zhuǎn)換過程中解析XML文本的方法對比 9次下載
- 如何在實現(xiàn)工業(yè)物聯(lián)網(wǎng)應(yīng)用中實現(xiàn)多時隙幀調(diào)度算法 4次下載
- JAVA的堆和棧介紹和內(nèi)存機制中堆和棧的區(qū)別及變量在內(nèi)存中的分配
- 什么是棧?數(shù)據(jù)結(jié)構(gòu)中棧如何實現(xiàn)
- LWIP協(xié)議棧中Raw TCP中使用 17次下載
- 物聯(lián)網(wǎng)教程之ZStack無線協(xié)議棧的詳細資料概述 16次下載
- TCP/IP協(xié)議棧之路由器簡要分析 1次下載
- 基于FPGA的AVS幀內(nèi)預(yù)測的研究與設(shè)計單天燕 0次下載
- 基于ARM的LwIP協(xié)議棧研究與移植 65次下載
- 基于ARM的EPA通信協(xié)議棧優(yōu)化技術(shù)的研究與實現(xiàn) 32次下載
- oSIP協(xié)議棧的研究及應(yīng)用 15次下載
- GPON網(wǎng)管系統(tǒng)中OMCI協(xié)議的研究和實現(xiàn)
- 基于CVM的入侵檢測
- can標準幀和擴展幀的區(qū)別 2056次閱讀
- 如何采用“狀態(tài)機”解析UART數(shù)據(jù)幀 764次閱讀
- 如何高效解析不定長度的協(xié)議幀? 924次閱讀
- Linux中的進程棧、線程棧、內(nèi)核棧以及中斷棧 735次閱讀
- AUTOSAR通信協(xié)議棧的幾個問題(一) 2001次閱讀
- CAN標準數(shù)據(jù)幀和擴展數(shù)據(jù)幀的區(qū)別 1.3w次閱讀
- 內(nèi)存池在棧結(jié)構(gòu)中的性能設(shè)計實現(xiàn) 846次閱讀
- ARP協(xié)議在TCP協(xié)議棧中的地位 878次閱讀
- 數(shù)據(jù)結(jié)構(gòu)中堆棧出棧序列問題解析 3394次閱讀
- C++中的棧和堆區(qū)別 4826次閱讀
- 一文解析CAN總線遠程幀和錯誤幀 2.6w次閱讀
- vivado中的IP調(diào)用 vivado HLS的幀差圖像實現(xiàn) 4740次閱讀
- 明確區(qū)分堆與棧,堆和棧究竟有什么區(qū)別? 4448次閱讀
- 解析IEEE 802.11g的幀類型檢測 5127次閱讀
- 基于Python 算法實戰(zhàn)系列“棧”的干貨解析 3440次閱讀
下載排行
本周
- 1TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 2開關(guān)電源基礎(chǔ)知識
- 5.73 MB | 6次下載 | 免費
- 3100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 4嵌入式linux-聊天程序設(shè)計
- 0.60 MB | 3次下載 | 免費
- 5基于FPGA的光纖通信系統(tǒng)的設(shè)計與實現(xiàn)
- 0.61 MB | 2次下載 | 免費
- 6基于FPGA的C8051F單片機開發(fā)板設(shè)計
- 0.70 MB | 2次下載 | 免費
- 751單片機窗簾控制器仿真程序
- 1.93 MB | 2次下載 | 免費
- 8基于51單片機的RGB調(diào)色燈程序仿真
- 0.86 MB | 2次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33564次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關(guān)電源設(shè)計實例指南
- 未知 | 21548次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅(qū)動電路設(shè)計》 溫德爾著
- 0.00 MB | 6653次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537796次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191185次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183278次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論