Posted at 2021-08-11
本文同步发布到知乎 背景 最近因为项目原因,在项目中使用 Emscripten 将 C++ 代码编译到 WASM 以便在浏览器执行。借助这个过程我也学习了 WASM 上代码执行的方法。借助这个机会,用这篇文章介绍 C++ 是如何借助 WASM 字节码是执行的。 名词解释 WASM: WebAssembly,这个不多介…
Posted at 2020-12-26
上一篇文章 里面主要解释了 了 QuickJS 虚拟机的运作。第二篇文章打算介绍一下 QuickJS 里面 JavaScript 基础设施的实现。 基础设施 注意,使用 QuickJS 新建 JSContext 的时候,默认是不带基础设施的 (比如说 JSON 解析、Object、等等)。 这时候,可以调用以下命令进…
Posted at 2019-08-27
简介 Quick JS 是 Fabrice Bellard 今年发布的一款 JavaScript 引擎,具有以下特性: 轻量而且易于嵌入:只需几个C文件,没有外部依赖,一个x86下的简单的“hello world”程序只要180 KiB。 具有极低启动时间的快速解释器: 在一台单核的台式PC上,大约在100秒内运行E…