原文:深入出不来nodejs源码-V8引擎初探

原本打算是把node源码看得差不多了再去深入V 的,但是这两者基本上没办法分开讲。 与express是基于node的封装不同,node是基于V 的一个应用,源码内容已经渗透到V 层面,因此这章简述一下我目前理解的V 引擎吧。 首先需要理解的是V 是一个JS代码运行平台,可以将JS代码编译执行。 本节就非常浅显的讲一下V 内部一些常见类,以及一个运行JS代码的简单demo。 由于研究V 引擎原理的 ...

2018-06-27 12:42 0 3679 推荐指数:

查看详情

深入V8引擎-AST(1)

  没办法了,开坑吧,接下来的几篇会讲述JavaScript字符串源码v8中转换成AST(抽象语法树)的过程。   JS代码在V8的解析只有简单的几步,其中第一步就是将源字符串转换为抽象语法树,非常类似于vue中将html转换为VNODE的过程。该过程涉及的类并不多,均位于/src ...

Mon Jul 01 20:43:00 CST 2019 0 814
深入V8引擎-AST(2)

  先声明一下,这种长系列的大块头博客只能保证尽可能的深入到每一行源码,有些代码我不乐意深究就写个注释说明一下作用。另外,由于本地整理的比较好,博客就随心写了。   整个Compile过程目前只看到asmjs之前,简单的过了几遍,大部分方法没有点进去看,实在是太复杂了。上一篇的结尾指出了AST ...

Tue Jul 02 19:58:00 CST 2019 0 410
nodejsv8引擎

Motivation JavaScript 是一款拥有「自动垃圾回收」功能的编程语言。 市面上具有这样功能的语言,一般都是拥有相对应的虚拟机的,像 Java的JVM ,C#的CLR ,PHP的Ze ...

Thu Dec 15 19:41:00 CST 2016 0 8890
nodejs v8引擎

Node.js 线程你理解的可能是错的 本文代码运行环境 系统:MacOS High Sierra Node.js:10.3.0 复制代码 Node.js是单线程的,那么Node.js ...

Tue Jan 22 23:05:00 CST 2019 0 582
为什么V8引擎这么快?

目录(?)[-] 高速引擎的需求 语言本身的问题 JIT编译 JIT Compile 垃圾回收管理 内嵌缓存inline cache 隐藏类 内嵌缓存Inline Cache 机器语言的特性 附录熟悉OOP的程序员之参考 ...

Mon Sep 23 14:18:00 CST 2013 22 583
深入出不来nodejs源码-内置模块引入初探

  重新审视了一下上一篇的内容,配合源码发现有些地方说的不太对,或者不太严谨。   主要是关于内置模块引入的问题,当时我是这样描述的: 需要关注的只要那个RegisterBuiltinModules方法,从名字也可以看出来,就是加载内置模块。   然而并不是啊……从名字可以看出来 ...

Thu Jun 14 22:33:00 CST 2018 4 2629
深入V8引擎-编译启动

记录一下步骤,方便以后换了电脑重新编译。 1、搞定depot_tools,git地址:git clone https://chromium.googlesource.com/chromium/too ...

Mon May 20 01:15:00 CST 2019 2 699
深入V8引擎-初始化之InitPlatform

上一篇其实想讲初始化的第二步,但是内容比较无聊,所以换了一个话题,谈了谈v8的命名空间和宏,稍微轻松一下。 在这里还是接着说说初始化过程,毕竟写博客的初衷是对自己努力的记录,不是为了吸粉,这篇没图,对代码本身没有兴趣的可以跳过了。 再多说几句,讲一下我怎么看的源码吧。源码的一些方法涉及 ...

Fri Jun 07 00:02:00 CST 2019 0 473
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM