平时如果不太注意创建子进程的处理,有可能会导致僵尸进程,以至于有一天系统无法创建进程,超过系统允许的最大进程数。如果不捕捉SIGCHLD信号,子进程退出时,系统默认释放进程的内核结构。如果捕捉了,但父进程没有调用wait或waitpid等函数获取子进程的退出状态,那么在父进程还没有退出时,子进程就会成为僵尸进程。另外一种情况,由于linux信号不等待,可能丢失了信号,父进程也没有获取子进程的退出状态。
Popen函数执行程序
使用linux定时器可以定时的处理一些事务或者定时的发出一些信号,如SIGALRM,SIGINT,SIGQUIT等信号。
Linux定时器
使用linux定时器可以定时的处理一些事务或者定时的发出一些信号,如SIGALRM,SIGINT,SIGQUIT等信号。
Linux信号处理的应用
linux的system和sleep都涉及到信号的处理,以下是关于在实现system函数和sleep所涉及到的原理。
1.每个进程只有一个闹钟时钟,alarm;且alarm和setitimer共享一个定时器,因此它们会互相干扰。不过通过timer_create和timer_settime可以创建定时器和设置定时器,同时所发送的信号不限定于SIGALRM,可以是其它的SIGINT,SIGQUIT等信号。
Shell自动打包修改文件
每一次写完代码,都需要将代码发给项目负责人合入到svn上。但时间一长,自己就连修改了哪些源文件也不知道了。于是思来想去,还是写一个靠谱的脚本好一些,这样可以减轻脑力的负担,以后这样繁琐的工作就留给脚本去做了,不亦乐哉,所谓穷则思变。
Nginx服务器 性能至上
nginx是高性能的代理服务器,可支持web和mail两种代理,多进程多线程的模块化的服务端设计。
Iptables 瑞士军刀
netfilter/iptables可以配置有状态的防火墙。iptables设置filter过滤表,nat转发表,mangle修改数据包的表。
初入门规 Shell编程
shell脚本在工作中可以大大提高工作的效率。因此学习shell是非常有必要的。
龙马精神 马到功成
新概念三有篇课文《New Year resolution》,说作者立下志向,从新年起,每天进行锻炼和坚持阅读,可惜新年还没结束,虽然计划没有胎死腹中,但几日后就泡汤了。
长亭外 古道边 芳草碧连天
离别总是有时让人伤感的,但回来的感觉真好!因为把系统升级到Win8,之前配置写博客和程序也跟着没了。于是前段时间也没有在此写些琐碎的东西,记录生活的点点滴滴。