代码改变世界

前后端分离趋势谈

2017-02-06 00:16 by 轩脉刃, 5915 阅读, 2 推荐, 收藏, 编辑
摘要:最近已经不止一个人和我提起过vue了,在我的前端印象中,我还停留在smarty渲染模版,jquery做js处理。学了一晚上,对现在这种工程化webpack打包生成html,js,css的生产方式越来越有兴趣了。工作年限摆在这里的好处就是经历了不少技术的变革,能从纵向思考下技术的变革和趋势的路子。 想 阅读全文

php内核分析(八)-zend_compile

2016-12-05 10:39 by 轩脉刃, 2734 阅读, 0 推荐, 收藏, 编辑
摘要:这里阅读的php版本为PHP 7.1.0 RC3,阅读代码的平台为linux 回到之前看的zend_eval_stringl 这里的zend_execute执行了两步,第一步是把php编译解析成为opcode的过程,我们就先看这个。 zend_compile_string zend_compile_ 阅读全文

Golang汇编命令解读

2016-12-05 10:12 by 轩脉刃, 11013 阅读, 3 推荐, 收藏, 编辑
摘要:我们可以很容易将一个golang程序转变成汇编语言。 比如我写了一个main.go: 使用命令: 我们就获取了main.S是main.go的汇编版本。 首先这个程序根据TEXT是定义函数的,分为3个部分 这个"". 代表的是这个函数的命名空间。 g(SB) 这里就有个SB的伪寄存器。全名未Stati 阅读全文

php内核分析(七)-扩展

2016-12-01 10:16 by 轩脉刃, 1954 阅读, 0 推荐, 收藏, 编辑
摘要:这里阅读的php版本为PHP 7.1.0 RC3,阅读代码的平台为linux。 我们研究下反射这个扩展。 反射这个扩展目录是存在在:ext/reflection。其实里面的代码很简单。一个.h文件,一个 .c文件。 我们先看下.c文件中,会看到很多ZEND_METHOD 对应的宏: 这里的 代表的是 阅读全文

php内核分析(六)-opcode

2016-11-29 10:44 by 轩脉刃, 2740 阅读, 4 推荐, 收藏, 编辑
摘要:这里阅读的php版本为PHP 7.1.0 RC3,阅读代码的平台为linux 查看opcode php是先把源码解析成opcode,然后再把opcode传递给zend_vm进行执行的。 在php7中,我们能很方便用phpdbg来查看一个文件或者一个函数的opcode了。至于phpdbg的使用,现在网 阅读全文

php内核分析(五)-zval

2016-11-28 10:24 by 轩脉刃, 4569 阅读, 5 推荐, 收藏, 编辑
摘要:这里阅读的php版本为PHP 7.1.0 RC3,阅读代码的平台为linux 实际上,从这个函数开始,就已经进入到了zend引擎的范围了。 实际上是调用Zend/zend_execute_API.c 再进去是调用 这里的retval_ptr为NULL,string_name为"Command lin 阅读全文

php内核分析(四)-do_cli

2016-11-25 11:47 by 轩脉刃, 1456 阅读, 0 推荐, 收藏, 编辑
摘要:这里阅读的php版本为PHP 7.1.0 RC3,阅读代码的平台为linux # main 把剩下的代码增加了下注释全部贴出来了(这个是简化后的main函数,去掉了一些无关紧要的代码段): 其实看伪码很简单: 好了,其实看了一圈,里面最重的函数是do_cli了。 php参数 do_cli里面你会看到 阅读全文

php内核分析(三)-全局变量

2016-11-24 15:17 by 轩脉刃, 1255 阅读, 0 推荐, 收藏, 编辑
摘要:这里阅读的php版本为PHP 7.1.0 RC3,阅读代码的平台为linux CG CG是从全局的compiler_global中获取属性值,里面存储的就是编译过程使用到的全局变量。 SG EG EG是从executor_globals中获取变量 阅读全文

php内核分析(二)-ZTS和zend_try

2016-11-23 10:29 by 轩脉刃, 2203 阅读, 0 推荐, 收藏, 编辑
摘要:这里阅读的php版本为PHP 7.1.0 RC3,阅读代码的平台为linux ZTS 我们会看到文章中有很多地方是: 这里的ZTS是个什么概念呢。我们经常使用的php都是运行在单进程,单线程环境,比如cgi,都是一个请求进来,就一个进程为它服务,当请求结束了,进程也就结束了。所以比如像全局变量,ph 阅读全文

php内核分析(一)-sapi_module_struct

2016-11-21 11:56 by 轩脉刃, 2283 阅读, 0 推荐, 收藏, 编辑
摘要:这里阅读的php版本为PHP 7.1.0 RC3,阅读代码的平台为linux 首先是寻找php的入口,php有很多种模式,apache,php fpm, cli模式,我要入手的话,只能先从最简单的cli模型开始。 那么,我需要先寻找 这个命令是如何执行的。 首先还是寻找main入口,由于我们看的是命 阅读全文
上一页 1 ··· 9 10 11 12 13 14 15 16 17 ··· 49 下一页