内核中如何动态监控,动态链接库的调用呢
在Linux 内核中有很多启进程的函数, 可以动态截获进程启动事件, 我想获取进程动态加载的so,试过sys_uselib,根本不调用,请教! 用什么方式可以获得的? 我记得,内核的do_execv 里面,会调用 execv ld-linux.so.2 。然后由这个程序帮忙动态链接库。其实你的需求也可以通过 cat /proc/<pid>/maps 搞定呀? 回复 2# amarant
这种方法倒是可以实现,但是性能等方面不太理想。我是想动态监控到一条so动态链接库的调用,就处理一条,这种方法需要我轮询pid,并过滤出新调用的so,实现比较复杂。
我使用对sys_mmap 进行截获,可以获取到动态加载映射的so,但是映射的不止有so,这个没办法筛选出so,是个问题。
ltrace好像可以监控lib库的调用,不知道有没有参考意义。
http://blog.packagecloud.io/eng/2016/03/14/how-does-ltrace-work/ 回复 1# Jacob_linux
什么意思,看进程加载了哪些.so文件吗?有个lsof命令吧。 不指定so ,监控那些so被那些进程加载。
回复 5# _nosay
页:
[1]