红联Linux门户
Linux帮助

在Linux和OS X中使用ChakraCore

发布时间:2016-08-02 14:59:50来源:blog.csdn.net/zajin/作者:进哥1720
1月份,我们开源了Chakra JavaScript引擎的核心组件ChakraCore,它驱动着Microsoft Edge和Universal Windows Platform。我们曾说过我们要做一流产品,但仅仅支持Windows平台还不够,相较与其他平台来讲,JavaScript引擎往往以Linux系统为首要目标。今天在NodeSummit峰会上, 我们很高兴与大家分享我们的进程——第一款实验当中的基于Linux 64位和OS X 10.9+平台的ChakraCore解析器及运行时环境实现 还有基于Linux64位的Node.js版本(Node-ChakraCore)实现。虽然我们的开发及测试会优先支持Ubuntu 16.04LTS版,但不要担心,移植到其它现代版的Linux分支应该是比较容易的。
在Linux和OS X中使用ChakraCore
 
ChakraCore以及借助于拓展版的Node-ChakraCore,让其他平台支持着与Windows平台相同的多种的JavaSCript特性支持,同时也经过ECMAScript一致套件test262(除了Intl属性还在开发外)的官方测试。目前跨平台的实现版本还不支持JIT编译、并发和部分GC属性,但这些会在后续开发中支持。
 
用ChakraCore构建跨平台应用
将ChakraCore引入Linux、OS X平台无非就是使程序员有能力开发出跨平台的应用。寄存于ChakraCoreJavaScript Runtime (JSRT) APIs(JavaScript运行时环境接口)起初是为Windows而设计,所以不可避免的依赖某些Windows API,如Win32使用UTF16-LE编码字符串,而其他平台或许使用的是UTF-8编码。所以跨平台的支持会造成一些JSRT的API重构,甚至是重新设计,只有这样程序员才可以不用关心平台而直接集成ChakraCore。同时维护后续的支持也是我们追寻的主要原则之一,因此,以前的JSRT的代码依然可以正常运行。你可以在Windows/Linux/OS X平台上构建引擎,写一个 Hello-world程序开始开始ChakraCore!
 
Linux上的Node-ChakraCore
带着Node-ChakraCore成为Node.js生态一员的想法,开始此项目,已是一年有余。一开始最基本的想法之一就是要确保现有的生态可以像Node.js一样,以一个开放、跨平台的方式继续工作。
今年年初,ChakraCore开源后不久,为了能让Node.js也使用ChakraCore,我们向Node.js主线提交了一个pull请求。目前,我们正在进行着Node-ChakraCore发展历程中又一个重要步骤。为了能让Linux也支持ChakraCore,我们还在我们的repo中共享了Linux版本的Node-ChakraCore第一预览版。这是在很早前实施的一步,为了使Linux完全支持ChakraCore,但是我们很高兴能分享这个过程。
在Linux和OS X中使用ChakraCore
 
接下来
这只是我们跨平台努力的开始,我们会持续增强我们对跨平台的支持。随着我们的不断进步,我们会继续更新ChakraCore路线图。当前我们正致力于国际支持,以使ChakraCore具有同样的跨平台特性。尤其优先要做的是确保ChakraCore的非Windows用户也能体验到和如今Windows用户相同的 顶级avaScript性能。为了这个目标,我们将把Windows平台上的全功能ChakraCore JIT 编译器、并发和部分GC属性迁移到其它平台。 这些特性将会大大增强Node.js和基于ChakraCore的其它应用的性能。
 
写给CSDN的话
在CSDN的大力支持下,我们的跨平台目标已成为可能。我们感到高兴的是收到了来自 ChakraCore issues和Gitter讨论组的建议和反馈,迄今我们还收到了许多高质量的pull请求。我们期望看到更多开发者为该项目做出贡献,并且鼓励开发者尝试实验中的Linux和OS X支持,甚至可以基于当前版本进行编译并提交pull请求以便将其移植到他们所选择的平台上。我们会一如既往地期待听到你们的反馈,通过ChakraCore或Node-ChakraCore repo中的开放issue,我们总能收到你们的反馈,或者可以发送推特给我们@ChakraCore。
 
本文永久更新地址:http://www.linuxdiyf.com/linux/22935.html