卡片操作系统COS的主要功能
文章出处:http://www.singbon.com 作者:语馨 收编 人气: 发表时间:2011年09月23日
之所以智能卡能够支持这么复杂的应用,其便利和安全的基础便是卡内操作系统(Chip Operating System,以下简称为COS)。
和传统的PC软件系统相比较,COS在IC卡系统中的地位类似于Windows, UNIX这样的操作系统,所以通常称之为卡片操作系统。从功能上来说,COS并不是一个完整意义的操作系统,更类似于一个监控程序,它提供的主要功能包括以下几个部分。
* IC卡的上电复位
COS直接运行于芯片平台上,是所有应用代码的运行平台。COS程序运行的起点是卡片的上电复位,IC卡插入读卡器加电以后,芯片自动从制定位置开始运行程序,此时COS需要设置好所有的环境,等待应用的执行。
* 芯片底层硬件的驱动
由于COS直接在芯片平台上运行,对芯片各个部件的操作都在COS中完成,包括存储器的读写、运算协处理器的使用、端口的监控、随机数发生器的使用等。
* 卡片对外接口交互
芯片对外通过I/O端口收发数据,所传递的数据格式必须符合相应的国际规范,根据芯片提供的接口不同,接触式和非接触式都分别具有不同的处理流程。
* 卡内内存空间的维护
卡片的内存空间是程序的数据临时空间,是IC卡内重要的资源之一。由于价格等因素,内存空间通常十分有限,COS需要提供相应的保障机制合理分配内存,并且区分保护好系统和应用各自的内存空间,确保安全性。
* 卡内文件系统的维护
数据在卡内以文件的形式存在,和PC中操作系统的文件系统类似,COS的文件系统必须提供文件的建立、修改、删除、维护等基本操作,此外,还有文件的寻址,文件访问的安全控制等等。
* 系统运行安全的控制
对于COS级的系统安全,主要表现在两个方面,一是COS对卡内数据的安全保障能力,二是COS对外提供的安全定义。应用应该能够利用COS提供的安全定义自定义出其卡内数据的访问控制。安全控制是COS的核心,也是衡量一个COS性能最重要的部分。
* 命令的处理
卡片和应用之间的接口表现形式是命令和响应的方式,COS利用I/O接口接受命令报文,根据报文的内容和相应的逻辑COS进行相应的处理,最终通过I/O接口返回响应。命令的处理是最终测试COS正确与否的依据。
* 应用代码的执行
COS对应用命令进行处理,最终将调用相应用应用代码。COS需要实现定义好应用代码与COS系统的调用机制,即要能够完整地完成应用逻辑,又需要严格控制应用代码和COS代码的运行空间。