智能卡嵌入式操作系统及其控制方法技术方案

技术编号:2927949 阅读:255 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种智能卡嵌入式控制系统及其方法,该方法包括:A.系统进行初始化;B.根据系统设定的功能创建至少一个任务;C.根据系统优先级调度预执行的任务;D.任务执行,并将执行结果通过数据传输通道返回。本发明专利技术增强了对硬件平台的数据通道的支持,不仅能够支持传统智能卡的单数据通道-ISO7816,还能够支持两个甚至两个以上的数据通道同时并存的情况,使得智能卡能够与设备端更灵活、高速地传递信息;本发明专利技术增强了对智能卡上应用的支持,不仅能够支持传统智能卡上的单一应用,还支持在一张卡上同时运行多个应用,使得智能卡的利用更加高效。

【技术实现步骤摘要】

本专利技术涉及嵌入式领域,尤其涉及一种智能卡以及USB TOKEN领域中。
技术介绍
随着科技的不断进步,智能卡应用已经逐渐成为人们生活中不可或缺的一部分。从楼宇门禁到移动电话、从公交一卡通到校园一卡通、从EMV银行卡到电子身份证,这诸多应用都与智能卡息息相关。随着智能卡应用的不断推广与普及,人们对智能卡的功能需求也越来越多样化,丰富多彩的应用需求使得智能卡的硬件工艺水平日新月异CPU位数上,从最初的8位CPU,到现在广为使用的16位CPU,再到正在逐步推广的32位CPU;存储容量上,从最初的几十字节,到现在的几十K、上百K甚至M级的大容量;存储器类型上,从最初的ROM、RAM、EEPROM,到现在的NOR FLASH,再到新的NOR FLASH与NAND FLASH融合技术;传输接口上,从ISO7816单一接口,到融合MMC、USB等快速接口的多通道等。智能卡硬件工艺的发展日新月异,而智能卡的片上操作系统的结构却始终没有太大变化。图1显示了现有智能卡的软硬件架构框图,从图1中可以看出,现有智能卡的软硬件架构仅由硬件平台、自定义的卡操作系统(COS)和智能卡的应用三部分组成,其中,多数情况下卡操作系统和应用是作为一个整体而存在的,它们之间并没有明显的界限。在这种结构中,由于卡操作系统通常是针对特定的硬件平台开发的,因此,当硬件平台更换时,卡操作系统也要相应做比较大的改动。图2显示了现有智能卡操作系统的一般流程,从图2中可以看出,现有智能卡操作系统通常是一个比较简单的前/后台系统(foreground/background)或超循环系统(super-loop),系统是一个无限的循环,循环中调用相应的函数完成相应的操作,中断服务程序处理异步事件,时间相关性很强的关键操作(critical operation)靠中断服务来保证。因为中断服务提供的信息一直要等到后台程序运行到该处理这个信息时,才能得到处理。这种系统在处理信息的及时性上,比实际上可以做到的要差。最坏情况下的事件响应时间取决于整个循环的执行时间。因为循环的执行时间不是常数,程序经过某一特定部分的准确时间也是不能确定的。进而,如果程序修改了,循环的时序也会受到影响。又由于传统卡操作系统的超循环结构,使得这种系统同时管理多种不同的应用具有较大的复杂性,因此,在传统结构的智能卡中,通常一张卡只对应着一个应用,也就是说,通常卡操作系统只管理着一个应用。因此,多数情况下应用和卡操作系统是在一起开发的,它们之间并没有明显的界限划分。随着智能卡底层硬件平台的不断丰富,这种传统的智能卡软硬件架构已逐渐不再能够满足需求,新型的能够处理大容量、多通道、多应用、具有更强实时性的卡操作系统有待推出。
技术实现思路
本专利技术的目的在于提供一种智能卡嵌入式操作系统(COS------ChipOperating System)及其实现该系统的方法,用以解决现有技术中存在一张智能卡只能对应一个应用以及一个硬件平台的问题。本专利技术的目的是这样实现的本专利技术为一种智能卡嵌入式控制系统,用于管理与控制在与外部信息交换的硬件平台上执行创建任务,该系统包括初始化单元、实时内核单元及任务单元,所述硬件平台分别与初始化单元、实时内核单元及任务单元相关联,所述的实时内核单元包括任务初始化单元、任务控制单元以及任务调度单元;其中初始化单元,用于对硬件平台以及实时内核单元进行初始化; 任务初始化单元,用于对任务单元的任务创建以及初始化;任务控制单元,根据设定的规则对任务单元的任务进行检查并启动任务调度单元;任务调度单元,在任务控制单元的控制下对任务单元的任务进行调度执行;任务单元,至少包含一个任务初始化单元创建的任务。实时内核单元还包括任务控制单元,根据任务单元的任务执行情况控制任务单元中的任务同步以及任务之间的通信,创建同步或互斥机制,同时启动任务调度单元动作。实时内核单元还包括任务重新调度与切换单元,根据任务控制单元的信号启动,进行任务的重调动与切换。所述的硬件平台至少具有一个第一数据传输通道。所述的硬件平台还包括一个或者多个第二数据传输通道。所述第一数据传输通道为ISO7816;所述第二数据传输通道为MMC或USB数据传输通道。一种对智能卡嵌入式控制系统的控制方法,包括以下步骤A、系统进行初始化;B、根据系统设定的功能创建至少一个任务;C、根据系统优先级调度预执行的任务;D、任务执行,并将执行结果通过数据传输通道返回。所述步骤B与步骤C之间包括B1、创建同步或互斥机制。所述的同步或互斥机制为信号量或/和事件标志组或/和消息邮箱或/和消息队列。在步骤B中,采用API函数进行任务的创建。步骤C中进行任务调度的方式为当前多个任务中优先级最高的任务开始运行;根据时间片轮转调度相同优先级的任务依次运行。在步骤C与步骤D之间还包括C1、任务重新调度与切换步骤,该步骤是在以下任一种情况下启动a、当一个新到达的外部事件从中断服务程序中退出;b、当一个任务调度延时程序将自己挂起;c、当一个任务等待特定信号量被释放时;d、当一个任务释放特定信号量时;e、当在任务执行过程中创建了一个新任务时。本专利技术有益效果如下本专利技术所述的智能卡嵌入式操作系统,增强了对硬件平台的数据通道的支持,不仅能够支持传统智能卡的单数据通道——ISO7816,还能够支持两个甚至两个以上的数据通道同时并存的情况,使得智能卡能够与设备端更灵活、高速地传递信息;本专利技术所述的智能卡嵌入式操作系统,增强了对智能卡上应用的支持,不仅能够支持传统智能卡上的单一应用,还支持在一张卡上同时运行多个应用,使得智能卡的利用更加高效。此外,该操作系统具有可移植性、可固化性、容易改进、可剥夺性、多任务以及系统服务丰富的优点。综上所述,本专利技术的系统和方法解决了现有技术中存在的一张智能卡只能对应一个应用以及一个硬件传输通道且实时性差的技术缺陷。附图说明图1是传统智能卡的系统结构(软硬件架构)框图。图2是传统智能卡的工作流程图。图3是本专利技术的典型硬件平台结构图。图4是本专利技术的智能卡系统结构框图。图5是本专利技术的方法流程图。具体实施例方式本专利技术提出一种智能卡嵌入式控制系统,该系统用于管理与控制与外部信息交换的硬件平台,硬件平台11与初始化单元12、实时内核单元13以及任务单元14相连接,所述的实时内核单元13包括任务初始化单元131、任务控制单元132、任务调度单元133;其中初始化单元12,用于对硬件平台11以及实时内核单元13初始化;任务初始化单元131,用于在任务单元中创建任务并对任务单元中的任务进行必要的初始化,同时也在特定任务不需要时将其删除;任务控制单元132,控制任务单元14中的任务同步以及任务之间的通信,即采用特定机制实现任务间或者中断服务程序与任务间的同步或互斥操作;任务调度单元133,根据任务控制单元132的控制指令对任务单元的任务进行调度,其调度的方式是根据系统设定的规则将任务挂起、使任务就绪或者调度任务执行,系统规则的设定可以采用现有的技术实现。本专利技术所述的系统,由于所述的实时内核单元13设置的任务控制单元132以及任务调度单元133使得本专利技术的系统能够对多个任务进行调度执行,从而使硬件平台在传统的ISO7816数据传输通道之外能够同时支持更多的数据本文档来自技高网
...

【技术保护点】
一种智能卡嵌入式控制系统,用于管理与控制在与外部信息交换的硬件平台上执行创建任务,其特征在于,该系统包括初始化单元、实时内核单元及任务单元,所述硬件平台分别与初始化单元、实时内核单元及任务单元相关联,所述的实时内核单元包括任务初始化单元、任务控制单元以及任务调度单元;其中初始化单元,用于对硬件平台以及实时内核单元进行初始化;任务初始化单元,用于对任务单元的任务创建以及初始化;任务控制单元,根据设定的规则对任务单元的任务进行检查并启动任务调度单元;   任务调度单元,在任务控制单元的控制下对任务单元的任务进行调度执行;任务单元,至少包含一个任务初始化单元创建的任务。

【技术特征摘要】

【专利技术属性】
技术研发人员:叶新雷继业
申请(专利权)人:北京握奇数据系统有限公司
类型:发明
国别省市:11[中国|北京]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术
  • 暂无相关专利