gpt4 book ai didi

安卓 gdb gcore "command not implemented for this target"

转载 作者:搜寻专家 更新时间:2023-11-01 07:58:32 27 4
gpt4 key购买 nike

我正在使用 gdb 为 android 进程转储核心文件。我在 tcp 端口上的设备上运行 gdbserver,在桌面上运行 gdb 客户端。当我在客户端执行 gcore 时,出现以下错误。有谁知道我为什么会收到此错误,非常感谢任何帮助。

(gdb) gcore Command not implemented for this target.

我这样做是为了转储进程内存并使用核心文件从内存中提取 Classes.dex 文件。我已经尝试使用/proc/pid/mem 和 proc/pid/maps 和转储内存来执行此操作,但是映射区域太多,我找不到 Classes.dex 文件所在的区域。也欢迎任何其他替代方法。感谢您的帮助。

最佳答案

首先只能从内存中dump odex(因为dex编译成odex执行)。不过用baksmali-smali把odex转dex没什么大不了的。

要在内存中查找 odex,您可以使用 gdb 检查映射内存的每个开始地址的魔数(Magic Number)(proc/pid/maps - 第一列):

gdb --batch --pid "pid_task" -ex x/s "mem_start"

因此,当返回值等于“dey\n036”时,您可以通过 gdb 转储该内存区域。尝试从文件“proc/pid/maps”的末尾开始检查内存地址,这样会快得多。

PS 抱歉我的英语不好,但希望它能有所帮助。

关于安卓 gdb gcore "command not implemented for this target",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24681924/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com