如何解决是否可以在 Linux 中反汇编运行进程?
要反汇编我正在使用的程序 System.Linq
工具。是否有可能获得与 objdump -d
相同的输出,以便在没有条件的情况下运行进程拥有 objdump
文件?我如何使用其他程序的 exe
语言进行操作?我知道存在像 C
这样的调试器,但我需要在 GDB
中使用该功能。由于我的程序,我想获得带有反汇编功能的输出文件以运行进程。我有一个进程的PID。我正在使用 Ubuntu。
解决方法
是否有可能获得与 objdump 相同的输出,以便在没有 exe 文件的情况下运行进程?
是的,因为我有 PID 并且我需要的文件位于 /proc/<PID>/exe
要在 C 中调用它,我将尝试类似的方法:
char *comp = "objdump -d /proc/1234/exe";
fflush(NULL); // always useful before system(3)
int nok = system(comp);
if (nok) {
fprintf(stderr,"compilation %s failed with %d\n",comp,nok);
exit(EXIT_FAILURE);
}
感谢@dratenik!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。