[发明专利]基于机顶盒浏览器的JavaScript解释器实现方法无效
申请号: | 201110131404.0 | 申请日: | 2011-05-19 |
公开(公告)号: | CN102202242A | 公开(公告)日: | 2011-09-28 |
发明(设计)人: | 黄旭阳;雷曾荣;罗育泽;刘宇 | 申请(专利权)人: | 广东星海数字家庭产业技术研究院有限公司;中山大学 |
主分类号: | H04N21/4782 | 分类号: | H04N21/4782 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 510006 广东省广州市番禺区*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 机顶盒 浏览器 javascript 解释 实现 方法 | ||
技术领域
本发明涉及数字家庭技术领域,具体涉及一种基于机顶盒浏览器的JavaScript解释器实现方法。
背景技术
数字电视的一个重要功能就是实现条件接收功能:机顶盒又是一种基于Internet的终端,因此,需要一种平台支付的手段。为了支持平台支付,需要JavaScript扩充其内置函数库,提供与平台支付相关的函数,如,扣费函数,终端消息签名函数等。另外,随着数字电视的部署,机顶盒将大规模的进入百姓家里,这样要求严格控制机顶盒的成本。因此机顶盒的配置将非常低,目前市场上常见的数字电视机顶盒配置是4M Flash,16M内存,CPU处理主频在130M左右(近期已有很多高主频产品出现),这样对浏览器和解释器的要求非常高。一般来说,要求数字电视机顶盒的嵌入式浏览器运行期间占用内存在6M下,代码大小小于1M。IPTV机顶盒的配置会相对比数字电视机顶盒高,使嵌入式浏览器发挥空间更大。在性能方面针对嵌入式系统的特点,要求解释效率高,对JavaScript的支持能够进行方便的扩充;同时要求与浏览器间的交叉尽可能少以便将JavaScript解释引擎向插件的形式方向发展。
在对此方法的研究和实践过程中,本发明的发明人发现:本发明的解释器能够在嵌入式浏览器中快速、 高效地执行网页中嵌入的JavaScript语言 ,提高了嵌入式浏览器与用户的实时性、 动态性以及交互性。能够有效地降低了小内存块的大规模使用,提高了内存利用率,效果良好。
发明内容
本发明要解决的技术问题是提供一种基于机顶盒浏览器的JavaScript解释器实现方法能够在嵌入式浏览器中快速、 高效地执行网页中嵌入的JavaScript语言 ,提高了嵌入式浏览器与用户的实时性、 动态性以及交互性。能够有效地降低小内存块的大规模使用,提高内存利用率。
一种基于机顶盒浏览器的JavaScript解释器实现方法,其特征在于:包括解释器系统包括解释前端和解释后端及解释执行控制模块。解释前端包括词法分析器模块、语法分析器模块、源文件模块、出错处理模块、中间码生成模块;解释后端包括执行栈模块、对象库模块、子句解释器模块、表达式规约模块、对象解释模块、与浏览器交互模块、系统资源管理模块;其中,
词法分析器模块将源程序以字符串的方式读入,并将其分为若干个记号,记号于自然语言中的单词类似。我们将JavaScript语言的单词分为标识符、字符串、整数、浮点数、布尔值、运算符等。源程序经过词法分析后生成一个单词双向链表,供后面的语法分析器模块调用。
语法分析器模块以单词链表作为输入,分别调用不同的语句识别器,识别它们是否符合给定文法,并最终生成一个语法树结构的中间代码,供后面解释执行控制模块执行。
中间码生成模块是把源程序经词法分析和语法分析后产生的结果生成为中间结果。它包含程序流程结构和数据字典两方面的内容。程序流程结构中包含了各种语句结构,数据字典是用来存放程序数据的地方,它是指存贮的全局变量、子程序中的局部变量和复合语句中的局部变量的集合。数据字典供表达式归约模块在归约过程中查找所需要的数据。
解释执行控制模块解释执行控制器负责根据预先生成好的中间数据结构,按照语句的语义对源程序语句进行逐条解释执行。它控制程序的顺序执行过程。执行过程中调用语句解释器解释执行单条语句,并根据解释结果控制程序的继续执行或终止。
执行栈模块是表达式归约模块所要用到的数据结构,它包含一个符号栈和一个操作数栈,分别用来存放表达式归约过程中的终结符号和操作数。
对象库模块也是用来存放程序数据的地方,它是指存贮的系统定义对象、
浏览器文档模型中的对象和用户自定义对象的集合。对象库为解释器的对象解释提供了运行基础,同时也为解释器与浏览器的交互提供了运行机制。它包含了对象的属性、方法和事件处理等方面的内容。
出错处理模块负责处理词法分析、语法分析及解释执行过程中出现的错
误,如果源程序词法语法不符合JavaScript语言的规则,或者执行时出现错误,则记录当前执行的语句,并立即返回。
子句解释器模块完成单条语句的解释执行。每一种类型的语句都对应一个语句解释器。它根据语句类型完成相应的语义动作。子句解释器在解释过程中调用表达式归约模块计算表达式的值,并根据计算结果控制语句流程。
表达式归约模块完成在语句执行过程中组成语句的各种表达式的运算。表达式归约模块按照表达式的产生式规则找出子表达式进行归约最终得出表达式的运算结果。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广东星海数字家庭产业技术研究院有限公司;中山大学,未经广东星海数字家庭产业技术研究院有限公司;中山大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110131404.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:真空电镀紫外光固化底漆
- 下一篇:一种检测热插拔设备的方法及系统