ct以及HAL系统库工程.应用工程依赖于该HAL系统库工程而该系统工程又依赖于在硬件系统设计时由SOPC Builder所生成的.ptf文件.在建立完相应的工程后Nios II IDE为HAL系统库工程自动生成一个名为system.h的文件该文件的内容取决于硬件系统的设计以及对HAL系统库属性的设置.在建立HAL系统库时设置了系统的标准输入/输出等属性并将MicroC/OS-II、LWIP协议栈及zip只读文件系统加入到工程中同时对一些配置参数进行了相应的设计.Nios II IDE自动将这些参数保存在相应的头文件中比如对于操作系统参数的设置都被自动保存在os_cfg.h文件中.2.3 SOAP处理器的设计功能层包括HTTP协议、XML解析器、SOAP处理器以及服务逻辑等模块.主要介绍一下SOAP处理器的设计.所有的SOAP消息都是使用XML形式编码的.因此当SOAP接口接收到SOAP消息之后首先调用XML解析器将SOAP消息解析成程序语言能够直接识别的数据.在经过XML解析器之后SOAP数据已被解析出来了.这样才能调用相应的处理模块进行SOAP消息的处理.简言之SOAP协议的实现是基于XML解析器实现的.图3给出了SOAP处理器设计的示意图.一般来说无论是SOAP请求者还是SOAP接收者都需要一个接收/发送SOAP消息的SOAP Interface这个SOAP Interface可以按需要与合适的网络协议相绑定比如SOAP/HTTP、SOAP/SMTP等.其次对于SOAP服务器而言它应当包含一个SOAP Listener这个Listener的角色和HTTP Listener或是其他基于Socket的Listener的机制是相同的.一般而言SOAP Listener总是基于某个网络协议的服务监听器Listener的即这是一个SOAP绑定实例.在本系统中将SOAP与HTTP进行绑定.对于每个SOAP Header条目SOAP Header处理器都会依次去调用相应的标准处理模块.当然如果一个SOAP Header条目的处理逻辑是要终止其后的SOAP Header条目的处理那么后面的处理模块将不会被调用比如消息转发等处理逻辑.当所有的SOAP Header条目的标准处理模块被应用完之后SOAP Body处理器将启动并运行.SOAP Body处理器的主要功能就是将SOAP Body中的各个SOAP Body条目的数据重新整理填入待调用的应用程序所需的参数集合中然后对应用程序实施调用.当调用完成后返回的数据将被重新组织成SOAP Body然后被SOAP Interface响应给SOAP调用者.在进行系统测试时设计了一个简化了的SOAP服务器针对一个具体的SOAP消息调用XPPES解SOAP BodySOAP Hesder Plug-in ASOAP Hesder Plug-in BSOAP Hesder Plug-in ZSOAPHeaderXML ParserSOAP Interface2012-05-162012-05-162012-05-162012-05-162012-05-162012-05-16- 69 -析器进行了特定的处理.SOAP消息示例如下: ………… 96 83 This is an RPC example. 3 结 论通过对系统进行调试、验证测试的结果表明XPPES解析器能够准确解析XML文档使得基于该解析器的应用程序SOAP处理器能正确地操作XML数据并且HTTP协议处理模块能够正确地处理和响应HTTP请求.基于HTTP协议和XPPES解析器实现的SOAP消息处理程序能正确处理给定的SOAP消息.参考文献1 王田苗. 嵌入式系统设计与实例开发—基于ARM微处理器与μC/OS-II实时操作系统M. 北京:清华大学出版社2003.2 SLOMINSKI A. XML pull parsing patterns EB/OL. 2005-3-122008-8-20. http: //www.extreme.indiana.edu/aslom/xmlpull/patterns.html.3 Altera Corporation. Nios development board reference manualstratix professional edition EB/OL. 2008-5-30 2008-8-20. http://www.altera.com.cn/products/ip/processors/ipm-index.
jsp.4 Altera Corporation. Nios II processor reference handbook EB/OL. 2008-5-302008-8-20. http://www.altera.com.cn/literature/lit-nio2.
jsp.5 Altera Corporation. Nios II software developers handbook N/OL. 2008-5-302008-8-20. http://www.altera.com.cn/literature/lit-nio2.
jsp.责任编辑尚 丽2009年第1期 高觐悦等嵌入式XML解析器 2012-05-162012-05-162012-05-162012-05-162012-05-162012-05-16
上一篇:
Android 资源管理机制
下一篇:
月入5000,你有什么资格谈生活