摘要: >>转载请注明来源:飘零的代码 piao2010 ’s blog,谢谢!^_^>>本文链接地址:为何cp覆盖进程的动态库(so)会导致coredump 接上一篇博客《 Linux共享库(so)动态加载和升级》留下的问题:为何cp覆盖进程(运行中的程序)的动态库(so)会导致coredump ?之前的分析只是定位到cp覆盖so文件的时候由于不会改变inode号所以引发了悲剧,但本质原因并没有找到。于是开始查找学习Linux下动态链接的实现,以及神器 gdb的常用操作。恰好在搜索相关信息的时候发现了一篇关键的文章,在作者思路的引导下发现可以利用gdb做... 阅读全文
posted @ 2013-03-19 15:53 ArcherDev 阅读(1603) 评论(0) 推荐(0)
摘要: >>转载请注明来源:飘零的代码 piao2010 ’s blog,谢谢!^_^>>本文链接地址:Linux共享库(so)动态加载和升级 学习Linux共享库动态加载缘于一个生产环境升级apache so文件常见错误操作:apache在运行中直接cp覆盖目标so文件,一段时间后错误日志里面出现关键词:Segmentation fault (段错误) ,一个个worker进程就这样渐渐退出,最后无法处理HTTP请求。首先了解一下共享库的创建,源文件test.c?View Code C#include<stdio.h>#include<unistd.h> 阅读全文
posted @ 2013-03-19 15:52 ArcherDev 阅读(4312) 评论(0) 推荐(0)
摘要: http://zensheno.blog.51cto.com/2712776/4907481. Git概念1.1. Git库中由三部分组成 Git 仓库就是那个.git 目录,其中存放的是我们所提交的文档索引内容,Git 可基于文档索引内容对其所管理的文档进行内容追踪,从而实现文档的版本控制。.git目录位于工作目录内。1) 工作目录:用户本地的目录;2) Index(索引):将工作目录下所有文件(包含子目录)生成快照,存放到一个临时的存储区域,Git 称该区域为索引。3) 仓库:将索引通过commit命令提交至仓库中,每一次提交都意味着版本在进行一次更新。1.2. 使用Git时的初始化事项1 阅读全文
posted @ 2013-03-19 15:27 ArcherDev 阅读(188) 评论(0) 推荐(0)