2014年11月,Mozilla第一次发布“为开发者而生”的浏览器时,就宣布了他们正在筹备开发64位开发版Firefox。在OSX和Linux的基础上,开发团队也加入了对Windows的支持。
在“ Firefox开发版38:支持64位和更多新特性 ”一文中,作者Dave Camp,Mozilla开发者工具的负责人,还有Mozilla的技术专员Jason Weathersby,写下了这样一句话:“64位版本是一个新的里程碑,它在浏览器中给用户提供了丰富的,不亚于桌面应用软件的体验。”
对于游戏开发者来说,64位的浏览器是一个巨大的福利,Camp和Weathersby说。
32位浏览器有4GB地址空间的使用限制,零散的碎片数据进一步削减这部分地址空间。与此同时,Web应用正在变得越来越大。
与传统的Web应用相比,基于浏览器制作的,具有高性能原生游戏体验的游戏往往比我们想象的要大得多。这些游戏需要在网络间传输大量的资源,只有把这些资源存储在内存中才可以进行同步加载。
当程序被移植到asm.js中时,如果你使用64位浏览器,那么就可以使用2GB的堆,而在32位浏览器中,你只能使用512MB的堆。这个条件可以决定一个游戏是否能够运行在浏览器中。64位开发者版本的Firefox使用了Emscripten来协助移植C和C++代码,此举能够让这些代码在Web上运行时拥有不菲的性能。
3D游戏创造平台 Playir 的创始人Ashraf Samy Hegab告诉InfoQ说:“对于现在绝大多数的Web游戏以及被移植到Web上的手机游戏来说,Mozilla新发布的64位浏览器并不会带来显著的改变,因为32位内存限制已经不是造成性能瓶颈的主要因素了。”
然而Hegab又指出,高级游戏引擎中不断增加对HTML5游戏的支持,将会给整个行业带来更大的契机。
他说:
虚幻引擎(UnrealEngine)和他们的一些新商业模型,允许入门开发者免费使用。加之Oculus和Valve公司正在不断推进新兴的虚拟现实游戏平台,不难预料,开发者们日后将可以在Web上开发更高级的游戏。
借助支持类似WebGL、asm.js和WebRTC这样技术的64位浏览器,将有望通过Web浏览器分发主机级别的游戏。
安全是64位浏览器的另一大优势,Camp和Weathersby的报告称,因为地址空间的增加,地址空间配置随机加载(ASLR)的有效性同时也增加了,进而使Web浏览器的内容更难以被利用。
开发版38隆重发布,随之而来的还有大量附加功能。WebRTC新增功能:multistream和renegotiation;Debugger UI中突出显示可优化变量;在命令行日志添加XMLHttpRequest记录的标签。
网络监控工具可以列出来自Firefox的网络请求数据:每一个请求花费多长时间,每一个请求的详细内容,也可以在控制台日志中筛选XMLHttprequest请求(因为它对调试代码非常有用)。
此外,Firefox开发版38增加了对于Ruby的最新支持,CSS Ruby默认启用,并且支持HTML5 Ruby标签。关于Ruby支持的更多信息可移步 “ Firefox开发版38中的Ruby支持 — Xidorn Quan ”。
查看英文原文: Firefox Developer Edition Brings 64-bit Windows Builds
感谢丁晓昀对本文的审校。
给InfoQ中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ,@丁晓昀),微信(InfoQ)关注我们,并与我们的编辑和其他读者朋友交流。