学校名称北京理工大学
院系名称计算机科学与工程系
本科生学号 9709004
嵌入式浏览器开发专业 计算机软件
本科生姓名高波指导教师姓名张丽芬
学海无涯苦作舟!
本文主要论述了嵌入式浏览器开发所涉及到的技术对 HTML词法分析、浏览器JavaScript支持、 l inux和gtk编程等做了详细的分析和介绍并对Netbit浏览器的开发进行了介绍分析了主要的模块的功能和组成并给出了主要算法。
还对典型的嵌入式浏览器进行了分析包括Gzil la,Mozi l la,Thunder和zen,总结了浏览器设计的技术要点和开发策略。
另外在论文开头介绍了目前嵌入式浏览器产品的发展现状嵌入式浏览器的组成和各部份功能说明。
HTML司法分析是着重讨论的技术问题给出了详尽的数据结构程序流程。
Netbit浏览器的开发是本论文的重点分模块进行了分析 提出了需要改进的地方并给出了改进措施。
关键词 嵌入式浏览器 HTML司法分析 Javascript l inuxgtk
学海无涯苦作舟!
ABSTRACT
This paper is focused on the tech no logy of embedded browser.Htmlscanner, JavaScript support for browser, l inux and gtk programmingare deeply discussed.and introduce the developme nt of Netbitbrowser,an alyse the mai n module of Netbit, the algorithm is presented.what's more,other typical embeddedbrowsers are analysed, includeGzi l la,Mozi l la,Thunderand zen,and summarize the importa nttech nology and the pol icy of browser developme nt
In addition,at the head of the paper, introduce the presentstatus of embedded browser product,the general form ofembedded browser and descriptio n of the main parts.
HTMlsca nner is an importa nt tech no logical problem, the datastructure and the flow of the program are prese nted.
The developme nt of Netbit Browser is mainly discussed,a nd analysed by module,give the opinion to improve it.
KEY WORDS:embedded browser,HTML toke n, Javascript, l i nu x,gtk
学海无涯苦作舟!
第一章嵌入式浏览器设计概述6
1.1 目前嵌入式浏览器产品的发展现状 6
1.2嵌入式浏览器的组成和各部份功能说明 , , , , , 8
1.3开发难度分析, , , , , , , , , , , , , , , , , ,9
1.4开发的前期策划10
第二章HTML词法分析器的设计及其应用 , , , ,12
2.1 Bit Toke n 的组成及其功能 , , , , , , , , , , ,12
2.2数据结构, , , , , , , , , , , , , , , , , , , ,12
23算法 13
2.4词法分析结果示意, , , , , , , , , , , , , , , , ,15
2.5 HTML词法分析的应用, , , , , , , , , , , , , ,15
第三章浏览器 JavaScr ipt支持的实
现 , , , , , 1 8
3.1基本的JavaScript 开发环境, , , , , , , , , , , ,18
3.2 JavaScript Engine, , , , , , , , , , , , , , , 18
3.3 JavaScript 与浏览器接合, , , , , , , , , , , , , 19
3.4 浏览器消息响应, , , , , , , , , , , , , , , ,21
第四章Linux 程序开发技术及GTK图形程序开发, ,
2 3
4.1 Linux下的程序开发环境, , , , , , , , , , , , , ,23
学海无涯苦作舟!
4.2 GTK图形程序开发, , , , , , , , , , , , , , , , ,29
学海无涯苦作舟!
第五章Netbit浏览器开发与分析31
5.1 Netbit浏览器简介, , , , , , , , , , , , , , , ,
3 1
5.2 Netbit Browser 浏览器各部份的功能 31
5 3 界 面 模块,J J J J J J J J J J J J J J J J J, ,32
5 4 控 制 模块,J J J J J J J J J J J J J J J J J, ,34
5.5词法分析模块, , , , , , , , , , , , , , , , , ,34
5.6使用PIXMAP勺画图模块, , , , , , , , , , , , , , ,35
5 .7 文 本文 件的 显 示模块J J J J J J J J J J J J J J J,36
5.8HTML文件的显示模块 , , , , , , , , , , , , , 1J 37
5.9 Netbit实际应用效果及比较, , JJJJJJJJJJ 40
5.10 Netbit Browser的缺点分析及改进办法 , , , , , ,44
5.1 1 Netbit Browser未来的展望, , , , , , , , , , , ,48
第六章其它浏览器分析, , , , , , , , , , , , , ,
5 0
6.1 Di l lo(Gzi l la)浏览器分析, , , , , , , , , , , ,50
6.2 Thunder浏览器分析, , , , , , , , , , , , , , , ,55
6.3 Mozi l la 浏览器分析, , , , , , , , , , , , , , , ,56
6.4 ZEN浏览器分析, , , , , , , , , , , , , , , , , ,57
6 . 5 浏览器分析工作的总
结 58致谢 60
七入-久IJ J J J J J J J J J J J J J J J J J J J J J J J72
参考文献表, , , , , , , , , , , , , , , , , , , , ,61
学海无涯苦作舟!
随着计算机、网络技术的迅猛发展新型的高科技含量的电子产品层出不穷遍及家电、生产、军事等各个领域。嵌入式系统因其体积小速度快而受到重视。在掌上电脑、 PDA手机、导航设备、信息家电领域嵌入式系统被广泛采用这也是近期产品研发的热点。嵌入式浏览器作为重要的嵌入式系统应用软件是不可或缺的。但目前嵌入式浏览器产品的市场被少数国外大公司垄断众多的小型嵌入式浏览器也尚处于发展期而国内的自主技术的嵌入式浏览器更屈指可数刚刚进入实用阶段。迫切需要更多的人来关注嵌入式浏览器技术开发中国自主知识产权的浏览器产品。
本文阐述了嵌入式浏览器开发的关键技术并详细说明
Netbit Browser的实际开发过程技术细节。并以网站的方式公布了其源代码为国内嵌入式浏览器的发展做了有益的尝试。
学海无涯苦作舟!
第一章嵌入式浏览器设计概述
1 .1 目前嵌入式浏览器产品的发展现状
1.1.1桌面浏览器简介及其与嵌入式浏览器的区别
常见的桌面浏览器有微软的 In ternet Explorer 网景的Netscape开放源码的Mozi l la 以及opera mosaic,Hotjava 字符模式的lynx等。其中IEOpera已有嵌入式版本 以上的大多数浏览器均有跨多平台的版本。这些桌面型浏览器功能参差不齐但大多能实现基本的浏览功能。其中IE与Netscape对HTML页面的显示效果均堪称完美(对于XMLWM等标准的网页浏览 本文不予讨论)。
与完美的浏览效果功能丰富支持多种媒体格式和视音频插件等优点形成对立的是这些浏览器庞大的体积和对机器配置的高要求。这也是桌面浏览器和嵌入式浏览器最大的区别。 另外桌面型浏览器通常是基于通用的操作系统用于桌面电脑如 PC机、 MAC机等。而嵌入式浏览器通常基于专用系统。
需要指出的是我们在网上常看到的一些所谓的优秀浏览器 如Netcaptor魔装网神腾讯飓风 Fantasia金山WPSbffice的浏览器等等均为使用IE内核的浏览器使用了多页面多线程的方式降低了系统资源的耗费方便了浏览但软件本身没有多少技术可言可以用Delphi VB等工具轻易开发出来(如果不要求完善的功能只需简单到拖一个I E控件过去就行了)这也体现了微软的COMM ActiveX技术的强大。
1.1.2常见嵌入式浏览器
(1) 1 nternet Explorer for WinCE 是IE的Windows CE版这
也意味着用户为了使用它必须选用基于 WinCE平台的产品
随着微软势力在掌上终端领域的蔓延WinCE版的IE必将大行其道。
(2)Access Netfront Access是日本的浏览器大厂 占据了大部份的日
本浏览器市场其产品广泛应用于手持设备、机顶盒、
学海无涯苦作舟!
游戏机等产品。其新推出的Netfro nt Linux 版本可以免费下载 网址是 http://www.access.co.jp/product/develop 。经试用发现Netfront浏览效果非常好对中文的支持和表格的显示效果甚至超过Netscape 4.6 for Lin ux 。而且支持键盘操作。可以使用箭头键来选择网址进行跳转。 但显然为了简化设计 Netfront使用了一定的权宜手段。 比如它不支持使用vfont标记来设置字体也不支持样式表所有字体的大小是固定的但一般情况不易发现不过由于Linux版本不是商业性版本无法就此推断其他版本的特性。 Netfro nt Linux版大小为1.9M如再加以简化比如去掉一些图片按钮可以做的更小。
⑶Gzi l la现名Di l lo是基于Linux使用GTK乍为GUI平台开发的浏览器其开发目的也包含嵌入式的应用。是开放源码项目。我们在设计Netbit Browser时主要参考了该浏览器的界面设计。该浏览器的缺点是不支持表格布局过于简单不支持中文浏览效果比较差优点是网络功能完善支持cache缓冲能够支持多种图片格式。 网址是http://www.gzi l la.com。
⑷Viewml 使用FLTK作为GUI平台开发的浏览器主要面向嵌入式的应用。是开放源码项目。使用C++面向对象的设计。因为使用FLTK所以可以在嵌入式的Micro Window平台运行该浏览器支持简单的表格界面还没有做只有一个主窗口 不支持中文 由于FLTK的BUG比较多我们在实际编译时经常出错 即使编译通过也常常是还没运行就 core dump了但曾经由某人编译成功基本可用 网址是 http://www.viewml .co m。5ZEN,—个并不知名的嵌入式浏览器但却十分优秀开放源码项目不仅支持表格支持多种图像格式而且在设计上很有特色将涉及到GUI平台的部分独立出来用户可以指定不同的GUI平台运行 内置了对字符 SVGA和GTK的支持开发这只需按照相应规范编写该软件的涉及 GUI的部份就可以将其移植到其它GUI平台而无须对整个软件进行修改。缺点是网络功能比较弱不支持多线程另外其必须等到所有图片下载完毕才开始布局若某文件传输失败则会导致死锁需用户中断。 网址是http://www. no crew.org/software/ze n/ 。
俄罗斯vps速度怎么样?俄罗斯vps云主机节点是欧洲十大节点之一,地处俄罗斯首都莫斯科,网络带宽辐射周边欧洲大陆,10G专线连通德国法兰克福、法国巴黎、意大利米兰等,向外连接全球。俄罗斯vps云主机速度快吗、延迟多少?由于俄罗斯数据中心出口带宽充足,俄罗斯vps云主机到全球各地的延迟、速度相对来说都不错。今天,云服务器网(yuntue.com)小编介绍一下俄罗斯vps速度及俄罗斯vps主机推荐!俄...
创梦网络怎么样,创梦网络公司位于四川省达州市,属于四川本地企业,资质齐全,IDC/ISP均有,从创梦网络这边租的服务器均可以****,属于一手资源,高防机柜、大带宽、高防IP业务,另外创梦网络近期还会上线四川眉山联通、广东优化线路高防机柜,CN2专线相关业务。广东电信大带宽近期可以预约机柜了,成都优化线路,机柜租用、服务器云服务器租用,适合建站做游戏,不须要在套CDN,全国访问快,直连省骨干,大网...
易探云怎么样?易探云(yitanyun.com)是一家知名云计算品牌,2017年成立,从业4年之久,目前主要从事出售香港VPS、香港独立服务器、香港站群服务器等,在售VPS线路有三网CN2、CN2 GIA,该公司旗下产品均采用KVM虚拟化架构。目前,易探云推出免备案香港物理机服务器性价比很高,E3-1230 8 核*1/16G DDR3/SATA 1TB/香港BGP线路/20Mbps/不限流量,仅...