用systemtap来做系统性能分析和事件分析

用systemtap来做系统性能分析 做性能分析的前提首先是需要了解一个事件所调用的内核函数、系统调用等,并根据这些函数调用所消耗的时间去初步判断系统或业务的瓶颈,比如说简单的一个创建/删除文件,我们来分析下它所调用的内核函数 #!/bin/bash echo $$ slee »

system embedded C

systemtap支持嵌入C,这样我们就可以实现systemtap自带tapset没有提供的功能 再用上面的例子来举例,我们之前实现了可以根据inode找到d_name来打印文件名,但没有路径,可读性不高,用embedded C来实现打印一个文件的绝对路径 查看内核代码中实现打 »

systemtap常用内置函数

常用内置函数 printf() 与C语言中的printf一样,不同点在于:systemtap的printf只有长整型和字符串两种类型输出,因此小数需要如下面这样处理: printf("%16s %5d %3d.%02d%% %3d.%02d%%\n", e, tid, uscal »

systemtap probe

常用的探测器(probe) 同步事件 syscall.system_call 进入系统调用system_call时触发 如果需要在退出系统调用时触发,在后面增加.return;如syscall.close和syscall.close.return sysca »

systemtap学习笔记

安装 centos 依赖条件 kernel-devel kernel-debuginfo 安装 yum install kernel-devel wget -c http://debuginfo.centos.org/6/x86_64/kernel-debuginfo »