Chrome V8基本介绍
Posted 前端高级开发者
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Chrome V8基本介绍相关的知识,希望对你有一定的参考价值。
Chrome V8
chrome v8也可以简单的说成v8, 是一个开源的javascript引擎, 它是由谷歌Chromium项目团队开发, 应用在chrome和基于chromium浏览器上. 这个项目由Lars Bak创建. V8引擎的第一个版本发行时间和Chrome的第一个版本发行时间是一样的: 2008年9月2号. 它同样也用在Couchbase, MongoDB和node.js上.
V8在执行javascript之前, 会将javascript编译成本地机器代码, 来代替更多的传统技术, 比如解释字节码或者编译整个应用程序到机器码, 且从一个文件系统执行它. 编译代码是在运行时动态的优化, 基于代码执行情况的启发式方式. 优化技术的使用包含inlining, 消耗运行时性能的elision, 还有inline caching.
V8 可以编译成 x86, ARM或者MIPS指令设置结构的32位或者64位版本; 同样他也被安装在PowerPC和IBM s390服务器上.
历史
V8的垃圾回收器是一个分代增量收集器. V8汇编是基于Strongtalk汇编. 在2010年12月7号, 一个新的编译部件Crankshaft发行, 改善了编译速度. 在2015, chrome41版本发行期间, 项目TurboFan添加到Chrome中, 加快了更多的速度, 比如asm.js
在2016年, Ignition解释器添加在v8中, 用于小内存的android设备, 减少内存的使用.
在2017年, V8装载了一个全新的编译管道, 由Ignition(解释器)和TurboFan(优化编译)组成. 在V8 5.9版本后, 所有代码生成和Crankshaft不再使用在V8的javascript执行中, 因为团队不会在javascript语言新的特点上去更新他们, 也不再优化他们必要的特性.
使用
V8的目的是使用在浏览器和一个标准的高性能引擎, 可以集成到依赖它的项目中. V8目前被使用在:
Goole Crhome, Chromium, Opera, Vivaldi浏览器中.
Couchbase数据库
Nodejs运行环境
Electron 软件框架, Atom和Visual Studio Code的底层构件
以上是关于Chrome V8基本介绍的主要内容,如果未能解决你的问题,请参考以下文章