linux - Oprofile中的基本疑问

标签 linux profiling linux-kernel oprofile

我正在尝试使用 oprofile 分析我的软件(在 Linux 中)。我的软件由用户空间和内核模块组成。首先我怀疑 --separate=kernel 选项有什么作用?没有那个选项运行时会有什么不同?我确实尝试查看它,但找不到任何区别。你能举个例子吗?

我不能在没有 --seperate=kernel 选项的情况下分析内核模块吗?

谢谢, 巴拉

最佳答案

在 oprofile 中,当与选项 --seperate=kernel 一起使用时,它将每个应用程序的内核和内核模块分开。 --seperate='library' 根据应用程序分隔动态链接对象的示例。

内核、动态链接对象并不特定于我们要单独分析的应用程序。但与此同时,我们的应用程序在其中花费了大量时间。 因此 --seperate 允许从我们对分析感兴趣的应用程序的角度获取样本。它还可以根据各个线程提供样本。

可以通过向 opcontrol 提供 --vmlinux 选项来分析内核。
例如:- opcontrol --vmlinux=/boot/vmlinux-2.6.27.23-0.1-preempt
--seperate 是附加选项,允许我们以不同的分辨率查看样本。

关于linux - Oprofile中的基本疑问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3173813/

相关文章:

c++ - 如何获取 IP 地址(IPv4 为 NULL,但 IPv6 存在),内容详情

docker - docker 容器停止后 perf 无法解析符号

c - 在内核空间和用户空间工作

sockets - 两个内核模块,每个模块都使用 netlink 套接字。如何同时使用它们?

linux - 如何链接 64 位二进制文​​件生成 32 位二进制文​​件?

c++ - Linux 上的 iconv() 32 位与 64 位

android - Perf 无法在 Android 上正确显示调用图

java - 使用 jpexport 时出错(导出 jprofiler .jps 文件)

linux-kernel - sysfs 属性可以在 Linux 设备驱动程序中采用非数值吗?

linux - 定时任务 : which one is the right job definition?