简介strace常用来跟踪进程执行时的系统调用和所接收的信号。 在Linux世界,进程不能直接访问硬件设备,当进程需要访问硬件设备(比如读取磁盘文件,接收网络数据等等)时,必须由用户态模式切换至内核态模式,通 过系统调用访问硬件设备。strace可以跟踪到一个进程产生的系统调用,包括参数,返回值,执...
分类:
系统相关 时间:
2015-07-27 01:48:04
阅读次数:
182
最近需要对一个自己开发的socket server的性能进行分析,刚开始还想了好长时间怎么来分析。后来才意识到其实使用strace就足够了。观察到的现象是server单进程CPU使用率97,但磁盘i/o只有400MB/s,但这块磁盘可以达到>1GB/s的速度,于是在server开始跑之后直接用str...
分类:
其他好文 时间:
2015-07-24 23:58:48
阅读次数:
376
1.1 top 1.1.1 命令说明 Top 命令能够实时监控系统的运行状态,并且可以按照cpu、内存和执行时间进行排序 1.1.2 参数说明 命令行启动参数: 用法: top -hv | -bcisSHM -d delay -n iterations [-u user | -U use...
分类:
Web程序 时间:
2015-07-23 12:18:39
阅读次数:
274
一、简介 对头文件与库文件的搜索路径不太清楚,编译、运行时老碰到问题,ldd查看程序的链接时,总是出现unkown链接. 二、头文件 gcc 在编译时寻找所需要的头文件 : 1)搜寻会从-I开始 2)然后找gcc的环境变量 C_INCLUDE_PATH,CPLUS_INCLUDE_PATH,OBJC...
分类:
其他好文 时间:
2015-07-20 22:51:57
阅读次数:
139
简介strace常用来跟踪进程执行时的系统调用和所接收的信号。 在Linux世界,进程不能直接访问硬件设备,当进程需要访问硬件设备(比如读取磁盘文件,接收网络数据等等)时,必须由用户态模式切换至内核态模式,通 过系统调用访问硬件设备。strace可以跟踪到一个进程产生的系统调用,包括参数,返回值,执...
分类:
系统相关 时间:
2015-07-19 16:15:00
阅读次数:
134
ldd - print shared library dependenciesSYNOPSIS ldd [OPTION]... FILE...DESCRIPTION ldd prints the shared libraries required by each progra...
分类:
其他好文 时间:
2015-07-12 18:49:50
阅读次数:
128
1. 编译阶段gcc: -Wall -Werror -O2makenm: nm -C a.oc++filtstripobjdumpreadelf2. 链接ldd: ldd ./a.out3. 查错valgrind: valgrind --tool=memcheck --leak-check=full...
分类:
系统相关 时间:
2015-07-10 22:00:23
阅读次数:
180
今天验收一个项目的时候发现这程序挂在大厅不看视频都能煎鸡蛋,用电比充点还快,所以就决定查下这软件到底是干了点什么1.首先先看下到底用了多少cpu果然很离谱,我什么都不干,就已经这么高,一般的游戏都没这么高2.这个时候介绍下如何看什么函数占用了大量cpu主要用的是strace使用方法:①.推送stra...
分类:
其他好文 时间:
2015-07-09 11:14:56
阅读次数:
89
前言:本帖仅适用于RedHat、CentOS的64位系统很多时候我们需要用linux运行或测试程序,然而我们发现64位linux系统在检测32位程序的动态链接库文件时(也就是ldd一个so文件)会报错: 不是动态可执行文件【或英文提示:not adynamic executable file】...
分类:
系统相关 时间:
2015-07-07 14:26:01
阅读次数:
144
在/etc/hosts文件中添加一个记录,发现ping主机名后解析不生效,即ping出来的结果和hosts中写的IP是不一样的。通过strace查看ping命令执行过程:strace-f-F-o/tmp/ping.txtpingbi.v.addev.com可以看到ping的整个过程是先连本地的nscd缓存,清理nscd缓存(nscd-ihosts)后发现ho..
分类:
其他好文 时间:
2015-07-02 01:14:35
阅读次数:
144