linux命令的内部工作

时间:2014-04-29 05:13:51

标签: linux linux-kernel

如果我想知道任何linux命令的内部工作,那么我将从哪里获得有关它的信息?其实我想知道aplay命令的内部工作。通过执行aplay命令在Linux内核中发生了什么进程?

1 个答案:

答案 0 :(得分:2)

Linux中的命令是用户级别的。因此,当我们从用户级执行命令时,它将与内核层交互。这种交互是通过系统调用完成的。

要获取内部正在执行的系统调用,可以使用用户空间实用程序“strace”。 strace将给出系统跟踪。 以下命令可以使用:

$script

$strace <command> <argument>

$exit

脚本实用程序在当前工作目录中创建一个名为“typescript”的文件,其中包含strace的输出。

现在从strace中你将得到你的命令正在执行的所有系统调用。现在您需要内核源来实际跟踪内核中正在进行的内部处理。

您还可以使用systemtap和kgdb linux实用程序。