最近圈里有人和我聊起XFS,这两年在国内银行业,XFS渐渐开始走红。不过做这块的很多人大多和KAL或多或少有些联系,或者,象NCR、DIEBOLD之类的厂商有自己的一套。除了ATM厂商,很多非现金设备的供应商也在关注这块。所以当这位师兄向我了解这块的时候,我就有了个念头,把自己对于XFS的理解写出来,供大家参考。
首先声明,下面的这些文字基本上是来自于我04年翻译的XFS3.0规范文档。基本上是个人的理解,相信很多方面理解的不是很透彻甚至不是很正确,希望各位批评指教。另,也许不同的厂商间对于XFS的某些细节的理解都未必一致(象NCR和DIEBOLD)。
XFS是什么
Extensions for financial services,扩展金融服务,是WOSA下面的一个关于金融业在外围设备方面的接口规范(WIN32 API式的)。WOSA,Windows opend system architecture,WINDOWS开放式系统架构,是微软提出来的。最初,微软和金融行业的一些设备供应商坐在一起,商量出来了最初的XFS1.0,那时通常叫WOSA/XFS。后来,规范的维护工作转给了CEN的一个工作组,这个工作组是银行业的厂商组成的一个委员会的下属单位,现在,就是他们在维护着XFS规范,因此现在叫做 CEN/XFS。他们还有另外一套基于JAVA(SUN参与)的外围设备接口规范,叫做J/XFS。
文档
以3.0的为例,通常整套规范的文档由下面几个部分,
介绍整体架构和API-SPI的编程指南、介绍各类设备的service-specific command(我把它叫做特定指令)的指南,还有一些升级(2.0-3.0之类)指南和其他的发布文档。一般而言,前两者是比较重要的。
系统架构
上图是XFS架构的高层视图。基本上,XFS有3个部分,和应用间的接口API、和SP(Service provider)间的接口SPI以及中间的管理器部分。旁边的配置信息就是注册表。
这一章就到这里,大致介绍了一下XFS,下次会讲在这个架构里,每个部分的角色。