论文部分内容阅读
改革开放带动着我国经济、技术的迅猛发展,经济、技术的发展给人们生活方式带来前所未有的改变,智能卡的广泛应用便是典型例子。智能卡经过十几年的发展现已形成以银行卡,手机SIM卡,社保卡,IC卡等类型为主的智能卡集群。随着全国各大中城市智慧城市发展战略的实施,国家电信行业3G,4G牌照的发放,智能卡的需求必将迎来一个新的高峰期。每一张智能卡都需要往芯片中写入诸如卡片卡号、流水号或者其他与用户相关的信息后才能真正使用。实际上,智能卡使用过程中主要就是数据读写操作,这些操作都需要借助于智能卡读卡器。本文所做的工作便是智能卡生产过程中读写数据的研究。一般的,智能卡生产过程中,高速制卡机控制系统大多使用串口方式与智能卡通信,但PC上的物理串口一般仅有两个,与设备需要控制上百个读卡器同时读写卡片的要求显然不符,而且在PC上添加更多物理串口既难实现也不经济。幸运的是Windows的WDM驱动模型为我们提供了很便捷的方式来获得虚拟串口,且这种利用WDM底层驱动实现的虚拟串口操作上与物理串口无异。考虑到以太网(Ethernet)相对串口较高的数据传输速率,依托成熟的8串口网关网络设备,高速制卡机系统形成PC端到网络设备再到读卡器的硬件链路环境,于是需要将网络设备虚拟成串口以便制卡控制系统操作读卡器。这样做同时是为了摆脱对第三方设备MOXA交换机的依赖。实现虚拟串口需要了解Windows WDM驱动开发框架,了解Windows操作系统对添加删除硬件设备的处理流程。因为物理总线驱动程序微软已经实现好了,我们需要做的是在这个基础上编写内核环境下硬件处理机制的程序。网络设备虚拟化串口实现成功与否,需要进行一系列的测试。我们选择在高速制卡机系统平台上测试驱动程序性能并详细介绍一款应用层软件。为了进一步智能化制卡机设备,系统应用层软件需要实现能够自动检测网络设备,自动将虚拟串口与网络端口进行一一映射的功能。利用网络设备虚拟化串口机制,应用程序使用虚拟串口可以像使用物理串口一样与读卡器通信,解决PC物理串口缺乏同实际串口需求量大之间的矛盾。