gpt4 book ai didi

linux - 我应该监视哪些进程间锁定调用?

转载 作者:IT王子 更新时间:2023-10-29 00:33:54 25 4
gpt4 key购买 nike

我正在使用 strace/ltrace 监控进程,希望找到并拦截检查并可能激活一些的调用一种全局共享锁。

虽然我之前处理过并阅读过 Linux 上的几种进程间锁定形式,但我对要调用的内容一无所知。

目前我唯一怀疑的是 futex(),它在进程执行的早期就出现了。

更新0

我对我所追求的东西有些困惑。我正在监控一个现有进程以调用持久进程间内存或等效内存。我想知道要查找的系统和库调用。我无意自己调用这些,所以 futex() 自然会出现,我相信很多库会根据这个等实现他们的锁定调用。

更新1

我想要一个函数名称列表或文档链接,我应该在 ltracestrace 级别(并指定哪个级别)进行监控。任何其他关于如何跟踪和定位全局锁定的好建议都会很棒。

最佳答案

如果你可以在valgrind中启动监控进程,那么有两个项目:

http://code.google.com/p/data-race-test/wiki/ThreadSanitizer

和海尔格林德

http://valgrind.org/docs/manual/hg-manual.html

Helgrind is aware of all the pthread abstractions and tracks their effects as accurately as it can. On x86 and amd64 platforms, it understands and partially handles implicit locking arising from the use of the LOCK instruction prefix.

因此,此工具甚至可以检测原子内存访问。他们会检查 pthread 的使用情况

关于linux - 我应该监视哪些进程间锁定调用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2219248/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com