代码改变世界

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

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

php内核分析(一)-sapi_module_struct

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

go-hbase的Scan模型源码分析

2016-11-18 10:35 by 轩脉刃, 2462 阅读, 0 推荐, 收藏, 编辑
摘要:git地址在这里: https://github.com/Lazyshot/go hbase 这是一个使用go操作hbase的行为。 分析scan行为 如何使用scan看下面这个例子,伪代码如下: 首先是NewClient, 返回的结构是hbase.Client, 这个结构代表的是与hbase服务端 阅读全文

linux源码分析(五)-start_kernel

2016-10-28 16:45 by 轩脉刃, 3108 阅读, 2 推荐, 收藏, 编辑
摘要:前置:这里使用的linux版本是4.8,x86体系。 local_irq_disable(); 这个函数是做了关闭中断操作。和后面的local_irq_enable相对应。说明启动的下面函数是不允许被中断抢占的。这个函数追下去会发现下面的代码: 这个写法是linux的内联汇编写法。在C语言中写汇编语 阅读全文

linux源码分析(四)-start_kernel-cgroup

2016-10-27 10:51 by 轩脉刃, 7424 阅读, 3 推荐, 收藏, 编辑
摘要:前置:这里使用的linux版本是4.8,x86体系。 聊这个函数就需要先了解cgroup。 cgroup概念 这个函数就是初始化cgroup所需要的参数的。cgroup最初是在2006年由google的一名工程师提出的,目的是把一些共同目标的进程放在一个组里面,而这个组里面的进程能共享指定数额的资源 阅读全文

linux源码分析(三)-start_kernel

2016-10-26 11:01 by 轩脉刃, 10684 阅读, 0 推荐, 收藏, 编辑
摘要:前置:这里使用的linux版本是4.8,x86体系。 start_kernel是过了引导阶段,进入到了内核启动阶段的入口。函数在init/main.c中。 set_task_stack_end_magic(&init_task); 这个函数是设置操作系统的第一个进程init。 这个init_task 阅读全文

linux源码分析(二)-启动过程

2016-10-25 13:01 by 轩脉刃, 6052 阅读, 1 推荐, 收藏, 编辑
摘要:前置:这里使用的linux版本是4.8,x86体系。 这篇是 http://home.ustc.edu.cn/~boj/courses/linux_kernel/1_boot.html 的学习笔记。 linux的启动过程有点像是小鱼吃大鱼,最后吃成一个胖子。 计算机中的PC寄存器是用来指示下个执行程 阅读全文

linux源码分析(一)

2016-10-24 10:29 by 轩脉刃, 22161 阅读, 5 推荐, 收藏, 编辑
摘要:前置:这里使用的linux版本是4.8,x86体系。 其实linux的内核启动的入口文件还是非常好找的,init/main.c。 static 和 extern 首先理解的是static和extern的区别: 这个代码说的是kernel_init函数的定义在这个文件中,extern说明init_IR 阅读全文

phpcurl 请求Chunked-Encoded data 遇到的一个问题

2016-10-21 16:51 by 轩脉刃, 3243 阅读, 1 推荐, 收藏, 编辑
摘要:最早出现的问题情况是提供es的部门在es的外部封装了一个gateway做请求中转。 当我们转换到gateway上之后,发现了问题: 有的请求可以获取到数据,有的请求获取不到数据。 仔细分析了业务代码,抽取了一个出问题的业务请求,这个业务请求里面包含了多次对es的请求,只有最后一个es请求抛出异常,其 阅读全文
上一页 1 ··· 10 11 12 13 14 15 16 17 18 ··· 49 下一页