使用 JNA-Ptrace 获取有关 linux 中外部进程的信息?
Getting info about external processes in linux using JNA- Ptrace?
我在一个学生研究团队中,目前正在开展一个 Java 项目,我们希望能够在该项目中收集有关 CentOS 7 中特定外部程序的一些信息。我们可能需要的一些潜在数据示例收集将是来自 firefox 的 URL,或来自 Google 地球的坐标。到目前为止,研究如何实现它主要是让我使用 JNA 和 ptrace。
这是解决这个问题的好方法吗?如果是这样,我可以用什么来找到内存中有关程序的特定信息的位置?
JNA 和 ptrace 是相当底层的东西。对于 运行 个系统应用程序,您应该使用:
最后一个更有用。
但您似乎根本不需要 运行 任何应用程序。要从 Google Earth 获取信息,您只需使用特殊网络 API - Google Maps APIs Web Services. If you want to send HTTP request you should try Apache Http Client。这是一个非常强大的库,我很确定它能满足您的所有需求。
PS.客户端更方便Java Client for Google Maps Services
PS1. 我认为 java 是使用 OS 和本机应用程序的最差选择。我看到了 2 种使用方法:
- 在 C/C++ 上编写代理,它将为 java 经理收集此信息。好难
- 像这里一样使用黑客和技巧 is there a way to get the url from current tab in google-chrome or here Possible to catch URLs in linux?。它更容易,但你将限制这些黑客的数量。它不适用于所有应用程序和案例。
我在一个学生研究团队中,目前正在开展一个 Java 项目,我们希望能够在该项目中收集有关 CentOS 7 中特定外部程序的一些信息。我们可能需要的一些潜在数据示例收集将是来自 firefox 的 URL,或来自 Google 地球的坐标。到目前为止,研究如何实现它主要是让我使用 JNA 和 ptrace。
这是解决这个问题的好方法吗?如果是这样,我可以用什么来找到内存中有关程序的特定信息的位置?
JNA 和 ptrace 是相当底层的东西。对于 运行 个系统应用程序,您应该使用:
最后一个更有用。
但您似乎根本不需要 运行 任何应用程序。要从 Google Earth 获取信息,您只需使用特殊网络 API - Google Maps APIs Web Services. If you want to send HTTP request you should try Apache Http Client。这是一个非常强大的库,我很确定它能满足您的所有需求。
PS.客户端更方便Java Client for Google Maps Services
PS1. 我认为 java 是使用 OS 和本机应用程序的最差选择。我看到了 2 种使用方法:
- 在 C/C++ 上编写代理,它将为 java 经理收集此信息。好难
- 像这里一样使用黑客和技巧 is there a way to get the url from current tab in google-chrome or here Possible to catch URLs in linux?。它更容易,但你将限制这些黑客的数量。它不适用于所有应用程序和案例。