使用 Systemtap 探测工具,我通过探测 syscall.read 和 syscall.read.return 函数获得了获取文件读取的字节总数的方法。 syscall.read.return 有 returnval() ,它给出了读取的字节总量。我需要获取每个读写操作的字节虚拟地址。我怎样才能在Linux中使用Systemtap探测工具来实现这一点。
答案1
以下 SystemTap 脚本允许您以字符串形式获取读取的字节:
probe syscall.read.return
{
printf("writen_bytes_as_a_string=%s\n", user_string_n(@entry($buf),$return))
}