Hiphop原理分析
文章平均质量分 87
iteye_18973
这个作者很懒,什么都没留下…
展开
-
hiphop原理分析1(1)原创--胡志广
Hiphop是Facebook开发一款PHP二进制化的一个工具,最开始是由php转为C++,但是后来发现编译为c++的话,许多的时间会花费在编译代码上面,调试不方便,对于代码来说也不是即见即所得。所以hiphop经历了这么几个阶段:HPHPC=>HPHPI=>HHVMHPHPC是静态编译,也就是把php转为c++HPHPI是一个过渡产品,类似php zend虚拟机,...2013-06-18 23:24:27 · 316 阅读 · 0 评论 -
hiphop原理分析1(2)原创--胡志广
2. Hiphop 编译原理分析接着上节没有分析完的内容继续分析2.1. hiphop 编译处理流程 编译流程以 echo “test”;简单分析(1)加载web server基本信息,通过调用RuntimeOption::Load(empty)方法进行加载(2)初始化加载扩展基本内容:prepareOptions(po, argc, argv);初始化编...2013-06-19 00:27:31 · 150 阅读 · 0 评论 -
hiphop原理分析2 原创--胡志广
我在”hiphop原理分析1”中主要引入了编译原理和hiphop的简单的词法和语法的工作原理,这章节中我将具体的来讲hiphop的语法结构、树的生成、作用域和其他语法结构的关系、以及静态分析的流程。 主要内容1.基本语法结构2.生成树的结构3.作用域的结构以及关系4.analyzeprogram分析 1. 基本语法结构首先来说一下hiphop的整体...2013-06-22 23:16:09 · 270 阅读 · 0 评论 -
hiphop 原理分析3(1)原创--胡志广
我在“hiphop原理分析2”中主要分析了语法结构、语法树的生成、作用域内容以及analyzeProgram的功能分析;本章中,我主要分析hiphop中的所有statement,expressio的对应关系,还有对于所有语句和表达式的analyzeProgram的详细分析。 主要内容:1.语句(statement)结构2.表达式(Expression)结构3.analy...2013-07-01 23:58:30 · 188 阅读 · 0 评论 -
hiphop 原理分析3(2)原创--胡志广
有段时间没有接着分析了,现在接着上节的分析继续分析:3. analyzeProgram详细分析经过了生成语法树后,就会执行的是analyzeProgram函数(分析阶段),在analyze_result.cpp中AnalysisResult::analyzeProgram实现的,具体功能实现主流程如下:1.初始化系统变量信息2.收集作用域内的所有函数、类3.把变量、常...原创 2013-07-28 21:22:06 · 245 阅读 · 0 评论 -
hiphop 1.0 静态版使用说明(hhvm1.0和2.1可借鉴) 原创-胡志广
1 摘要Hiphop是由facebook 公司开发的应用程序,主要是将php代码转换成C++代码进行高度优化,然后由g++生成二进制文件。官方说明hiphop要比apache+php节约50%的cpu;经测试,hiphop 要比nginx+fastcgi(加速器)的性能高出60%以上,要比nginx+fastcgi(无加速器)的性能高出150%左右。本文对hiph...原创 2013-09-13 10:31:59 · 293 阅读 · 0 评论 -
hiphop 原理分析4 原创--胡志广
下面主要分析的是优化阶段和推导阶段的分析,前优化和后优化类似,所以就不具体再分析后优化;1. preOptimize分析1.1. preOptimize作用1.将可以进行计算和拼接的简单的一元、二元表达式进行计算和拼接返回成为一个ScalarExpression(但变量和变量之间的是不能在preOptimize中进行合并的,这样的需要进行类型推导后才可以进行优化) ...2013-10-06 23:36:02 · 246 阅读 · 0 评论