基于自动机的嵌入式HTML解析器的设计与实现

基于自动机的嵌入式HTML解析器的设计与实现

论文摘要

随着嵌入式系统的广泛应用和网络技术的快速发展,嵌入式浏览器已成为嵌入式平台上非常重要的的应用软件。嵌入式浏览器是一个网络信息浏览器,支持HTTP或者WAP等其他传输协议,支持HTML,XML,XHTML,JavaScript,WML等语言等。它可以广泛应用于机顶盒,手机,PDA,车载电脑等非PC的嵌入式设备上,通过实现特定的网络传输协议,根据系统设备的多样性进行修改,实现对文字,图像,声音等的需求。与桌面PC上的普通浏览器相比,嵌入式浏览器具有多样性的特点。不同的设备生产厂商在芯片选择,系统功能定义,显示设备,耗电限制有不同的要求,所以需要根据需求进行针对的开发。如由于显示器类型的不同,嵌入式浏览器需要针对具体的设备进行显示优化(如字体识别,字库,图形,页面的显示结构)。而且嵌入式浏览器只有有限的存储空间和内存空间可以利用,针对嵌入式系统的资源的有限性需要开发相应的算法,以保证高的运行速度和运行效率。本文设计的嵌入式浏览器是和深圳某公司合作的车载嵌入式系统的网络模块的一部分。该浏览器基于WinCE平台用EVC进行开发,支持中文显示,并且采用了分块解析的算法。本文开发设计了该嵌入式浏览器的网络传输的底层模型。用EVC的WinInet类实现基于HTTP协议的网页传输,支持网页的转向,用单独一个线程进行网页数据流的下载。针对嵌入式系统的资源的有限性需要开发了基于DFA的解析算法,用于浏览器解析模块的词法语法分析。首先我们抽象出HTML解析器的确定的有限自动机DFA(Deterministic Finite Automaton)的数学模型,基于此模型设计了一个最小化DFA的算法。其中的最小化算法的核心是把一个确定型有限自动机的状态集分成一些不相交的子集,使得任何不同两子集的状态都是可区别的,而同一子集中的任何两个状态都是等价的。也就是说,一台最小化的确定型有限自动机,它没有多余状态并且它的状态中没有两个互相等价。形成存储解析结果的DOM树,以便于结构化编辑(添加、删除、移动等等)HTML文档。本文的工作已经应用于深圳某公司的车载嵌入式系统,具有重要的实际应用价值和理论意义。

