最近我开始做公司的ATM贴近硬件的项目,做ATM这一行的早晚会听到CEN/XFS(即WOSA/XFS)。
但光了解WOSA/XFS是不够的,他其实只是WOSA金融方面的扩展,而对于邮件等消息发送又有MAPI,我们很熟悉的ODBC也是WOSA对数据库访问的标准。
WOSA(全称是Windows开放式系统体系结构 Windows Open System Architecture),
是微软公司提出的一种在Windows操作系统下的软件架构。
WOSA是Microsoft在Windows环境为跨越不同平台的应用程序而开发的体系结构规划。它制定允许信息在企业内部自由流动的标准。WOSA包括模块化应用程序编程接口(API),它向任何开发人员开发的应用程序提供访问网络服务的能力。这些网络服务可以包括:电子函件、数据库和主机连接。WOSA还提供插入任何开发人员开发的后端服务的能力。WOSA就是通常称为的“中间件”策略,它直接在操作系统中建立,试图刺激允许用户在网络上进行协作的工作组应用程序的增长。Windows将对消息传递系统以及允许用户快速定位网络上的其它用户或资源的目录服务提供了一个通用接口。WOSA还提供公用数据访问服务和安全性增强附件。WOSA策略类似于Apple开放协作环境(AOCE)策略。
Windows for Workgroups具有它自己的内置Mail和Schedulel十群件产品,它实现了WO3A体系结构部件。WOSA还被用于实现OLE(对象链接和嵌入)2.0和新的Cario面向对象操作系统。
WOSA为客户应用实现了一个标准API,并为服务器应用实现了一个服务提供商接口(SPI)。使用SPI,数据库厂商可以为Windows环境创造一个WOSA兼容的数据库启动程序。然后客户的应用开发人员就可以创造接口,这些接口可以访问这个数据库启动程序,而不需要专门为访问这个数据库编写特殊代码。
下面部件已在本书的相应标题下进行了定义,并进行了单独讨论。
消息传递应用程序编程接口(MAPI),在其它应用(例如字处理器或调度程序)工作期间,提供对电子函件功能的访问。它与厂商无关消息传递应用程序接口(VIM)进行竞争。VIM是由Lotus、IBM、Apple、Novell和Borland支持的。
开放式数据库互联性(ODBC)定义Windows操作系统部件到前端和后端(客户机/服务器)数据库服务的连接。它的思想是,创立到异构网络上任何服务器中存储数据的访问。数据库厂商使用ODBC来在他们的产品中提供互操作性,于是用户就可以使用他们希望使用的任何前端接口来访问数据。
Windows嵌套字 API传输控制协议/因特网协议(TCP/IP),是一个用于连接不同计算机的网络通信标准。Windows嵌套字API(也称为网络运输协议)的设计是为了解决在Windows中存在的许多不同的TCP/IP之间的不兼容性。
远程过程调用(RPC)WOSA实现由开放软件基金会(OSF)的分布式计算环境(DCE)定义的RPC。RPC为将一个应用程序的处理任务分布到网络上的多个计算机提供了一条途径。RPC开辟了一条真正的分布式处理的途径。
系统网络体系结构(SNA)API 定义了Windows应用程序访问IBM主机的途径。
许可证服务器API(LSAPI) 帮助管理人员监督和控制许可软件的使用,并帮助公司遵守法律。
WOSA基于Microsoft的从应用程序中分离出打印机驱动程序的策略。在Windows环境,在初始化期间安装的打印机驱动程序,可以在以后的任何时间,通过使用一个简单的过程就被升级或修改。Windows应用程序使用安装的不具有任何特殊配置的打印机驱动程序。它们自动接口,并利用打印机的特殊特征和可用的字体。类似地,WOSA兼容服务器,应用程序自动接口使得它们自己的功能对WOSA兼容的客户应用程序也是可用的。这种研究极大地简化了应用程序开发,以及减轻了希望集成网络上的所有不同应用程序和可用数据的网络管理人员的任务。
WOSA/XFS 是基于WOSA的扩展金融服务(Window Open System Architecture/ Extensions for Financial Services),是微软公司为全球金融行业软件提出的一种软件架构,它在WOSA软件架构的基础上针对全球金融行业进行了一些相应的修改。
随 着全球信息技术的发展和个人电脑的发展,人们倾向于购买各个电脑厂商的硬件,然后自己组装成一台完整的电脑,这样可以避免购买单个厂商的硬件,从而不用受 制于某个单独的厂商。作为与个人电脑相似的银行金融外设行业(以ATM为例),银行希望能够象个人电脑一样购买多个厂商的产品,然后组装成一台ATM机。 这样一来,银行的ATM机就不会受制于某一家厂商,银行只需要一台ATM机的各个厂商维护各自的设备,整机可以由某个厂商维护,也可由专门维护ATM机的 专业公司来维护。最终,会有更多原来没有能力生产整台ATM的厂商或代理公司进入到金融行业,它们只销售ATM机中的几个硬件,从而银行拥有更多的选择, 会得到更多更好的服务,得到更便宜的价格,它是各个厂商互相竞争中的最大受益者。所以,国外银行现在都要求各个厂商的设备能够互相连接起来,从而组成一台 完整的ATM机。
为了使不同厂商的金融外设能够组合成一台完整的ATM,需要在两方面考虑,一方面是硬件的互连,一方面是软件的互连。由 于硬件的发展有很多年的历史,也有许多已有的技术规范能够使不同的硬件在物理上连接起来,所以硬件的互连基本都可以做到。但是软件的发展历史相对于硬件来 讲时间比较短,还没有现成的技术规范能够使不同硬件上的控制软件能够互相连接起来。为了处理金融行业的软件互连问题,微软公司、几个大的金融外设厂商和几 个大的银行机构在一起讨论,最终定下来了一套软件技术规范。只要任何一个厂商自己硬件的软件驱动程序符合这套规范,那么它的硬件就可以无缝连接到其他同样 符合这套规范的ATM机上,而不需要做任何的软件改动。同时WOSA也规定了硬件驱动程序和ATM上层控制流程的程序之间的接口规范,从而银行可以购买非 厂商提供的ATMC上层程序,比较典型的是KAL公司,它可以不卖硬件,只卖软件,提供给银行更多的选择和更专业的软件服务。
这一套软件技术规范就被称为WOSA/XFS规范,一般简称WOSA/XFS。
因 为银行作为WOSA的最大受益者,所以国外银行购买的金融设备都要求符合WOSA规范,其中ATM首当其冲的被要求必须符合WOSA规范。当然,NCR、 Diebold等大的ATM厂商都很快迎合这种需要,相继对原有的软件进行了彻底的改造,推出了自己的符合WOSA规范的ATM软件。
近 几年,随着WOSA的优点越来越被肯定,所以国内银行相继要求各个厂商提供符合WOSA标准的硬件驱动程序,并且NCR、Diebold等国外厂商也在大 力的向国内银行推广它的WOSA软件,灌输WOSA的概念,相信随着时间的推移,国内各个银行一定也会走国外银行同样的道路,最终要求各个厂商的金融外设 全部符合WOSA的规范。