写点什么

微软开源 Chakra,并计划在上面运行 Node.js

  • 2016-01-15
  • 本文字数:1114 字

    阅读完需:约 4 分钟

微软兑现了开放Edge 浏览器JavaScript 虚拟机的承诺,遵循宽松的 MIT 许可协议开放了 Chakra 的源代码。开源代码以 ChakraCore 的名称发布,基本上同微软用于 Edge 和通用 Windows 平台(UWP)的 VM 是同一个,只是去掉了同 Edge 和 UWP 的绑定以及部分 COM 诊断 API。

ChakraCore 是作为一个嵌入式引擎推出的,可以包含到各种桌面、服务器和 IoT 应用程序中,微软希望开发者发现它在这个方面的用途。该引擎使用 JavaScript 运行时(JSRT)API 进行了封装,后者提供了到 _ 运行时 _ 及一个或多个 _ 执行上下文 _ 的访问。ChakraCore 有自己的垃圾收集和异常管理。它所支持的 ECMA2015 语言特性都不需要任何设置,但要在 ChakraCore 中使用 _Promises_,需要将 Promises 任务在 _EnqueueJob_ 中排队。

除了常用的 V8 虚拟机外,微软还致力于在 ChakraCore 引擎上运行 Node.js。通过在 JSRT 上创建了一个 V8 shim,他们已经实现了这一目标,使 Node.js 应用程序可以正常运行,而不需要知道底层的 JavaScript VM。该项目托管在 GitHub 上,名为 Microsoft/node

微软计划向 ChakraCore 添加现代化的诊断 API,而且他们正致力于 Time Travel Debugger 的研发。这是一款调试工具,允许开发人员在调试过程中回到上一步,这有助于调试包含回调的代码。微软已经在一个 Node.js/ChakraCore 应用程序(包含超过 100 个模块,运行在装有 Windows 10 IoT 的 Raspberry Pi 2 上)上演示了该调试器。他们计划继续发展这项技术,待它成熟后将其开放。

在不久的将来,微软计划从Linux Ubuntu 15.10 x64 开始将ChakraCore 移植到其他平台。他们还计划正式支持部分目前通过试验标识支持的JavaScript 特性——解构赋值、默认参数、指数运算符、Async。他们将通过试验标识支持ES2015 模块,并计划通过asm.js 管道运行 WebAssembly 代码。

开发人员会使用 ChakraCore 吗?微软认为他们会的。微软展示了诱人的性能基准测试结果,其中,Edge 在Octane 2.0 和Jet Stream 两项测试上击败了最新版本的Chrome 和Firefox。此外,从 Kangax 的 JavaScript 兼容性表格可以看出,ChakraCore 支持 79% 的 ES6 特性,相比之下,Firefox 45 支持 85%,而 Chrome 49 支持 71%。不管应用结果如何,微软都计划开放 CharkraCore 的开发,包括将结果用到 Edge 和 UWP 上。

查看英文原文: Microsoft Open Sources Chakra and Wants to Run Node.js on It


感谢谢丽对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群(已满),InfoQ 读者交流群(#2))。

2016-01-15 18:003614
用户头像

发布了 1008 篇内容, 共 447.7 次阅读, 收获喜欢 346 次。

关注

评论

发布
暂无评论
发现更多内容

阿里最受追捧的,中高级技术核心,助我拿下菜鸟offer,附面经

程序员小呆

Java 程序员 面试 架构师 java面试

实体链接在OPPO小布助手和OGraph的实践应用

OPPO小布助手

人工智能 智能助手 nlu 语音助手 自然语言理解

014云原生之云数据库

穿过生命散发芬芳

云原生 10月月更

GitHub爆火!阿里内部Java高并发系统设计全彩手册曝光,极致的理解!

Java 架构 面试 程序人生 编程语言

什么样的云管平台才是企业需要的?他们的真正诉求是什么?

行云管家

云计算 云管平台 云资源 云成本

Alibaba高级架构师撰写的SQL笔记,不止收获SQL优化更能抓住SQL的本质

Java 架构 面试 程序人生 编程语言

无敌是多么的寂寞!这份在各大平台获百万推荐的Java核心手册称得上史上最强!

Java 架构 面试 程序人生 编程语言

自定义 View:如何手动绘制一个头像控件

Changing Lin

10月月更

MySQL 数据库开发入门(一):安装与常用命令

程序员小呆

出神入化!字节技术小组耗时99天打造Java零基础到中高级核心手册

Java 程序员 架构 面试 后端

阿里技术官手码23W字Java面试,在Github上爆火,惨遭多家大厂威胁下架

程序员小呆

Java 程序员 面试 架构师 java面试

让GitHub低头!这份阿里内部的10W字Java面试手册到底有多强?

程序员小呆

Java 程序员 面试 架构师 java面试

我一口气面试6家大厂,已拿下5家offer,分享经验和Java资料,其实大厂没有你想象中难!

程序员小呆

Java 程序员 面试 架构师 java面试

解读clickhouse存算分离在华为云实践

华为云开发者联盟

数据库 Clickhouse OBS 华为云 存算分离

2021年阿里巴巴最新Java面试学习资料汇总:从基础到高级、框架、数据库、多线程并发知识、分布式、以及企业的面试真题

Java 编程 程序员 架构 面试

终于进了字节!记录我作为一名程序媛磕磕碰碰的三个月找工作经历

Java 程序员 架构 面试 后端

OceanBase 存储层代码解读(一)引言

OceanBase 数据库

oceanbase OceanBase 开源 OceanBase 社区版 OceanBase 数据库大赛

AtomSolutions与Bholdus缔结业务合作伙伴关系

Geek_c610c0

我用这份10w字的Java面经,暑假在家闭关7749天成功拿下美团offer!

程序员小呆

Java 程序员 面试 架构师 java面试

二级等保测评通过需要多少分?去哪里找等保测评机构?

行云管家

网络安全 等级保护 等保测评 等保2.0

靠这份1500道面试题的资料,助我拿下7家大厂offer !其中一家是美团

程序员小呆

Java 程序员 架构师 java面试

Java 异常机制

码界行者

Java Exception 异常机制

第 15 章 -《Linux 一学就会》- LVM管理和ssm存储管理器使用

学神来啦

Linux 运维 ssm lvm linux云计算

我从外包辞职了,10000小时后,拿了字节跳动的offer!

Java 程序员 架构 面试 后端

如何做好Code Review

百度开发者中心

最佳实践 方法论 工程能力

流行技术限时开源!Alibaba新产“Java面试权威指南”助阵金九银十

Java 编程 程序员 架构 面试

字节跳动等10+公司面经+面试题+答案分享! 35K不是梦

程序员小呆

Java 程序员 面试 架构师 java面试

本以为能躺着进华为,结果陆续收到京东/滴滴/爱奇艺offer的我迷茫了

Java spring 算法 编程语言

Stratifyd创始人汪晓宇:从战略层建立数据驱动型客户体验策略

推荐 7 个 yyds 的开源项目

开源 编程 架构 计算机

为 Elasticsearch/Kibana 配置账号和 https(qbit)

qbit

https 安全 TLS ssl

微软开源Chakra,并计划在上面运行Node.js_开源_Abel Avram_InfoQ精选文章