我正在尝试在内核级别检测交互式进程。例如,如果用户单击某个应用程序窗口,我想检测从该用户交互产生的所有进程。我的问题还没有结束。在某些情况下,由用户交互启动的那些进程将与其他一些现有进程通信,例如后台服务,并在给出一些 GUI 反馈之前等待该服务响应。我希望能够跟踪整个工作流程,并说出类似流程 A 在时间 1 通过鼠标单击启动然后在时间 2 与流程 B 通信然后流程 B 在时间 3 回复到流程 A 并最终流程 A 在时间 4 完成的内容。对于由交互式操作触发的工作流,逐步详细了解幕后发生的事情。
有任何想法吗?到目前为止,我一直在尝试检测(放置跟踪)与进程间通信相关的系统调用,但没有运气。也许我没有在正确的地方追踪。
谢谢!