我正在尝试对我的嵌入式 Linux 机器进行分析。这是运行一个软件。我想使用 strace 对我的软件进行分析。
该应用程序是永远运行的主要软件。如何运行 strace 并将输出记录到文件中。
在我的 rcS 脚本中。我像这样运行应用程序 ./my_app
现在,使用 strace。
strace ./my_app -> 我想将这些输出记录在一个文件中,我应该能够在不终止应用程序的情况下访问该文件。请记住,此应用程序永远不会终止。
请帮忙!
我正在尝试对我的嵌入式 Linux 机器进行分析。这是运行一个软件。我想使用 strace 对我的软件进行分析。
该应用程序是永远运行的主要软件。如何运行 strace 并将输出记录到文件中。
在我的 rcS 脚本中。我像这样运行应用程序 ./my_app
现在,使用 strace。
strace ./my_app -> 我想将这些输出记录在一个文件中,我应该能够在不终止应用程序的情况下访问该文件。请记住,此应用程序永远不会终止。
请帮忙!
克里斯实际上是对的。Strace 采用 -p 选项,它使您能够仅通过指定进程 PID 来附加到正在运行的进程。
假设您的“my_app”进程以 PID 2301 运行(您可以通过登录您的设备和我们的“ps”来查看 PID)。尝试执行“strace -p 2301”,您将看到该 PID 的所有系统调用。您可以通过到处重定向来将其扔到文件中:'strace -p 2301 > /tmp/my_app-strace'。
希望这可以帮助。
代替目标文件名,使用 -p 选项来 strace 指定您希望附加到的已运行进程的进程 ID。