CN101751718B - 提供两种操作系统环境的智能卡 - Google Patents
提供两种操作系统环境的智能卡 Download PDFInfo
- Publication number
- CN101751718B CN101751718B CN200810178306A CN200810178306A CN101751718B CN 101751718 B CN101751718 B CN 101751718B CN 200810178306 A CN200810178306 A CN 200810178306A CN 200810178306 A CN200810178306 A CN 200810178306A CN 101751718 B CN101751718 B CN 101751718B
- Authority
- CN
- China
- Prior art keywords
- smart card
- module
- operating system
- cos
- card
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Stored Programmes (AREA)
- Credit Cards Or The Like (AREA)
Abstract
本文描述了一种提供两种操作系统环境的智能卡20,包括:第一系统模块203,用于提供通用的嵌入式操作系统;以及第二系统模块202,其在所述第一系统模块的基础上实现,用于提供虚拟的卡片操作系统,并且其中,所述第二系统模块包括硬件抽象层模块,所述硬件抽象层模块用于通过由所述通用的嵌入式操作系统提供的接口来操作所述智能卡的各种硬件设备201。
Description
技术领域
本发明总体上涉及智能卡领域,更具体地,涉及一种提供两种操作系统环境的智能卡。
背景技术
随着电子信息技术的发展,智能卡已经被广泛应用于各个领域,如电信、银行、交通等等。智能卡是带有处理器的集成电路(IC)卡,它在一张芯片上集成了微处理器、存储器、输入输出单元(I/O)、加解密协处理器以及其它单元。传统的智能卡都是使用专门的卡片操作系统COS(ChipOperating System),这种操作系统的特点是其基本功能是针对ISO7816规范,依照智能卡的特点而专门设计的,因而资源占用低、运算速度快。但由于COS一般由各智能卡提供商分别设计和开发,因而其通用性很差。
随着智能卡处理器运算速度的提高和存储器容量的扩大,智能卡已经有能力可以运行各种通用的嵌入式操作系统,比如Symbian、Windows CE、Embedded Linux等。在智能卡硬件能力的快速发展下,这些通用的嵌入式操作系统取代传统的COS已是大势所趋。
然而,通用的嵌入式操作系统并不是专门针对ISO7816规范而设计的,它也不支持ISO7816所定义的各种与智能卡相关的特性和功能,比如文件体系、安全机制、对APDU的处理等,因而将通用的嵌入式操作系统以代替传统的COS的方式应用在智能卡上时,需要为了适应智能卡规范的要求而进行重新设计和大量的改动。同时,原来的基于传统的COS的应用程序在移植到通用的嵌入式操作系统上时,也需要为了适应新的操作系统的应用程序运行环境而做出修改。这些都是很复杂和繁琐的工作,会极大地浪费人力和物力。
因此,为了使在通用的嵌入式操作系统中能够容易地拥有智能卡的特性和功能,同时保证原来基于传统的COS的各种应用程序不需要任何修改就可以在新的运行环境中顺利运行,需要一种方便的解决方式。
发明内容
考虑到上述问题而设计了本发明。根据本发明的一个方面,提供了一种提供两种操作系统环境的智能卡20,包括:第一系统模块203,用于提供通用的嵌入式操作系统;以及第二系统模块202,其在所述第一系统模块的基础上实现,用于提供虚拟的卡片操作系统,并且其中,所述第二系统模块包括硬件抽象层模块,所述硬件抽象层模块用于通过由所述通用的嵌入式操作系统提供的接口来操作所述智能卡的各种硬件设备201。
按照本发明的方案,智能卡在不需要改变通用的嵌入式操作系统的情况下,就可以提供例如ISO7816定义的传统的COS功能,而且基于传统的COS上的各种应用程序也不需要任何修改就可以在新的运行环境中顺利运行。
附图说明
参考附图详细描述了本发明,附图中的描述应当被理解为是说明性的而非限制性的,其中:
图1示出传统的智能卡的内部结构的框图;
图2示出根据本发明的实施例的智能卡的内部结构的框图;
图3示出根据本发明的实施例的虚拟COS的结构图。
具体实施方式
图1示出了传统的智能卡的内部结构。如图1所示,在此结构中,智能卡10以COS 102为核心进行工作。一方面,COS 102直接运行在硬件101之上,因为COS 102需要直接操作硬件101,比如I/O、存储器、加解密单元等(图1中未示出);而COS 102的内部需要处理的任务一般包括但不限于I/O处理、存储器管理、APDU处理、文件系统、安全体系、加解密、应用程序管理等各个部分(图1中未示出)。另一方面,COS 102会提供一套统一的API接口,以供在其上运行的各类应用使用,其中所述各类应用例如图1所示的COS本地应用程序、Java卡(JavaCard)和全球平台(GlobalPlatform)等。
本发明提出了一种在智能卡上提供两种操作系统环境的实现方式。图2示出根据本发明的实施例的智能卡20的内部结构。宿主操作系统(OS)203直接运行在硬件201之上,因此它具有直接操作硬件201的能力,在宿主OS 203上安装有各种硬件设备(特别是I/O设备)的驱动程序(图2中未示出)。如图2所示,宿主OS 203本身支持各种常规的应用或平台等,为了简洁,将不对此进行详细说明。这里所说的宿主OS可以是Symbian、Windows CE、Embedded Linux等各类通用的嵌入式操作系统中的任何一种。进一步地,在图2所示的例子中,在宿主OS 203上又支持另外一个虚拟的卡片操作系统,即虚拟COS 202;这样,智能卡20的一套硬件设备环境上可以同时运行两个操作系统,从而提供两种对应的应用程序的运行环境,而这两种运行环境可以互不干扰。
在这个体系中,虚拟COS 202是通过对如图1所示的原有的COS 102进行部分的改造而得到的。改造后的虚拟COS 202将不会直接操作硬件设备201,而是作为宿主OS 203上的一个应用程序,通过宿主OS 203提供的API来访问和操作硬件设备201。同时,为了使原有的COS 102上运行的各类应用程序不需要任何改变就可以在虚拟COS 202提供的环境中运行,在虚拟COS 202中仍然要对其上的应用程序提供相应的API接口,而且这些API接口和原有的COS 201中的API接口保持完全一致。
因此,对于其上层的应用程序来说,虚拟COS 202相当于一个容器,负责通过与宿主OS 203的交互来跟下层硬件201进行交互,从而完全将上层的应用程序和底层的宿主OS 203相隔离。从虚拟COS 202的上层应用程序的角度看,它们在启用时是由虚拟COS 202来加载的,运行时是由虚拟COS 202来管理其内存分配和控制其生命周期的,结束时由虚拟COS202来终止它们。因而,对于这些上层应用程序而言,它们在虚拟COS 202中的运行环境跟原有的COS 102中的运行环境完全一致,所以这些上层应用程序也不会知道自己是运行在虚拟COS 202中还是原有的COS 102中。
更具体地,下面参照图3,描述将原有的COS(如图1中的COS 102)改造为虚拟COS(如图2中的COS 202)的方式。图3中示出了一个典型的结构化的COS 30,它包含两个部分,分别是功能实现层301和硬件抽象层302。应该理解,这样的部分划分是说明性的而不是限制性的。
首先,功能实现层301实现了COS需要支持的各种核心功能,比如图3中示出的APDU处理、文件系统、安全体系、加解密API以及应用程序管理等部分,例如ISO7816所定义的那些功能;功能实现层301也对运行于虚拟COS30上的各种应用程序提供API接口(图3中未示出)。需要注意的是,在功能实现层301部分,虚拟COS 30不需要对原有的COS做任何改变。也正是因为功能实现层301没有任何改变,虚拟COS 30便可以对运行于其上的各种应用程序提供与原有的COS完全一致的API接口。
其次,硬件抽象层302负责管理和操作智能卡的硬件设备,比如I/O处理、存储器管理以及加解密单元等,它是专门为了使虚拟COS 30移植到不同的硬件环境而设计的。在硬件抽象层302部分,虚拟COS 30需要对原有的COS做改变。由于在本发明中,虚拟COS 30运行于宿主OS(如图2所示的宿主OS 203)中,因而硬件抽象层302需要为了适应宿主OS需要做出相应的设计和改动,即它不再用于直接操作硬件(如图2所示的硬件201),而是通过宿主OS提供的API接口来操作各种硬件设备。
通过这样的实现,本发明提供了一种有效的解决方案,可以在不需要改变智能卡上的运行通用的嵌入式操作系统的情况下,为智能卡提供一个支持ISO7816等传统COS功能的应用程序运行环境。在此运行环境中,传统的COS上运行的各类应用程序不需要任何改变即可顺利运行。可以理解的是,本发明的方案适用于各种智能卡,例如插入到移动电话中的用户识别卡(SIM)。
以上参照附图说明了本发明的示例性实施例。然而,对于本领域技术人员来说显而易见的是,可以从上述示例性实施例中很容易地获得更多的修改和变型,所有这些修改和变型都应被认为落入发明的实质和范围之内。
Claims (6)
1.一种提供两种操作系统环境的智能卡,包括:
第一系统模块,用于提供通用的嵌入式操作系统;以及
第二系统模块,其在所述第一系统模块的基础上实现,用于提供虚拟的卡片操作系统,并且
其中,所述第二系统模块包括硬件抽象层模块,所述硬件抽象层模块用于通过由所述通用的嵌入式操作系统提供的接口来操作所述智能卡的各种硬件设备,其中,所述第二系统模块还包括功能实现层模块,所述功能实现层模块用于实现所述虚拟的卡片操作系统的各种核心功能、以及为要运行在所述虚拟的卡片操作系统上的各种应用程序提供接口。
2.如权利要求1所述的智能卡,其中,所述虚拟的卡片操作系统的各种核心功能属于ISO7816所定义的功能。
3.如权利要求1或2所述的智能卡,其中,所述硬件抽象层模块包括以下模块中的一个或多个:I/O处理、存储器管理以及加解密单元。
4.如权利要求1或2所述的智能卡,其中,所述功能实现层模块包括以下模块中的一个或多个:APDU处理、文件系统、安全体系、加解密API以及应用程序管理。
5.如权利要求1所述的智能卡,其中,所述通用的嵌入式操作系统是以下之一:Symbian、Windows CE和Embedded Linux。
6.如权利要求1所述的智能卡,其中,所述智能卡是用户身份识别卡。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200810178306A CN101751718B (zh) | 2008-11-28 | 2008-11-28 | 提供两种操作系统环境的智能卡 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200810178306A CN101751718B (zh) | 2008-11-28 | 2008-11-28 | 提供两种操作系统环境的智能卡 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101751718A CN101751718A (zh) | 2010-06-23 |
CN101751718B true CN101751718B (zh) | 2012-09-05 |
Family
ID=42478652
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200810178306A Expired - Fee Related CN101751718B (zh) | 2008-11-28 | 2008-11-28 | 提供两种操作系统环境的智能卡 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101751718B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103106117A (zh) * | 2012-12-25 | 2013-05-15 | 青岛海信电器股份有限公司 | 一种资源分配方法及电子设备 |
CN106778193B (zh) * | 2016-11-14 | 2023-02-03 | 北京握奇智能科技有限公司 | 一种客户端和ui交互方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1313562A (zh) * | 2001-05-15 | 2001-09-19 | 北京慧讯信息技术有限公司 | 嵌入式开放平台的体系结构 |
US6990567B1 (en) * | 2000-12-22 | 2006-01-24 | Lsi Logic Corporation | Use of internal general purpose registers of a processor as a Java virtual machine top of stack and dynamic allocation of the registers according to stack status |
CN2919393Y (zh) * | 2006-04-04 | 2007-07-04 | 南京熊猫电子股份有限公司 | 多功能接口税控收款机主板 |
-
2008
- 2008-11-28 CN CN200810178306A patent/CN101751718B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6990567B1 (en) * | 2000-12-22 | 2006-01-24 | Lsi Logic Corporation | Use of internal general purpose registers of a processor as a Java virtual machine top of stack and dynamic allocation of the registers according to stack status |
CN1313562A (zh) * | 2001-05-15 | 2001-09-19 | 北京慧讯信息技术有限公司 | 嵌入式开放平台的体系结构 |
CN2919393Y (zh) * | 2006-04-04 | 2007-07-04 | 南京熊猫电子股份有限公司 | 多功能接口税控收款机主板 |
Non-Patent Citations (2)
Title |
---|
刘莎,姜长生.构建基于Intel PXA255的指纹识别系统.《微处理机》.2006,(第5期),第106-108页. * |
张琼声等.一种基于虚拟机技术的嵌入式操作系统移植方案.《微计算机应用》.2007,(第02期), * |
Also Published As
Publication number | Publication date |
---|---|
CN101751718A (zh) | 2010-06-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100487728C (zh) | 支持快速计算、大容量存储、高速传输的新型智能卡 | |
US10387219B2 (en) | Enabling multiple secure elements in a card computing device | |
CN101573713B (zh) | 便携式数据载体 | |
US9158598B2 (en) | Apparatus, method, program and system for processing information utilizing a multi-platform capable of managing a plurality of applications | |
CN105827666B (zh) | 无线电通信装置和用于控制无线电通信装置的方法 | |
US7182250B2 (en) | Computing device with an embedded microprocessor or micro-controller | |
JP4972706B2 (ja) | 独自のメモリ装置識別表示を管理する方法、サーバー及びモバイル通信装置 | |
CN101866514A (zh) | 一种安装非接触支付应用的方法、智能卡及移动终端 | |
US9830203B2 (en) | Method for communicating with an application on a portable data storage medium, and such a portable data storage medium | |
US20200296573A1 (en) | Electronic device and method for managing an ic card with multiple sim profiles | |
CN101751718B (zh) | 提供两种操作系统环境的智能卡 | |
US8533747B2 (en) | Method and system for selecting one or more integrated circuit card interface devices | |
CN103677933A (zh) | 一种为智能卡打补丁的方法和系统 | |
CN103761118A (zh) | 一种智能卡及智能卡内部署应用的方法 | |
CN112698912A (zh) | 一种Java Card虚拟机运行环境及内存管理方法 | |
WO2009156404A2 (en) | Method of managing data in a portable electronic device having a plurality of controllers | |
CN101441568A (zh) | 智能卡及其操作系统开发方法 | |
EP2898413B1 (en) | A security module and a method for optimum memory utilization | |
CN204480113U (zh) | 基于安卓系统的二次开发用的智能终端 | |
CN108536455B (zh) | 芯片控制方法及终端设备 | |
US9016561B2 (en) | Method, server and mobile communication device for managing unique memory device identifications | |
CN110262874A (zh) | 一种基于java虚拟机的新型物联网多任务操作系统及方法 | |
CN116107668B (zh) | 一种应用程序运行方法及其系统 | |
JP6822158B2 (ja) | 電子情報記憶媒体、icカード、削除処理方法、及び削除処理プログラム | |
RU2673394C2 (ru) | Способ установки приложения на защищенный элемент |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20120905 Termination date: 20121128 |