我想学习从系统开始到现在的fork()数量,以及每秒新的fork()数量是多少?可能吗?如果是我该怎么办?

最佳答案

如果具有跟踪系统调用的实用工具strace,则可以跟踪克隆,fork的系统调用名称,以获取fork()的数量,并通过-tstrace选项,还可以获取进入每个系统调用时的相对时间戳,这将帮助您每秒获得新的fork()数。

如果可以重建程序。有几种包装系统调用的方法。您可以使用LD_PRELOAD或使用ld --wrap=symbol包装fork(),并在wrap函数中计算fork()的调用。以下博客文章向您展示了如何做到这一点。
http://samanbarghi.com/blog/2014/09/05/how-to-wrap-a-system-call-libc-function-in-linux/

07-24 09:46
查看更多