c - 如何获取正在运行的 Linux 内核中存在的结构的实例数?

标签 c struct linux-kernel

假设 struct A 是 Linux 内核代码的一个结构体,在一个正在运行的 Linux 内核中可能有很多 struct A 的实例被创建和销毁,我如何才能知道现在存在的 struct A 的实例数量吗?

最佳答案

一般情况下你不能,除非你能看到结构仅以单一方式实例化(如果有构造函数/工厂函数)。

对于经常在堆栈上使用的结构,通常没有这样的函数(尽管它肯定是可能的,因为结构实例可以作为值返回)。

C 不提供任何自动执行此操作的方法,您必须自己构建它,这需要找到创建实例的所有位置。

关于c - 如何获取正在运行的 Linux 内核中存在的结构的实例数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38825124/

相关文章:

c - 害怕。寻找。告诉。 "warning: value computed is not used "

c - 链接列表 - 错误

c - 为什么 C 中允许获取函数参数的地址?

调用memset导致segmentation fault

c++ - C 库与 WinApi

C 结构和指针混淆

c++ - 在结构中使用结构数组时在标量初始值设定项周围加括号

c++ - 内核模块或用户空间应用程序

linux - 如何检查 tasklet_init 调用是否失败?

linux - 内核如何找到发送硬件中断的正确进程