一种WAP嵌入式浏览器的设计
1.2 网页工作流程
数据从URL发出一个网页请求,提交到通信模块,通信模块得到数据之后,交给数据处理模块进行解析。生成DOM树,然后布局模块会根据DOM树上的节点进行布局整理,同时将布局信息存储到DOM树中,最后绘图模块会对客户端进行绘制。一般情况下,浏览器中看到的就是绘图模块的绘制效果。页面访问流程如图3所示。
图3 页面访问流程
在嵌入式浏览器设计时中考虑了C/S(Client/Server)结构,即客户机和服务器结构。它是软件系统体系结构,通过它可以充分利用两端硬件环境的优势,将任务合理分配到Client端和Server端来实现,降低了系统的通讯开销。在此设计中,解析处理和文字布局均在server处理,最终显示在client端。
2.1 解析处理
获得WML文件之后,开始读取WML文件,获取字符,判断是否是“”字符。如果是,就继续判断是否是标签开始符。如果是起始标签,获取元素的属性,比如属性值和属性名称等,属性由WML文档的DTD定义。也就是程序自动判断是文本格式、图片格式、表格格式、还是其他格式,根据格式类型进行不同的解析。最后,将当前状态以及参数值进行存储,依次循环,直至循环结束,生成DOM树。具体流程如图4所示。
图14 解析流程
linux操作系统文章专题:linux操作系统详解(linux不再难懂)
评论