|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
使用gcc或g++进行编译,使用gdb进行调试;
Linux体系下真正有伤害的是内存泄露的聚积,这会终极损耗尽体系任何的内存。上面是排查息争决计划与人人一同分享。
1、Linux内存监控内存泄露的界说:
一样平常我们常说的内存泄露是指堆内存的泄露。堆内存是指程式从堆平分配的,巨细恣意的(内存块的巨细可以在程式运转期决意),利用完后必需显现开释的内存。使用程式一样平常利用malloc,realloc,new等函数从堆平分配到一块内存,利用完后,程式必需卖力响应的挪用free或delete开释该内存块,不然,这块内存就不克不及被再次利用,我们就说这块内存泄露了。
2、Linux内存监控内存保守的伤害
从用户利用程式的角度来看,内存泄露自己不会发生甚么伤害,作为一样平常的用户,基本感到不到内存泄露的存在。真正有伤害的是内存泄露的聚积,这会终极损耗尽体系任何的内存。从这个角度来讲,一次性内存泄露并没有甚么伤害,由于他不会聚积,而隐式内存泄露伤害性则很年夜,由于较之于常发性和偶发性内存泄露他更难被检测到。存在内存泄露成绩的程式除会占用更多的内存外,还会使程式的功能急剧下落。关于服务器而言,假设呈现这类情形,即便体系不溃散,也会严峻影响利用。
3、Linux内存监控内存保守的检测和接纳
关于内存溢出之类的贫苦大概人人在编写指针对照多的庞大的程式的时分就会碰着。在Linux或unix下,C、C++言语是最让用工具。可是我们的C++程式缺少响应的手腕来检测内存信息,而只能利用top指令察看历程的静态内存总额。并且程式加入时,我们没法获知任何内存泄露信息。
利用kill命令
利用Linux命令接纳内存,我们可以利用Ps、Kill两个命令检测内存利用情形和举行接纳。在利用最终用户权限时利用命令“Ps”,他会列出任何正在运转的程式称号,和对应的历程号(PID)。Kill命令的事情道理是:向Linux操纵体系的内核送出一个体系操纵旌旗灯号和程式的历程号(PID)。
使用例子:
为了高效力接纳内存可以利用命令ps参数v:
[root@www~]#psv
PIDTTYSTATTIMEMAJFLTRSDRSRSS%MEMCOMMAND
2542tty1Ss+0:000816274280.1/sbin/mingettytty1
2543tty2Ss+0:000816314280.1/sbin/mingettytty2
2547tty3Ss+0:000816314320.1/sbin/mingettytty3
2548tty4Ss+0:000816274280.1/sbin/mingettytty4
2574tty5Ss+0:000816314320.1/sbin/mingettytty5
2587tty6Ss+0:000816274240.1/sbin/mingettytty6
2657tty7Ss+1:181217102998170403.0/usr/bin/Xorg:0-br-a
2670pts/2Ss0:012682621314960.6-bash
3008pts/4Ss0:002682622114720.6/bin/bash
3029pts/4S+0:0023217835480.2ping192.168.1.12
3030pts/2R+0:0027351347680.3psv
然后假设想接纳Ping命令的内存的话,利用命令:
#Kill-93029
</p>
给你装的系统里为ubuntu12.04,它已经封装的很臃肿了,但是考虑到你没有很多时间投入其中,所以给你装了它,但是怎么用它提高开发效率,需要你在学习的过程中不断总结; |
|