阅读更多

16顶
0踩

互联网

转载新闻 Firefox 最新 JavaScript 引擎初探

2010-03-01 10:50 by 副主编 just_cool 评论(11) 有5242人浏览

 

自从 Google 推出含 V8 JavaScript 引擎的 Chrome 以来,公众对 JavaScript 引擎执行效率的胃口又一次被提高,众多浏览器的开发者们绞尽脑汁提升他们的 JavaScript 性能,Opera 最新的10.50 版的 Carakan 引擎据称已经超过 V8,而 Firefox 的开发者们也不甘示弱。


最近升级到 Firefox 3.6 的用户已经发现他们的 JavaScript 速度有了非常明显的改善,虽然Firefox 的 TraceMonkey 引擎和 Googel V8 比仍有差距,不过,这个状况即将改变,Mozilla 团队正在开发一个新的 JavaScript 引擎,JägerMonkey,期待将 Firefox 的 JavaScript 性能提升到一个新的水平。

 

当前,Firefox TraceMonkey 引擎之所以性能不佳的一个原因是,它的追踪(trace)算法仍存在问题,Trace 是一种可以将 JavaScript 中的循环语句进行快速编译执行的算法,但这个算法在遇到复杂的,嵌套的,尤其是递归的循环语句时,并不能正确执行(详见这篇文章),Firefox 因此会退回解释执行方式,而解释执行的效率是很低的。

 

Mozilla 团队正在解决这一问题,新的 JägerMonkey 引擎在测试中已经显露出非常积极的结果,最终的性能提高可能高达 30% ~ 40%。Mozilla 的 Dave Mandelin 对此表示乐观,他说,JägerMonkey 在执行执行全部 SunSpider 脚本的时候,Jäger 模式比解释模式快了18%,这还不算其它方面的优化与改进,他们在新引擎中所作的改进包括很多方面。

 

如果你对此感兴趣,Mandelin 的博客文章 很值得一读。简单说,起用了 JägerMonkey 引擎的 Firefox 将更加引人注目。关于 Firefox 的最新版本的相关文件,你可以到这个地址获取:http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-trunk/

 

本文来源:http://www.downloadsquad.com/2010/02/27/early-work-on-mozilla-firefox-new-javascript-engine-nets-big-speed-gai/
中文翻译来源:锐商企业CMS 网站内容管理系统 官方站

 

来自: comsharp
16
0
评论 共 11 条 请登录后发表评论
11 楼 kukuwuwu 2010-03-02 14:46
dehuai 写道
lkj107 写道
啥时候IE6才能推出中国舞台啊
啥时候那帮有钱人才更新他的浏览器啊

啥时候中国人公共意识才会提高阿

最低也得需要盗版xp退出历史舞台,期待盗版windows 7 吧
10 楼 dehuai 2010-03-02 14:32
lkj107 写道
啥时候IE6才能推出中国舞台啊
啥时候那帮有钱人才更新他的浏览器啊

啥时候中国人公共意识才会提高阿
9 楼 lenky0401 2010-03-02 13:31

帅得一塌糊涂
8 楼 yidao620c 2010-03-02 11:42
FF加油。竞争的直接后果就是速度都得翻倍。
7 楼 shinezhou 2010-03-02 09:40
牛b


