LINUX终端中结束/停止进程

LINUX终端中运行程序,常用快捷键ctrl+c(SIGINT)结束程序运行,Ctrl+\(SIGQUIT)强杀进程。 停止进程并放入后台容易被忽略,快捷键是CTRL+Z,jobs命令显示当前暂停的进程。 bg %N 命令使第N个任务在后台运行(%前有空格),fg %N 使第N个任务在前台运行,不带%N时bg,fg默认表示对最后一个进程操作。

Continue reading »

Linux调试工具:strace监控Linux进程系统调用

strace是一个基础的调试工具,类似windows系统的Procmon,用来监控进程的系统调用或信号产生的情况,通过跟踪系统调用定位Linux程序出现的问题,监控Linux进程在后台做了什么,大多数Linux系统中已经默认安装 。

Strace记录中每一行都是一条系统调用,开始是系统调用的函数名,括号内是参数,等号后面是该调用的返回值。

Continue reading »

LINUX查看指定进程的Context Switch上下文切换:pidstat

Context Switch(CS)上下文切换是cpu性能中的一个重要指标,context switch过高会导致CPU像个搬运工,频繁在寄存器和运行队列之间奔波  ,更多的时间花在了线程切换,而不是真正工作的线程上。 linux中一般使用vmstat监控系统上下文切换,pidstat监控指定进程的上下文切换。 pidstat监控指定进程的Context Switch上下文切换: 首先安装syss

Continue reading »

Linux查看端口和连接数

Linux系统查看进程端口占用、建立的连接状态/详情和连接数,一般使用netstat –apn|grep xxx ss –apn|grep xxx      //centos、fedora等不在默认带netstat的系统可以使用ss替代 如果netstat命令用着不顺手,可以尝试一下类似windows端的TCPview的GUI工具:Netactview 。 Netactview下载地址:http:

Continue reading »

Valgrind之Memcheck几种内存错误输出

Valgrind 是在 Linux 系统下程序调试工具的集合,Valgrind包括如下一些工具: Memcheck 内存检查器,能够发现程序中绝大多数内存错误,比如:使用未初始化的内存,使用已经释放了的内存,内存访问越界等。 Callgrind 检查程序中函数调用过程中的问题:callgrind_annotate callgrind.out.3649 Cachegrind 检查程序中缓存使用的问题

Continue reading »

Linux单进程流量监控软件:NetHogs

NetHogs一个Linux下的流量监控软件,可以监控每个联网进程的流量使用情况,可以分别监控各网卡。 NetHogs可以显示每个进程的带宽占用情况,它支持 IPv4 和 IPv6 协议、支持本地网卡及 PPP 链接。 sudo nethogs //需要root权限,默认监控eth0网卡 sudo nethogs ppp3 //监控其它网卡,ppp3是3G网卡 nethogs eth0 eth1

Continue reading »