论文部分内容阅读
随着互联网技术和分布式计算技术的迅猛发展,被业界称为计算机IT技术第三次革命的Web Services技术已逐步显露出巨大商机,软件业正面临着一次最大规模的“洗牌”。Web Services打破了Internet、单机系统和各种计算设备之间的差别,能实现大范围分布式系统的无缝集成,是目前用于嵌入式系统之间、嵌入式设备与企业系统之间互操作性问题的最完美的解决方案。嵌入式系统的WebServices化是一种必然趋势,这将为嵌入式产品带来巨大的发展机遇。 Web Services在分布式计算领域之所以获得巨大成功,得益于它具有一整套技术规范来实现其互操作性,而其全部技术规范都是以XML为底层核心和构架基础的。那么,在嵌入式设备中实现Web Services架构要求这些设备至少应该具有处理XML信息的能力。因此,实现XML数据解析是嵌入式系统支持Web Services架构的最关键问题。这也是本文研究的主要内容。 本文从分析Web Services技术的优势入手,系统地概述了Web Services用来实现互操作性的一系列技术规范,其中着重对SOAP和XML两种技术规范进行了深入研究。通过对当前存在的三种XML解析技术进行深入的分析比较后,面向嵌入式系统设计实现了一个采用XPP解析技术的非验证型XML解析器。在具体实现中,提出了具体的方案来管理XML数据,尽可能地减少内存的使用,并从XML的语法结构出发,为XML数据操作实体建立有限状态机模型来实现XML的灵活解析。在此基础上,本文结合具体实例介绍了该解析器的几种典型使用模式。使用该解析器的应用程序可以根据实际需要只处理XML文档中的部分数据。因此,该解析器适用于资源受限的环境中对XML数据的处理,为进一步实现嵌入式Web Services提供必要的支持。 最后,基于Altera Nios Ⅱ软核处理器的SOPC硬件平台和MicroC/OS-Ⅱ软件平台,本文在实现HTTP协议和XML解析器的基础上,进一步设计实现了嵌入式SOAP服务器,并给出了测试结果。系统中所有软件均采用移植性很强的C进行编码。在测试中,本文综合使用了XML解析器的几种编程模式,对XML解析器的有效性进行了验证。