6 楼 yidao620c 2010-03-02 09:16
看来一切的一切,算法还是王道。
5 楼 geminiyellow 2010-03-01 17:35
我喜欢这种感性的文章。老贴数据一点激情都没有。
用IE6关你啥事,就不更新~乖乖写好你程序,别抱怨。
4 楼 rongzhi_li 2010-03-01 15:52
有竞争才有动力
3 楼 lkj107 2010-03-01 15:47
啥时候IE6才能推出中国舞台啊
啥时候那帮有钱人才更新他的浏览器啊
2 楼 liu78778 2010-03-01 13:55
太帅了...
1 楼 骨之灵魂 2010-03-01 12:43
加油!我支持你

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • C#中using的三种用法

    using 指令有两个用途: 允许在命名空间中使用类型,以便您不必限定在该命名空间中使用的类型。 为命名空间创建别名。 using 关键字还用来创建 using 语句  定义一个范围,将在此范围之外释放一个或多个对象。 请参见 using 语句。http://www.yaosansi.com/blog/article.asp?id=669 using namespace; using alias = type|namespace;  参数 Alias  您希望用来表示命名空间或类型的用户定义符号。然后,您就可以使用 alias 来表示命名空间名称。 Type  您想通过 alias 表示的类型

  • C++ 关键字 :using

    在 C/C++ 中,定义类型别名的方法有#define、typedefusing 多种方式。#define 是宏定义关键字,用途广法,尤其是 C 中,不局限于类型别名定义。在C++中,推荐使用using来定义类型别名,因为它更符合C++的现代编程风格。似乎三者没有明显区别,当然由于#define 宏定义的本质,和后两者是可以明显区分开的。那么,typedef 和using的区别在哪里呢?首先,使用typedef定义的别名和使用using定义的别名在语义上是等效的。

  • using的几种用法

    1.using指令。using + 命名空间名字,这样可以在程序中直接用命令空间中的类型,而不必指定类型的详细命名空间,类似于Java的import,这个功能也是最常用的,几乎每个cs的程序都会用到。例如:using System; 一般都会出现在*.cs中。 2.using别名。using + 别名 = 包括详细命名空间信息的具体的类型。这种做法有个好处就是当同一个cs引用了两个不同的命名空间...

  • C#程序调用非托管C++ DLL文件的方法

      08年写的一篇文章,当时项目用C#开发,但是有一些希望重用之前的C++代码,于是研究了如何在C#中调用C++的DLL。 C++中的函数声明 extern "C" __declspec(dllexport) int __stdcall testfunc(char* astr,int* a); extern ”C”   通常来说,C++编译器可能会改变函数和变量...

  • [C++/CLI] 析构函数等于IDisposable::Dispose()方法

    在以前的一篇帖子里我曾提到在C++/CLI中,会自动调用Dispose()方法。但那个时候只是从msdn上的文章中知道这样一个特性,还没有编译器的支持,所以一切也只能是纸上谈兵,很多细节都很不明朗。VC会以什么样的方式来提供这一特性,一直是我常思考的问题。然而甚至到VS.net 2005 beta1发布时,这一特性还没有得到支持。好在,在最新的Visual C++ 2005 Tool Refres...

  • c++仿C# event

    [原创]用C++模拟C#的event机制document.title="[原创]用C++模拟C#的event机制 - "+document.title 本文章为farproc.com站长袁晓辉(海洋)的原创文章,作者保留所有权利。如果转载,请务必注明来自www.farproc.com!! 作为一个C++程序员,学习C#应该不是一件很困难的事情,因为C#的许多特性都是从C++“继承”(不精确

  • C#下System::String转换成C++下string

    最近开发的C++项目中需要调用外部C#写的DLL驱动,网上有许多教程,可参考我前面转载的一篇blog。程序调用成功后需要进行数据的转换,通过查找MSDN文档找到可调用Marshal类来实现。附列,// convert_system_string.cpp // compile with: /clr #include <string> #include <iostream...

  • TransactionScope事务简介

    在.NET 1.0/1.1 版本我们使用SqlTransaction.处理事务 string connString = ConfigurationManager.ConnectionStrings["db"].ConnectionString; using (var conn = new SqlConnection(connString)) { conn.Open(); usi...

  • c#中using-添加引用-程序集(详解) 以及与 c++中include等区别

    一、c#中Using无非就三个作用,引入名字空间,减少代码输入量;给名字空间或类型定义一个别名;try-catch的一种替代。 二、c#中添加引用的作用是把其它程序集包含到本项目中,就好像在本项目中写的类一样,因为只有在一个项目中写的类才能互相识别。c#中一个项目中写的两个类是无条件相互识别的,比如在项目中写了Class1和Class2,当然这两个类的名字空间一样。在Class2的方法中可以直接

  • C# 中 using 的三种使用方法

    引入命名空间 using System; using System.Data; 使用别名 using sql = System.Data.SqlClient; namespace test { public class test2 { public test2() { sql.SqlCon...

  • 成功实现C++调用C#写的库(CLR),我的个人心得与总结

    一、先说说我的个人心得 我新建了C++ win32动态库工程,准备调用C#类库。 //使用CLR的方式,成功实现C++调用C#类库,注意事项: //1. //不要尝试在DllMain或映像初始化函数内运行托管代码,这样做会导致应用程序挂起。 //解决办法: //注释掉dllmain.cpp文件里的主函数BOOLAPIENTRYDllMain //2. //本人在实践工程中遇到两个难点: /......

  • 基于纯verilogFPGA的双线性差值视频缩放 功能:利用双线性差值算法,pc端HDMI输入视频缩小或放大,然后再通过HDMI输出显示,可以任意缩放 缩放模块仅含有ddr ip,手写了 ram,f

    基于纯verilogFPGA的双线性差值视频缩放 功能:利用双线性差值算法,pc端HDMI输入视频缩小或放大,然后再通过HDMI输出显示,可以任意缩放。 缩放模块仅含有ddr ip,手写了 ram,fifo 代码,可以较为轻松地移植到其他平台。 硬件平台:易灵思 ti60f225 EDA平台:efinity

  • 【java毕业设计】智慧社区智慧社区管理员密码修改与重置系统(源代码+论文+PPT模板).zip

    zip里包含源码+论文+PPT,有java环境就可以运行起来 ,功能说明: 文档开篇阐述了随着计算机技术、通信技术和网络技术的快速发展,智慧社区门户网站的建设成为了可能,并被视为21世纪信息产业的主要发展方向之一 强调了网络信息管理技术、数字化处理技术和数字式信息资源建设在国际竞争中的重要性。 指出了智慧社区门户网站系统的编程语言为Java,数据库为MYSQL,并实现了新闻资讯、社区共享、在线影院等功能。 系统设计与功能: 文档详细描述了系统的后台管理功能,包括系统管理模块、新闻资讯管理模块、公告管理模块、社区影院管理模块、会员上传下载管理模块以及留言管理模块。 系统管理模块:允许管理员重新设置密码,记录登录日志,确保系统安全。 新闻资讯管理模块:实现新闻资讯的添加、删除、修改,确保主页新闻部分始终显示最新的文章。 公告管理模块:类似于新闻资讯管理,但专注于主页公告的后台管理。 社区影院管理模块:管理所有视频的添加、删除、修改,包括影片名、导演、主演、片长等信息。 会员上传下载管理模块:审核与删除会员上传的文件。 留言管理模块:回复与删除所有留言,确保系统内的留言得到及时处理。

  • 基于51单片机的一个智能密码锁设计.7z

    基于51单片机的一个智能密码锁设计.7z

  • 《STM32单片机+2x180-SG90+2x360-SG90+OLED屏幕》源代码

    《基于STM32的舵机控制系统设计》毕业设计项目 1.STM32单片机+2x180_SG90+2x360_SG90+OLED屏幕 2.OLED屏幕显示舵机的方向、速度、角度各项数据 3.按键1:控制180度舵机正向转动角度      4.按键2:控制180度舵机反向转动角度 5.按键3:控制360度舵机正向转动并且控制舵机速度      6.按键4:控制360度舵机反向转动并且控制舵机速度 7.代码里面含有注释 8.硬件实物接上线就能直接运行

  • pyside6-qml-modern-uiapp

    Pyside6+Qml+QtCreator做的桌面app

Global site tag (gtag.js) - Google Analytics