论文目录

  • 摘要
  • ABSTRACT
  • 1 绪论
  • 1.1 嵌入式系统简介
  • 1.2 嵌入式浏览器介绍
  • 1.3 嵌入式浏览器研究现状
  • 1.4 本文工作
  • 1.5 本文组织结构
  • 2 嵌入式浏览器架构
  • 2.1 嵌入式浏览器原理
  • 2.2 嵌入式浏览器基本模块
  • 2.2.1 网络传输层模块
  • 2.2.2 内存管理模块
  • 2.2.3 HTML 解析模块
  • 2.2.4 显示模块
  • 2.3 本章小结
  • 3 嵌入式浏览器网络模块实现的关键技术
  • 3.1 HTTP 协议报文
  • 3.1.1 HTTP 报文格式
  • 3.1.2 Get 请求实例
  • 3.2 基于HTTP 协议网络模型
  • 3.3 本章小结
  • 4 嵌入式浏览器解析模块的实现
  • 4.1 XML 解析技术
  • 4.1.1 XML 的历史与背景
  • 4.1.2 XML 语法基础
  • 4.1.3 XML 特点
  • 4.1.4 DTD
  • 4.2 DOM 解析
  • 4.2.1 DOM 解析结构
  • 4.2.2 DOM 标准
  • 4.3 SAX 解析方法
  • 4.4 XML 解析实例
  • 4.4.1 SAX 解析结果
  • 4.4.2 DOM 解析结果的物理形式
  • 4.4.3 DOM 解析结果的逻辑形式
  • 4.5 HTML 解析技术
  • 4.5.1 HTML 的历史与背景
  • 4.5.2 HTML 的缺点与局限性
  • 4.5.3 HTML 与XML 的区别
  • 4.5.4 HTML 文档结构
  • 4.5.5 HTML 半结构化数据
  • 4.6 HTML 解析器
  • 4.6.1 编程语言的选用
  • 4.6.2 解析词法分析
  • 4.6.3 解析语法分析
  • 4.6.4 正则表达式
  • 4.6.5 正则表达式与自动机的转换
  • 4.6.6 有限状态自动机
  • 4.6.7 基于DFA 的HTML 解析器
  • 4.7 解析结果
  • 4.7.1 解析结果的DOM 树表示
  • 4.7.2 解析结果在浏览器中的显示
  • 4.8 本章小结
  • 5 总结与展望
  • 5.1 工作总结
  • 5.2 工作展望
  • 致谢
  • 参考文献
  • 附录
  • 相关论文文献

    • [1].概率有限自动机积的覆盖性[J]. 湖南科技大学学报(自然科学版) 2017(04)
    • [2].有限自动机可识别语言的基数[J]. 计算机工程与应用 2018(15)
    • [3].概率有限自动机的代数性质[J]. 数学的实践与认识 2016(08)
    • [4].扰动值模糊有限自动机及其语言[J]. 模式识别与人工智能 2016(04)
    • [5].带空移动的加权有限自动机量化等价及其转换[J]. 计算机应用与软件 2016(08)
    • [6].概率有限自动机的交换性[J]. 江苏理工学院学报 2014(06)
    • [7].基于确定的有限自动机的工作流机制研究[J]. 电子制作 2015(09)
    • [8].基于扩展确定有限自动机的功能需求获取方法[J]. 实验技术与管理 2020(05)
    • [9].有限自动机的同态[J]. 工程数学学报 2014(01)
    • [10].循环模糊有限自动机的同态性质[J]. 模糊系统与数学 2014(04)
    • [11].二维二方向有限自动机的识别能力研究[J]. 北京理工大学学报 2012(11)
    • [12].概率有限自动机的积和分解[J]. 计算机工程与应用 2009(15)
    • [13].概率有限自动机的商和同态[J]. 工程数学学报 2009(05)
    • [14].基于信息系统的确定有限自动机最小化算法[J]. 计算机应用 2012(07)
    • [15].直觉模糊有限自动机的乘积[J]. 模糊系统与数学 2012(04)
    • [16].循环自动机的等价性[J]. 计算机工程与应用 2011(07)
    • [17].模糊有限自动机的乘积覆盖性[J]. 模糊系统与数学 2011(02)
    • [18].确定有限自动机到正则表达式转换的并行处理[J]. 枣庄学院学报 2011(02)
    • [19].数字图像的加权有限自动机表示[J]. 太原师范学院学报(自然科学版) 2010(02)
    • [20].确定有限自动机的矩阵形式[J]. 四川师范大学学报(自然科学版) 2009(04)
    • [21].加权有限自动机在语音识别中的应用[J]. 太原城市职业技术学院学报 2009(08)
    • [22].一种改进的有限自动机正则化方法研究[J]. 中原工学院学报 2008(03)
    • [23].确定有限自动机的逻辑形式定义[J]. 西南师范大学学报(自然科学版) 2008(05)
    • [24].基于模板有限自动机的正则表达式匹配算法[J]. 计算机应用研究 2016(07)
    • [25].由单个状态生成的有限自动机的一些性质[J]. 工程数学学报 2011(01)
    • [26].利用信息检索和概率有限自动机的程序理解[J]. 浙江大学学报(工学版) 2008(12)
    • [27].一种获得有限自动机状态间关系的高效算法[J]. 计算机研究与发展 2012(S2)
    • [28].有限自动机在自动柜员机测控程序设计中的应用[J]. 中小企业管理与科技(上旬刊) 2011(07)
    • [29].确定型模糊多重集有限自动机的极小化[J]. 计算机工程与科学 2016(12)
    • [30].格值模糊有限自动机的同态[J]. 模糊系统与数学 2020(01)

    标签:;  ;  ;  

    基于自动机的嵌入式HTML解析器的设计与实现
    下载Doc文档

    猜你喜欢