1
发布时间:2012-12-29 15:13:07
前几天领导安排一个小项目,大意是解决这样一个问题:在Linux系统下,进程可能由于各种原因崩溃,此时我们要找到出问题的源代码在某一个文件的具体行号,这样调试起来就会方便,高效很多,可能是公司项目要用到,想想挺有意思的,加上自己本身是个Linux狂热者,最终花了两三天解决了这个问题,当然我的领导我们称之为专家指点了我很多,废话少说,下面是解决问题的思路和步骤以及自己的一些想法解决该问题的大体思路是这样的:在Linux下,进程崩溃时内核(也就是我们所谓的操作系统)会向进程发送信号,比如我们程序运行崩溃时经常会看到segmentation falt这样的信息,这是进程非法操作内存,内核会向进程发送S......【阅读全文】
发布时间:2012-12-29 15:00:55
在Linux 开发中,有几个关系到性能的东西,技术人员非常关注:进程,CPU,MEM,网络IO,磁盘IO。本篇文件打算详细全面,深入浅出。剖析文件IO的细节。从多个角度探索如何提高IO性能。本文尽量用通俗易懂的视角去阐述。不copy内核代码。 阐述之前,要先有个大视角,让我们站在万米高空,鸟瞰我们的文件IO,它们设计是分层的,分层有2个好处,一是架构清晰,二是解耦。让我们看一下下面这张图。 图一 1. &......【阅读全文】
发布时间:2012-12-29 14:51:42
daemon进程是后台守护进程,有时候也叫精灵进程(agent).linux 下server都是daemon进程。相信大部分开发人员都知道如何去写一个daemon进程。但是另一方面,大部分人不知道为什么要这么做,不少人是从某个地方copy一个函数,拿来主义。但是具体为什么这么实现,却不是很透彻。 见过一些面试官或被面试人。很多人解释daemon进程存在的理由是因为僵死进程。或者输入输出。其实和这些东西一毛钱关系都没有。daemon函数存在的原因是因为控制终端由于某些原因(如断开终端链接)会发送一些信号的原因。而接收进城处理这些信号缺省动作会让进程退出。这些信号会由于终......【阅读全文】
发布时间:2012-12-29 14:43:25
做完一个专业linux开发人员,应该知道如何评估和预算自己服务,心中有个参考尺度。这个尺度就是一张表,用来评估换算。 下面这个表示我收集的一些数据,不是很全,但是很基础。现在分享出来。同时也希望有朋友能补充一些数据。这样更加全面。对各位码农和架构师更有帮助。 操作 性能 memset 1K 150W次/s memcpy 1K ......【阅读全文】