【PHP7底层设计与源码分析】部分勘误

LNMPR源码研究 · · 20 次点击 · · 开始浏览    

1、序

clipboard.png

zal 改为 zval
2、33页
从图3-1中我们看出,虽然char a只占了1字节,int b只占了4字节,但是long c并不是紧跟着b,而是根据8字节对齐后,c和b之间空了3字节
改为
从图3-1中我们看出,虽然char a只占了1字节,int b只占了4字节,但是b并不是紧跟着a,而是根据8字节对齐后,a和b之间空了3字节

3、图4-6 动态字符串赋值后$a 与 $b 关系图
更正为:

clipboard.png

4、图4-7 常量字符串赋值后$a 与 $b 关系图
更正为:

clipboard.png

5、图4-9 引用类型$a 与 $b 关系图
更正为:

clipboard.png

6、图4-10 copy on write过程示意图
更正为:

clipboard.png

7、图4-11 整形转成字符串
更正为:

clipboard.png

8、图4-13 opcode组装中字符串处理示意图
更正为:

clipboard.png

9、图9-4替换为下图:

clipboard.png

10、58页 图3-17下面的代码修改为: 
代码更正为
for($i = 0; $i <= 10002; $i++){
$a[$i] = array($i."_string");
$a[$i][] = &$a[$i];
unset($a[$i]);
}

11、图3-4 PHP5中_zval_struct的大小
更正为:


clipboard.png

12、图3-5 PHP5中_zval_struct实际大小
更正为:


clipboard.png

13、图3-6 PHP5中变量实际占用的内存大小
更正为:


clipboard.png

14、图3-16 gc_globals的结构
更正为:


clipboard.png

本文来自:Segmentfault

感谢作者:LNMPR源码研究

查看原文:【PHP7底层设计与源码分析】部分勘误

20 次点击  
加入收藏 微博
0 回复
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet