(信号与信息处理专业论文)通用java智能卡平台的研究.pdf_第1页
(信号与信息处理专业论文)通用java智能卡平台的研究.pdf_第2页
(信号与信息处理专业论文)通用java智能卡平台的研究.pdf_第3页
(信号与信息处理专业论文)通用java智能卡平台的研究.pdf_第4页
(信号与信息处理专业论文)通用java智能卡平台的研究.pdf_第5页
已阅读5页,还剩56页未读 继续免费阅读

(信号与信息处理专业论文)通用java智能卡平台的研究.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

北京邮电大学硕士研究生论文摘要 通用j a v a 智能卡平台的研究 摘要 现在,手机已经成为了人们日常生活中一个必不可少的部分。在 以前,s i m ( s u b s c r i b e er i d e n t i t ym o d u l e ) 卡只是起了一个简单的记 录用户信息和入网身份鉴权的作用,后来在g s m ( g l o b a ls y s t e mf o r m o b i l ec o m m u n i c a t i o n s ,全球移动通讯系统) 的网络中,规定了只能 有一个g s m 的应用,在s i m 卡上通过s t k ( s i m t o o l k i t ,s i m 工具包) 功能开发了一些增值业务,但这些增值业务只是附庸在g s m 这个电信 应用之下的,根本没有实现多应用的概念。 但是在3 g ( 3g e n e r a t i o n ,第三代移动通讯) 到来之后,由于下行速率 的增强,从运营商或者s p ( s e r v i c ep r o v i d e r ,服务提供商) 下推业 务就会变得很流畅,这样各种不同的业务就会层出不穷,所以3 g p p 组织规定了一个实现多应用平台的u i c c ( u n i v e r s a li n t e g r a t e d c i r c u i tc a r d ,通用集成电路卡) 规范,在这个平台上就可以实现真 正的多应用了,不再只有g s m 这个单一的应用了,像银行,运输等等 方面的业务都可以单独成为一个应用,不必再通过s t k 功能附属于 g s m 这个电信的应用了。在这种情况下,j a v ac a r d 具有了得天独厚 的优势,通过j a v ac a r d 的动态下载机制,可以在卡出产以后通过短 消息或者g p r s 等形式将不同的应用下载到卡上,不像传统的s i m 卡, 增加一个业务就必须重新换一张卡,j a v ac a r d 既为用户节约了成本, 又能提高增值业务的使用率,为运营商或者s p 创造更多的利润。 在这个大的背景前提下,我觉得完成一张真正意义上的u s i m 卡是 很有意义的一件事情,在过去两年多与国内某知名电信企业的合作研 究开发中,我主要从u i c c 及u s i m 的规范入手,设计了一套符合u i c c 平台的文件系统,开发出了一张u s i m 卡,并且按照s t k 的方式设计 了一些增值业务,包括我在第六章中所介绍的这个a p p l e t ,“s m s h e l p e r ”。 关键词:j a v ac a r d ,j a v ac a r dr u n t i m ee n v i r o n m e n t ,u i c c ,u s i m , u s a t 北京邮电大学倾士研究生论文 英文摘要 r e s e a r c ho nu n i v e r s a lj a v as m a r tc a r d p l a t f o r m a b s t r a c t n o w a d a y s ,m o b i l ep h o n eh a sb e c o m ea ni m p o r t a n tp a r ti nt h e p e o p l e sd a i l yl i f e f o r m e r l y , s i mc a r dw a sj u s tr e s p o n s i b l ef o rt h e s u b s c r i b e r s a u t h o r i t y t h e ni ng s mn e t w o r k i tp r e s c r i b e dt h a tt h e r e m u s tb eo n l yo n ea p p l i c a t i o no nt h es i mc a r dw h i c hw a st h eg s m a p p l i c a t i o n t h r o u g h o u tt h ef u n c t i o no fs t k m a n ys u p p l e m e n t a r y s e r v i c e sh a db e e nd e v e l o p e do nt h a tp l a t f o r m b u tt h o s es u p p l e m e n t a r y s e r v e i c e sw e r ea d h e s i v et og s m a p p l i c a t i o n t h ec o n c e p t o f m u l t i a p p l i c a t i o n sh a dn o tb e e ni m p l e m e n t e dy e t a st h e3 g sc o m i n g ,v a r i o u ss e r v i c e sw i l lc o m ei n t ou s eb e c a u s eo f t h eh i g hs p e e do ft h es i g n a lt r a n s p o r t a t i o n t h e3 g p pe s t a b l i s h e du i c c s p e c i f i c a t i o nf o rt h em u l t i a p p l i c a t i o n s p l a t f o r m t h e r ec a ne x s i tm a n y a p p l i c a t i o n ss i m u l t a n e o u s l yo nu i c cp l a t f o r m s u c ha st h eb a n k i n ga n d t r a n s p o r t a t i o na p p l i c a t i o n u n d e rt h i ss i t u a t i o n ,j a v ac a r dw i l lt a k eag r e a t e f f e c to nt h es e r v i c e s d y n a m i cd o w n l o a d i n g j a v ac a r dw i l ln o to n l ys a v e t h ec o s tf o rt h es u b s c r i b e r s ,b u ta l s o b r i n gt h eo p e r a t e r sa n ds p si n t r e m e n d o u sp r o f i t s i nt h i sc a s e it h i n ki ti sv e r ym e a n i n g f u lt ob u i l daj a v ac a r dw h i c h a b i d e sb yt h eu i c c s p e c i f i c a t i o n i nt h ep a s tt w oy e a r s is t a r t e dw i t ht h e l c ca n du s i m s p e c i f i c a t i o n sa n dt h e nd e v e l o p e daj a v au s i mc a r d s f i l es y s t e mt h r o u g ht h ec o o p e r a t i o nw i t had o m e s t i ct e l e c o mc o m p a n y m o r e o v e r , id e s i g n e dm a n ys u p p l e m e n t a r ys e r v i c e so nt h eu s i mc a r d , t h ea p p l e td e s c r i b e di nc h a p t e r6i sag o o de x a m p l e k e yw o r d s :j a v ac a r d ,j a v ac a r dr u n t i m ee n v i r o n m e n t ,1 5 i c c , u s i m ,u s a t 独创性( 或创新性) 声明 本人声明所呈交的论文是本人在导师指导下进行的研究工作及取得的研究 成果。尽我所知,除了文中特别加以标注和致谢中所罗列的内容以外,论文中不 包含其他人已经发表或撰写过的研究成果,也不包含为获得北京邮电大学或其他 教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任 何贡献均已在论文中作了明确的说明并表示了谢意。 申请学位论文与资料若有不实之处,本人承担一切相关责任。 本人签名:套燃 日期:鱼型! ! 王 关于论文使用授权的说明 学位论文作者完全了解北京邮电大学有关保留和使用学位论文的规定, 即:研究生在校攻读学位期间论文工作的知识产权单位属北京邮电大学。学 校有权保留并向国家有关部门或机构送交论文的复印件和磁盘,允许学位论 文被查阅和借阅;学校可以公布学位论文的全部或部分内容,可以允许采用 影印、缩印或其它复制手段保存、汇编学位论文。( 保密的学位论文在解密 后遵守此规定) 保密论文注释:本学位论文属于保密在一年解密后适用本授权书。非保密论 文注释:本学位论文不属于保密范围, 本人签名:达查热 导师签名:超碰 适用本授权书。 日期: 日期: 沙6 ? ,肖 到:i ! 丝 北京邮电人学硕士研究生论文第一章引言 第一章引言 智能卡主要分为两类:一类是包含有微处理器并具有读、写和计算功能的智 能卡( 如小型微电脑) :另一类是没有微处理器的内存卡,它只能存储信息。传统 的智能卡拥有一整套安全保密控制机制,安全控制程序被固化在只读存储器之 中,因而具有无法复制和密码读写等可靠的安全保证,被广泛地应用于电话卡、 金融卡、身份识别卡以及移动电话、付费电视等领域。 j a v ac a r d1 o 最初是由工程i ) 币s c h l u m b e r g e r 提出。它最初只有a p i ( a p p l i c a t i o np r o g r a m m i n gi n t e r f a c e ,应用程序接口) 协议,后来,其他公司,例如: b u l l 和g e m p l u s ,参加到s c h l u m b e r 鼯r 中来,并形成j a v ac a r d 论坛,这个是一个 工业社团,他们主要为将j a v ac a r d 技术运用到智能卡技术而努力。最后s u n 也参 与到j a v ac a r df o r u m 中来,和其他智能卡工业一起开发出j a v ac a r d2 0 。 1 1j a v ac a r d 简介及与传统智能卡的区别 j a v ac a r d 技术提供了一种开放式开发构架。现在的智能卡开发者可以开发 出在多种智能卡上应用的程序。不同的应用程序可以在同一个卡上运行。这个就 是开放式的智能卡开发,它独立于卡片提供商,特别适用于那些小内存的应用, 例如:拨号用户识别模块。s i m 卡是一种更小更底层的卡片。 除此之外,j a v a 平台拥有的诸多特性,也使其成为智能卡设备的理想选择。 如:j a v a 字节码比本机代码小,因此只需要很小的代码存储空问:j a v a 编程语言 是面向对象语言,允许代码实现模块化和多用途化,不需要把所有应用代码永久 地驻留于设备;使用j a v a 平台,代码就可以仅在需要时下载至设备;j a v a 应用环 境的安全可靠特性( 包括消除指针、直接存储器存取、边界检查、防止非法丢弃 和栈溢出) ,将保证未经授权的对象不能从消费设备的本地存储器中读写数据或 代码。 j a v ac a r d 除具有传统智能卡的数据安全性之外,它最大的特点就是j a v a 技术所特有的平台无关性。以前在智能卡上开发一种增值业务,智能卡的制造商 必须根据运营商的要求修改底层的卡上操作系统,重新定制一套c o s ( c h i p s o p e r a t i n gs y s t e m ,:吝片操作系统) 。而且几乎所有的c o s 都是用汇编语言等特定 于某款芯片的低级语言开发,具有开发周期长、成本高的缺点。此外,每张卡片 上的应用都是固定的,售出后在卡片的整个生命周期内不可能增加新的应用。 但这些对j a v ac a r d 来说都不是问题,因为j a v ac a r d 上有一个核心组件虚 拟机,负责解释执行字节码j a v a 源代码经编译后生成的一种目标代码1 ,这也正 是j a v ac a r d 与普通s m a r tc a r d 的本质区别。有了这个虚拟机,卡上的所有应用都 可以用j a v a 语言来开发,开发人员不需要了解底层的硬件结构和相关指令集,只 北京邮电大学硕二卜研究生论文 第一章引言 需调用卡上提供的一套通用a p i 就可以了。新业务的增加也没有必要修改底层系 统,底层系统对应用开发都来说是透明的,这无疑就大大缩短了增值业务的开发 时间,既降低了开发人员的工作强度又节约成本。除此之外,j a v ac a r d 的另个 优势在于它的一卡多用和应用的动态增减上。由于有了j a v ac a r d 虚拟机和运行时 环境( 以及o p e n p l a t f o r m ) 这样一个通用的应用平台,卡片售出后,它的制造商 或者独立的服务供应商都可以在获得用户授权的情况下,把新增服务以短消息的 形式动态下载到卡上,下载过程不会影响用户对卡片的正常使用。随着卡上业务 的增加,普通的一张智能卡就不再是传统意义上的智能卡了,比如平时用来通信 的卡片,现在也可以用作身份证卡、金融卡、电子钱包,使智能卡真正成为信息 时代的标志。所有的这些,对智能卡的制造商、服务供应商和运营商来说都具有 极大的吸引力。 1 2 j a v ac a r d 的应用 j a v ac a r d 几乎可以用在传统智能卡适用的各个领域,包括:移动电话内的 s i m 卡,提供在线或离线交易的金融卡,政府发行的身份证卡和个人信息管理卡, 用于访问企业资源的逻辑物理存取卡等。 美国运通银行与v i s a 组织已经选择j a v ac a r d 技术作为智能卡应用的开发 平台。基于j a v ac a r d 技术的智能卡解决方案能支持许多增值业务,如:储值卡、 m a s t e rc a r d 、v i s a 转账信用卡、信用卡忠诚系统与网际网路的公钥验证等。 许多国家的政府机构新发行的身份卡采用含有j a v a c a r d 技术的智能卡来取 代原来的“纸张”式身份证。前几年美国联邦航空总署采用了j a v ac a r d 技术平 台制作了第一个用于全美国运输工作者身份识别的运输工会卡。美国国防部也发 出四百三十万张的通用进出卡,给美国现役人员与合格的聘雇人员。台湾也将为 二千四百万的公民换发内含j a v ac a r d 技术的健保新卡。 电信业者如中国移动、法国电信、香港电信、o r a n g e 、s w i s s c o m 、t e l e c o m i t a l i am o b i l 和t e l e f o n i e a 等各国运营商,都已经发行了数百万个内含j a v a c a r d 技术的s i m 卡。 得益于业务开发的简化和增加新业务的低成本,在可以预见的将来,j a v a c a r d 技术的应用将会越来越多,到时候j a v ac a r d 必将深入到我们生活的每一 个角落。 1 3j a v ac a r d a p i j a v ac a r d2 1 规范中规定了一些a p i ,这只是j a v aa p i 中很小的一个子集, 这主要是由于j a v a c a r d 硬件条件所限。j a v ac a r d 的2 1 版总共分为四个 p a c k a g e s ,而其内容与重要的物件分述如下: 北京邮电大学硕j 二研究生论文第一章引言 j a v a c a r d 1 a n gp a c k a g e :提供j a v al a n g u a g e 重要的c l a s s e s ,如o b j e c t 物 件,因为所有的j a v a 物件皆继承其下。 o b j e c tc l a s s :整个j a v a 类的根。 t h r o w a b l ec l a s s :为所有e r r o r 及e x c e p t i o n 的s u p e rc l a s s ,这亦表示j a v a c a r d 支援e x c e p t i o n 。 j a v a c a r d f r a m e w o r kp a c k a g e :是j a v ac a r da p i 主要的c o r ep a c k a g e ,提供 了实做j a v ac a r da p p l e t 基本的物件与工具。 i o s 7 8 1 6a b s t r a c ti n t e r f a c e :提供了i s 0 7 8 1 6 所使用的常数值。 p i na b s t r a c ti n t e r f a c e :使其s u b c l a s s 能透过此一介面能够做c h e c k p i n ( p e r s o n a li d e n t i t yn u m b e r ) n u m b e r 及验证 p i n 是否为v a l i d a t e 等功能。 s h a r e a b l ea b s t r a c ti n t e r f a c e :使得不同的a p p l e t s 能够透过i m p l e m e n t 此 介面来达到互相沟通的功能。 a i dc l a s s :a i d ( a p p l i c a t i o ni d e n t i f i e r ) 是用来唯一表示j a v ac a r da p p l e t 的n u m b e r ,使得j c r e ( j a v a c a r dr u n t i m ee n v i r o n m e n t ,j a v a c a r d 运行环境) 能够透过一个a i dt a b l e 来识别或选择我们所要执行的 a p p l e t 。 a p d uc l a s s :是属于j c r e 的物件,是藉由m a i n t a i n 一个b y t ea r r a yb u f f e r 来 接收与传送t e r m i n a l 端的指令与回传a p p l e t 执行的结果与状态的 标准格式。 a p p l e tc l a s s :每一个j a v ac a r da p p l e t 都必须继承在此c l a s s 之下。其中 在i m p l e m e n t 时要特别注意几个m e t h o d s ,如s e l e c t 、d e s e l e c t 是当t e r m i n a l 端跟据a p p l e t 的a i d 下达s e l e c t 或d e s e l e c t 此 a p p l e t 的指令时,由j c r e 来启动的m e t h o d s 。而i n s t a l l 与 r e g i s t e r 则是a p p l e t 下载至j a v ac a r d 安装并向j c r e 注册之 m e t h o d s 。等到a p p l e t 安装注册完成,并且被t e r m i n a l 所s e l e c t 时,所有下达的a p d u ( a p p l i c a t i o np r o t o c o ld a t au n i t ,应用 协议数据单元) c o m m a n d 皆会交由a p p l e t 的p r o c e s sm e t h o d 来处 理并负责回传结果。 j c s y s t e mc l a s s :负责管理a p p l e t 与j a v ac a r d 的系统资源,如a i d 与 t r a n s a c t i o n 的管理。 o w n e r p i nc l a s s :继承自p i ni n t e r f a c e ,负责m a i n t a i n 卡片持有人的p i n n u m b e r ,并提供相关c h e c k 与u p d a t e 等m e t h o d s 。 u t i lc l a s s :是一个提供常用工具的c l a s s ,如b y t ea r r a yc o p y 与c o m p a r e 北京邮电大学硕士研究生论文 第一章引言 等。 j a v a c a r d s e c u r i t yp a c k a g e :提供安全机制与物件的p a c k a g e ,其中几个重要 的i n t e r f a c e 与c l a s s 如下: k e ya b s t r a c ti n t e r f a c e 一是d e s k e y 、p r i v a t e k e y 、p u b l i c k e y 等 i n t e r f a c e 的共同介面 k e y b u i l d e rc l a s s 一是一个c r e a t e 各种安全的k e y 的f a c t o r y m e s s a g e d i g e s tc l a s s 一是一个可以将m e s s a g e 做数位签章之o b j e c t j a v a c a r d x c r y p t op a c k a g e :其中包含了关于加密与安全的物件,并且有 美国的出口限制,而此p a c k a g e 仅包含了一 个i n t e r f a c e 与一个a b s t r a c tc l a s s : c i p h e ra b s t r a c tc l a s s 一使得在j a v ac a r d 中的资讯得以加密保 护 1 4 j a v as i m 卡 s i m 卡,是国际移动用户身份识别模块,简称用户识别卡,它是一张符合g s m 规范的智能卡,是g s m 数字移动电话的核心。 s i m 卡的功能主要是存储数据,用户入网时进行身份鉴权,以及通信过程中 对信息做必要的加密处理。s i m 卡内有永久存储单元,可以保存用户的私有数据 如电话薄、通信记录和短消息等。s i m 卡入网时要与网络服务中心进行身份鉴权, 鉴权过程需要的几个要素:p i n 码、i m s i ( i n t e r n a t i o n a lm o b i ls u b s c r i b e r i d e n t i f i e r ,国际移动台用户识别码) 码、a 3 和a 8 算法、k c 和k i 密钥都存储 在s i m 卡的受保护数据区里,有效地防止假冒用户身份等违法行为,保护了用户 的合法利益。 随着个人通信时代的到来,越来越多的人拥有了自己的移动通信工具,s i m 卡作为个人移动通信中不可缺少的核心部件,对用户和电信运营商来说都是十分 重要的。终端用户希望自己的移动电话具有丰富的可以定制的功能,满足个性化 时代的需要;运营商则希望灵活地应对市场需求,快捷、低成本地推出新的业务。 但是传统s i m 卡不具有平台无关的特性,丌发新的应用周期长,而且卡片一旦售 出就不可能再增加新业务,只能更换新卡,这是用户和运营商都不堪忍受的。因 此,必须改变在传统s i m 卡推出新的增值业务所面临的低效、高成本、对开发人 员技术要求过高等局面。这正是j a v as i m 卡的用武之地。 j a v as i m 卡就是采用了j a v ac a r d 技术的s i m 卡。一张最基本的j a v ac a r d 包括以下几个组件:解释执行字节码的虚拟机、管理卡上资源的运行时环境、为 开发者提供的通用a p i 。这三个组件为普通业务的开发提供了最基本的保障,但 如果要开发特定于某个领域的应用,如g s m 应用,这些还不够。与普通s i m 卡相 4 北京邮电大学硕士研究生论文第一章引言 同,满足g s m 应用的j a v ac a r d 必须能够处理g s m l l 1 1 规范里定义的a p d u 指令, 而要处理这些指令就必须在卡上建立一个g s m 文件系统,如果要支持s t k 功能还 必须满足g s m l1 1 4 规范关于主动命令方面的规定,这些功能都不是基本j a v a c a r d 所能提供的,所以必须在此基础之上建构一层g s m 应用平台,为开发者提 供g s m 应用接口。这方面的内容正是本文将要重点讨论的地方。 1 5 论文组织 本文第一章主要介绍了智能卡、j a v a c a r d 以及j a v as i m 卡的相关知识,并 且说明了j a v a c a r d 与传统智能卡的区别,对全文的组织结构给予了一个大致的 介绍。第二章主要描述我们项目所使用的硬件平台特性和j c r e 的相关机制。接 下来在第三章和第四章分别介绍了u i c c 平台的文件系统和平台的安全特性。第 五章主要是对于u s i m 应用工具包的介绍。第六章是j a v a c a r d 上应用开发相关知 识的描述。最后一章是对整个论文工作以及j a v ac a r d 在3 g 中的一个前景展望。 在整篇论文中,我所做的工作除了介绍一些u i c c 平台的基本知识外,还重点在 三、四、五三章中描述了我在项目开发过程中对实现o l c c 平台所总结的一些自 己经验,在第六章中,我结合了a p p l e t 的开发方法,在实现了u i c c 平台后,进 行了一系列增值业务的开发,本篇论文中写到的s m st e l p e r 是其中之一。 北京邮电大学硕士研究生论文第二章项目硬件平台及j c r e 得相关机制 第二章项目硬件平台及j c r e 的相关机制 在硕士阶段本人通过实验室与某知名电信企业进行项目合作,主要进行的就 是j a v ac a r d 平台的研究,项目合作过程中,我们使用的硬件平台是a r m 7 系列 的芯片,另外根据s u nj c r e 2 2 0 系列规范的要求,我们在自己的平台上实现了 一张符合国际标准的j a v ac a r d 。这一章中,我简要介绍一下项目开发过程中的 硬件平台以及我们在j a v ac a r d 的研究过程中对于j c r e 相关机制的理解。 2 1 j a v ac a r d 硬件平台简介 我们使用的是a r m 7 系列的芯片,它是一种低价位、性能良好的应用于智 能卡a p p l i c a t i o n 的芯片。基于1 6 3 2 一b i ts c l 0 0r i s c 内核的处理器。s c l 0 0 内核是一种低功耗、通用微处理器用于特殊应用或者定制。我们应用的芯片c m o s 微处理器用于低压s m a r tc a r d 智能卡应用。c p u 是快速安全的a r m3 2 一b i ts c l 0 0 内核,有:8 - k b y t em a s kr o m ,2 5 6 一k b y t ep r o g r a mf l a s h ,6 4 一k b y t ed a t af l a s h , 8 - k b y t es r a m ,1 6 - b i tr a n d o mn u m b e rg e n e r a t o r ,1 6 一b i tt i m e r s ,ap o w e r o n r e s e t ,c r y p t oa c c e l e r a t o r ,d e s ,u a r t ,和大量的s e c u r i t yc i r c u i t s 。 我们的芯片是8 一p i nc o bp a c k a g e ,其串行i o 完全兼容于i s 0 7 8 1 6 。 s 0 1 0 0 s c l 0 0 是a r m 家族s e c u r e c o r e3 2 一b i t 微处理器一种。用于安全应用并包含大 量此类特性。 s c l 0 0 支持3 2 一b i ta r m 和1 6 一b i tt h u m b n 令集。可以在h i g hp e r f o r m a n c e 和 高密度间交替使用。基于r i s c 原则,s c l 0 0 的特性有:大指令吞吐量、高效实时中 断响应和小且划算的处理器宏单元三个特性。 s c l 0 0 特性应用于:指令p i p e l i n e 、内存访问、内存接口以及安全等四个方 面。 指令p i p e l i n e s c l 0 0 使用p i p e l i n e 提高传到处理器的指令流的速度。这表示几种操作可以 同时进行,处理和内存系统可以连续操作3 段p i p e l i n e ,指令可以分3 步执行: 读取( f e t c h ) 、解码( d e c o d e ) 、执行( e x e c u t e ) 。 但是p c 指向的是被f e t c h 的指令而不是正在执行的指令。在正常情况下,当 一条指令在执行的时候,他的后续指令处于被解码,第三条指令处于被从内存 f e t c h 的状态。 内存访问: s c l 0 0 是v o nn e u m a n n 结构,有单3 2 一b i t 数据总线传输数据和指令。只有l o a d , s t o r e ,和s w a p 可以从内存访问数据。数据可以是8 一b i tb y t e s , 1 6 一b i th a l f 北京邮电大学顶士研究生论文第二章项目硬件平台及j c r e 得相关机制 w o r d s ,或3 2 一b i tw o r d s 。w o r d 必须4 一b y t e 对齐,h a l fw o r d s 必须2 一b y t e 对齐。 内存接口: s c l o o 内存接口实现性能潜能,同时最小化内存占用。s p e e d c r i t i c a 控制 标准的流水使可以在标准l o w p o w e r 逻辑下执行系统控制函数。这些控制信号使 f a s t b u r s t 存取模式简易化,这种模式是当前许多卡内外的内存技术所支持的, s c l 0 0 有4 种基本内存周期: 1 i d l ec y c e 2 n o n s e q u e n t i a lc y c l e 3 s e q u e n t i a lc y c l e 4 c o p r o c e s s o rr e g i s t e rt r a n s f e rc y c l e 。 安全: s c l 0 0 提供了特殊的c o u n t e r m e a s u r e s 来防止对当前流的分析,并提供了 m e m o r y p r o t e c t i o nu n i t ( m p u ) 来限制内存访问权限。 指令压缩: 通常的微处理器结构数据和指令宽度一致。3 2 一b i t 的结构对于处理3 2 一b i t 数据性能良好寻址空间远远高于1 6 一b i t 的结构。1 6b i t 结构代码密度高于 3 2 一b i t 结构,性能优于3 2 b i t 性能的一半。 t h u m b 在3 2 一b i t 结构上实现了1 6 一b i t 指令集,提供了优于1 6 一b i t 结构的性能 以及高于3 2 一b i t 结构的指令密度。 t h u m b 指令集: t h u m b 是3 2 一b i ta r m 通用指令集的子集,每条1 6b i t s 长,有对应的在处理 器上的3 2 一b i ta r m 指令。t h u m b 指令和a r m 寄存器配置兼容,可以灵活的在a r m 和 t h u m b 状态下切换。执行中,1 6 咄i tt h u m b 指令实时解压成完整3 2 一b i ta r m 指令, 不会性能降低。t h u m b 具有所有3 2 一b i t 核的优点:3 2 一b i ta d d r e s ss p a c e 、3 2 一b i t r e g i s t e r s 、3 2 一b i ts h i f t e ra n da r i t h m e t i cl o g i cu n i t ( a i u ) 以及3 2 一b i tm e m o r y t r a n s f e r 。 t h u m b 还提供了长跳转,强大的算数操作,和大地址空间。 寄存器: 此芯片c p u 有3 7 寄存器:3 1 个通用3 2 一b i t 寄存器和6 个状态寄存器。 不是所有的寄存器均一直可用。这有赖于当前处理器的操作状态和模式。 我们项目开发过程中发现,在a r m 状态时,可以一直访问的有1 6 个通用寄存 器,1 2 个状态寄存器。在优先级模式下,切换成模式相关b a n k e d 寄存器。2 个寄 存器s e t s ,o fb a n k s ,也可以被访问,有懒于当前状态:a r m 状态寄存器集还是 t h u m b 状态寄存器集。 北京邮电大学硕士研究生论文 第二章项目硬件平台及j c r e 得相关机制 a r m 状态寄存器集包含1 6 直接寻址寄存器:r o r 1 5 ( 除了r 1 5 ,均为通用,可 以存储数据或者地址) 。附加的r 1 7 ( c p s r ,当前编程状态寄存器) 用于存储状态 信息。 t h u m b 状态寄存器集是a r m 状态寄存器集的子集。可以访问8 个通用寄存器 r o r 7 ,程序计数器( p c ) ,栈指针寄存器( s p ) ,链接寄存器( l r ) ,和c p s r 。 每种优先级模式均有相应的b a n k e d 栈指针,链接指针,保存处理状态寄存器 ( s p s r ) 。 在t h u m b 状态,寄存器r 8 一r 1 5 不在标准指令集中。可在必要时由汇编指令访 问作为快速临时存储。 异常 当正常的程序流的执行被中断就意味着产生了异常。比如处理转向外围中 断。在处理中断前必须保存处理器的状态,以便于在异常处理完毕时能够恢复程 序流的执行。异常可以同时发生。 为了异常处理,此芯片使用b a n k e dc o r er e g i s t e r s 来存储当前状态。前一 个p c 值和c p s r 内容c o p y 到r 1 4 ( l r ) 和s p s r 寄存器。p c 和c p s r 的模式b i t 位 赋值为正在处理的异常类型。此芯片核支持7 种异常。每种异常有固定地优先级 和相应的处理器优先权模式。 2 2j c i 皿的介绍 t h ej a v ac a r d 2 2r u n t i m ee n v i r o n m e n t ( j c r e ) 包括j a v ac a r d 虚拟机( v m ) , j a v ac a r d 应用程序接口( a p i ) 类( 包括专用的工业扩展) ,还包括他提供的其他支 持服务。 下面简要介绍一下我们在j a v ac a r d 项目的研究过程中所归纳出实现j a v a c a r d 技术,其j c r e 都应该满足哪些规定的动作、环境和机制。 2 2 1j c v m 生存周期 在p c 机或者是在工作站上运行的j a v av m ,可以看作是系统的一个进程,当 操作系统的这个进程结束了,j a v a 应用程序和对象就会被自动的清除掉。 在j a v ac a r d 技术中,v m 的寿命与卡的寿命相同,即使掉电,卡上保存的 大部分信息也不应该丢失。这可以利用一些永久的存储体技术来完成( 如 e e p r o m ) 。由于虚拟机和卡上的对象表征的信息都是应用程序的持久信息,所以 虚拟机应该以一直运行的姿态存在。掉电后v m 暂时停止运行,当上电复位后, v m 重新开始执行,并且从永久存储体里面恢复对象的堆。 总体上说,除了j a v ac a r dv m 的永久性,其他的特性与v m 相同。 北京邮电大学硕二f :研究生论文 第二章项目硬件平台及j c r e 得相关机制 对于j a v ac a r d ,第一步:对卡进行掩膜( m a s k ) ,第二步:对卡初始化; 第三步:发布和个人化;在卡进行初始化的时候,同时也对j c r e 进行了初始化, j c r e 产生f r a m e w o r k 对象,f r a m e w o r k 对象与虚拟机的生存期一样长,由于v m 和 f r a m e w o r k 对象的执行生存期都能够跨越c a d 的s e s s i o n ,所以由a p p l e t 生成的卡 的对象的生存期也可以跨越c a d 的s e s s i o n :( c a d 又叫做读卡器,c a r ds e s s i o n 是 指卡插入读卡器,加电,并进行a p b u s 流的交互的过程,当卡从读卡器中取出后, 一个c a r ds e s s i o n 就结束了。) 具有这种属性的对象就叫做持久对象。 j c r e 在下面的情况下应该使对象具有持久属性:当调用了a p p l e t r e g i s t e r 方法。j c r e 应该存储一个a p p l e t 实例的参数。j c r e 的实现者应该保证这种 a p p l e t 实例是永久性的。一个对象的参数存放在了其他永久对象的字段里面, 或者存放在其他类的静态字段里面,这是因为需要保持j c r e 内部数据结构的完 整性。 2 2 2 j a v aa p p l e t 的生存周期 在这里,a p p l e t 专指为j a v a 卡平台开发的a p p l e t 。一个a p p l e t 实例的寿命是 从调用a p p l e t r e g i s t e r 方法在j c r e 中成功注册开始计算的。用a p p l e t r e g i s t e r 方法注册过的a p p l e t - - 直存在,直到用a p p l e t 删除管理器将其删除。j c r e 通过下 面几个a p p l e t 公用的方法i n s t a l l ,s e l e c t ,p r o c e s s ,d e s e l e c t 与a p p l e t 进行交 互。通常a p p l e t 都要能够实现静态的i n s t a l l ( b y t e s h o r t ,b y t e ) 方法。如果 不能实现i n s t a l l ( b y t e ,s h o r t ,b y t e ) 方法,就无法创建a p p l e t 的对象,也不 能完成初始化。j c r e 的具体实现对i n s t a l l ,s e l e c t ,p r o c e s s ,d e s e l e c t 方法的 调用按下面的规定进行。 把a p p l e t 安装到卡上的时候,j c r e 调用i n s t a l l ( b y t e ,s h o r t ,b y t e ) 方法, 来为每一个a p p l e t 产生实例。j c r e 不能够直接调用a p p l e t 的构造器。 安装方法 在调用i n s t a l l 方法的时候,a p p l e t 实例并没有创建,a p p l e t 的i n s t a l l 方法的主要任务是用他的构造器产生a p p l e t 子类的实例,并对其进行注册。在 实例的生存期间,只要可能,所有的可能用到的对象,都可以产生;如果可能, 还可以完成c a d 对a p p l e t 选择和访问操作所需要的准备:亡作。 i n s t a l l 方法从引入的字节数组参数中得到初始化的参数。 通常a p p l e t 生成各种对象,并用预先设定的值进行初始化、设置内部的静 态变量,调用a p p l e t r e g i s t e r 0 或者a p p l e t r e g is t e r ( b y t e ,s h o r t ,b y t e ) 方法设定a i d ( a p p l e ti d e n t i f i e r ,在i s o7 8 1 6 5 中有定义) ,在调用选择方 法的时候,用a i d 来进行身份识别。如果a p p l e t r e g i s t e r 方法没有产生异常, 9 北京邮电大学硕= e 研究生论文第二章项目硬件平台及j c r e 得相关机制 就说明安装成功了。如果没有调用a p p l e t r e g i s t e r ,或者安装方法在调用 a p p l e t r e g i s t e r 之前出现异常,又或者a p p l e t r e g i s t e r 调用产生异常,视为 安装失败。 在j c r e 重新获得控制权后,他负责处理所有的清除任务,也就是说还原所 有的自动更新的持久性数据。 如果安装成功,j c r e 可以对a p p l e t 进行标记,表示他可以被选择。 在每次j c r e 调用a p p l e t i n s t a l l 方法的时候,只能成功的注册一个a p p l e t 实例。 a p p l e t 的s e l e c t 方法 在a p p l e t 被显式的选择之前,它一直保持悬挂状态。当j c r e 收到

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论