基本上完整的用法是这样:
strace -o /tmp/output2.txt -T -tt -e trace=desc -s 12 -p 17129
(墙内:http://mikixiyou.iteye.com/blog/1489090)
使用到的参数如下:
1)strace -p pid 可以跟踪某个后台进程
2)strace -o filename 把跟踪结果输出到文件
3)strace -T 记录每个系统调用花费的时间,可以看看哪个系统调用时间长
4)strace -t (或者 -tt)记录每个系统调用发生是的时间(时分秒的格式)
5)strace -s 1024 显示系统调用参数时,对于字符串显示的长度, 默认是32,如果字符串参数很长,很多信息显示不出来。
6)strace -e trace=nanosleep 只记录相关的系统调用信息。
-e trace=network // 只记录和网络api相关的系统调用
-e trace=file // 只记录涉及到文件名的系统调用
-e trace=desc // 只记录涉及到文件句柄的系统调用
还有其他的包括process,ipc,signal等。
分享到:
相关推荐
3. **`strace`**:则适用于更广泛的 Unix 系统,尤其是在 Linux 系统中广泛使用。它不仅能够跟踪系统调用,还能跟踪信号处理等更复杂的情况。 #### 六、实际应用案例 1. **分析 `clint` 程序**: 假设我们有一个...
这篇内容将详细介绍如何在嵌入式Linux环境下移植并使用`strace`调试工具。 首先,我们要理解`strace`的工作原理。`strace`通过拦截和记录进程的系统调用来运行,它可以显示调用的系统函数、参数、返回值等信息,这...
Linux下的程序调试工具ltrace和strace终版 在 Linux 操作系统中,程序调试是非常重要的一步,对于程序的开发、测试和优化都起着至关重要的作用。在 Linux 中,有两种常用的程序调试工具:ltrace 和 strace。这两种...
免安装strace [root@vmtca-2003 strace-5.1]# ldd strace linux-vdso.so.1 (0x00007ffc14ffb000) librt.so.1 => /lib64/librt.so.1 (0x00007fe620539000) libc.so.6 => /lib64/libc.so.6 (0x00007fe620174000) ...
在复杂的情况下,有时可能需要同时使用ltrace和strace。例如,如果一个程序出现奇怪的行为,可能是由于错误的库函数调用或者是系统调用的问题。通过ltrace找出库函数问题,再通过strace检查系统调用是否正确,可以...
本文将深入探讨strace 5.15版本在arm和arm64架构下的应用,特别是在Android平台上的使用。 首先,strace 5.15版本针对arm和arm64两种不同的处理器架构提供了可执行文件。arm架构广泛应用于许多早期的移动设备和...
本文将基于"strace-4.5.15.tar(1)"这个软件包,深入探讨strace的工作原理、使用方法以及其在实际问题排查中的应用。 一、strace概述 strace的全称是“System Trace”,它的主要功能是对进程进行系统调用追踪。通过...
在Linux系统中,当遇到软件运行异常,如进程无法启动、性能下降或出现"Segment Fault"等错误时,开发者和系统管理员通常会借助于一些强大的调试工具来定位问题。truss、strace和ltrace是三个非常实用的系统级调试...
在Linux操作系统中,strace是一个非常实用的系统调用跟踪工具,它能够帮助开发者和系统管理员深入了解程序与操作系统内核之间的交互。本文将围绕strace-4.5.15版本,详细探讨其功能、原理及实际应用,旨在为读者提供...
在Linux系统中,strace是一个强大的工具,用于调试应用程序,尤其是当它们遇到与系统交互的问题时。strace通过跟踪进程的系统调用和接收到的信号,帮助开发者理解程序如何与操作系统交互。这个命令对于理解程序为何...
6. **部署与使用**:完成编译后,将生成的strace可执行文件复制到ARM设备的`/bin`目录下,意味着它可以作为系统命令直接使用,无需额外安装步骤。然后,像在其他平台上一样,可以使用strace跟踪任何进程的系统调用,...
在Linux系统中,调试是开发和维护软件的重要环节。熟练掌握基本的程序调试...Mtrace.doc、gdb.doc和strace.pdf文档应该包含了这些工具的详细使用方法和实例,建议仔细阅读并结合实际项目进行练习,以加深理解和应用。
`strace`是Linux系统中一个强大的调试和故障排除工具,用于追踪和显示进程执行时的系统调用和信号。它可以帮助开发者和系统管理员理解程序在操作系统级别是如何工作的,尤其是在遇到程序崩溃、性能问题或者奇怪的...
本文将详细探讨strace的源码及其在Aarch64-Linux-GNU架构下的编译过程,旨在帮助读者更好地理解和应用strace。 首先,我们要了解strace的工作原理。strace通过挂载到目标进程的信号处理程序,捕获并解析系统调用的...
在`strace_pstack-master`目录下,可能包含了一些示例脚本,这些脚本可能用于自动化`strace`和`pstack`的使用,或者演示了如何在特定场景下使用它们。通过研究这些脚本,你可以学习到如何结合实际问题来运用这两个...
strace是Linux环境下的一款程序调试工具,用来监察一个应用程序所使用的系统调用。 Strace是一个简单的跟踪系统调用执行的工具。在其最简单的形式中,它可以从开始到结束跟踪二进制的执行,并在进程的生命周期中输出...