2022年wosa架构分析和实现 .pdf
《2022年wosa架构分析和实现 .pdf》由会员分享,可在线阅读,更多相关《2022年wosa架构分析和实现 .pdf(7页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、WOSA/XFS 架构分析和实现分类: ATM 技术相关 2007-09-15 17:34 4611人阅读 评论 (2) 收藏 举报数据结构 apieventswindowsdll金融这篇文章取的名字很不好意思,见笑。针对本文有以下声明:1、本文中使用的图片来自WOSA/XFS的规范文档,我只是汉化了一下而已。2、本文原文发表于2006 年 7 月的银行卡与受理市场。谢绝任何转载。XFS(Extensions for Financial Services),扩展金融服务。这几年在国内各商业银行及金融设备供应商之间开始变得热门起来。本文的内容来自笔者在学习XFS 时的一些笔记,有一些理解不太透彻
2、或正确的地方,还望各位专家批评指正。要了解 XFS ,就不能不提WOSA (Windows Open System Architecture)和 CEN(European Committee for Standardization)。WOSA ,Windows开放式系统架构, 是微软公司提出的一种在Windows操作系统下的软件架构。 WOSA 是一种使基于Windows 的桌面应用程序不需为每个平台重写应用程序就能连接到多计算环境的接口,允许基于Windows 的应用程序连接到多种计算环境,而不用为每个平台重写应用程序。像我们经常用到的ODBC 之类的都是WOSA 的一部分, 而XFS 就是
3、其中用于金融扩展服务的那部分,是微软公司针对金融行业提出的一种软件架构。最初是由微软、几家大的金融设备厂商和银行一起制定的一套技术规范。CEN ,欧洲标准协会 (欧洲标准化委员会)。在这个委员会中, 有 CEN XFS Workshop这么一个工作组, 是 BSVC(Banking Solution Vendors Council,这是由超过20 家金融设备厂商组成的一个委员会)的附加部分。现在,正是位于比利时的这个小组在管理和维护着这套规范。前面讲的都是XFS 的一些背景,那么XFS 到底什么呢?一套基于C 的 WIN32 API 。这是一套为了既方便应用开发者,又方便服务提供者的技术规范,
4、定义了各类金融外围设备的驱动接口。 采用这个接口的应用,都可以运行在任何能够提供符合这个规范的接口的金融设备上,而不论是哪家厂商。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 7 页 - - - - - - - - - 上图就是 XFS 的体系结构图,我们可以看到,XFS 实际上就是由API 、SPI 两套接口和一个管理器组成,这套规范主要就是API 和相应的SPI 这两套分别针对应用和底层服务开发的接口定义,另外还有一些其他的支持服务。习惯上,我们把应用叫做AP ,把
5、 XFS Manager 叫做管理器, 而把底层的用来驱动硬件设备的那层叫做SP(即 Service Providers)。在这个架构中,应用调用API 来操作设备,而API 则是由管理器提供的。也就是说,应用所有的操作都需要通过管理器才能实现。管理器匹配API 和相应的SPI,然后发送请求到相应的 SP ,这些 SP 可能是不同的厂商提供的。SP 则提供 SPI,SP 是设备的管理者,向管理器和AP 提供设备的操作和状态信息等,并通过Windows消息向管理器和AP 提供这些信息。管理器由 3 个 DLL( 动态链接库 )组成, 3 个 DLL 分别提供不同功能。名称描述安装路径MSXFS.
6、DLL提供基本的 API 和调用 SPI 函数系统目录,如c:/winnt/system32XFS_SUPP.DLL提供一些支持函数, 比如内存分配之类系统目录,如c:/winnt/system32XFS_CONF.DLL提供配置函数,比如读写配置信息系统目录,如c:/winnt/system32这 3 个 DLL 是随 XFS 的规范一起发布的,当然,也有一些软件厂商自行编写。API 有下面 3 种 基本功能: 诸如StartUp/CleanUp、Open/Close 、Lock/Unlock和 Execute ,这些都是所有的XFS 设备和服务类都支持的。名师资料总结 - - -精品资料欢
7、迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 7 页 - - - - - - - - - 管理功能:诸如设备初始化、复位、挂起和恢复,用来管理设备和服务。 特定指令:用来查询设备或服务的信息、执行设备的特殊功能,它们被作为GetInfo/ Execute的参数送给设备。这些特定的指令有一套单独的规范,每类服务(或设备)一套。SPI,基本和 API 相似,除了一些由管理器处理的指令。在 XFS 中,我们可以从函数名称上也可以看出哪些是API,哪些是 SPI,函数命名规则如下:函数类型函数调用者函数提供者A
8、PI 函数WFS 应用XFS管理器SPI 函数WFP XFS管理器SP支持/ 配置函数 WFMSP 、应用XFS管理器上面是 XFS 的比较抽象的视图,下面这个例子可以帮助我们更好的理解它。在这个架构中,SP 是直接驱动物理设备的,实际上,在SP 和物理设备之间还可能有两层或者更多的独立的层次。可以看到, 某个厂商提供的SP 并不需要兼容其他厂商的设备。上面是比较大致的介绍了XFS 的架构, 那么 XFS 是怎么样运作的呢?下面我们从几个关键点上来说明XFS 的运作原理。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整
9、理 - - - - - - - 第 3 页,共 7 页 - - - - - - - - - 前面我们已经知道在AP 调用了某个API 后,是管理器来将该API(WFS_XXX)匹配至相应的 SPI(WFP_XXX),调用相应的SP 的。那么管理器是如何做到这一点的呢?配置信息,是配置信息中定义了AP 和 SP 之间的关系。针对这些配置信息,管理器还提供了配置函数( XFS_CONF.DLL)用来处理这些配置。在 XFS 中,配置信息是基于WIN32 注册表的。 XFS 的注册表信息有两个逻辑分组,分别位于 HKEY_LOCAL_MACHINE和 HKEY_USERS下(注意,这是XFS3.0
10、的配置信息,针对2.0,配置信息均位于HKEY_CLASSES_ROOT/WOSA/XFS_ROOT下)。我们来分别看一下这两组信息的结构class 逻辑服务的类别,必须按照XFS 的标准来赋值,参见标准的服务类定义文档(在XFS3.0 中,即编号cwa14050-02的文档)2provider 提供逻辑服务的SP 的名称, 这个名称可以自行确定,但必须和下面讲到的SP 的键名称一致在下面的结构中,XFS_MANAGER有下面几个可选择的值:nTraceFile 包含流水数据的文件名,如果这个值没有设置,那么缺省的文件为C:/XFSTRACE.LOG nShareFileName XFS管理器
11、内存管理时用到的内存映射文件名。nShareFileSize XFS管理器内存管理时用到的内存映射文件大小。PHYSICAL_SERVICES的键就完全取决于厂商。而在 SERVICE_PROVIDERS下面,每个独立的SP 都对应一个键,这些键的名字就是SP 的名字,每个键下面都必须包括下面3 个值: dllname 包含 SP 的 DLL 的名字 vendor_name SP 供应商的名字 version SP 的版本号现在我们就可以来看一下,当AP 调用了某个API 的时候,管理器是如何知道该调用哪一个SP 的。管理器接收到AP 的调用后, 会根据注册表中该逻辑服务的provider 的
12、值来确定应该调用那个SP,然后再根据 SP 的键下 dllname 的值找到要调用的DLL (如果这个DLL 还没有装载的话,此时会先装载DLL ),这样通过配置信息,管理器就知道AP 的某次请求应该转发给哪个SP。在 XFS 中,API 和 SPI 这些接口都是以函数的形式表现出来的,这些函数由3 种类型同步、异步和立即式函数。所谓同步函数,就是当调用函数时,程序会一直阻塞着直到函数完成所有操作才会返回;异步函数则当调用该函数时,函数马上返回, 但却会在不确定时间之后完成操作,这时才能知道操作是否成功;而立即式函数,顾名思义,就是函数调用马上就会返回,并且知道操作是否成功。API 每个函数都
13、有两个版本(例如,应用调用锁定服务时可以用异步的WFSAsyncLock 或者同步的WFSLock 函数)。每个XFS API 函数都以异步、同步或立即3 种方式之一来操作。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 7 页 - - - - - - - - - SPI 只有异步式的接口,因此所有的SPI 函数都是异步或立即式操作的。我们来看看这3 种函数在调用的时候具体有些什么不同。同步函数用于不确定完成时间的操作,但应用想以连续的方式去处理函数。直到操作完成前, X
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年wosa架构分析和实现 2022 wosa 架构 分析 实现
限制150内