gpt4 book ai didi

linux - 用于大读取的 PTRACE_PEEKDATA 的替代方案

转载 作者:太空宇宙 更新时间:2023-11-04 03:51:10 27 4
gpt4 key购买 nike

我试图从一个较差的进程中读取一个大的结构(3MB)来调试它,我想知道是否有比迭代 ptrace() 更有效的替代方案?

我尝试过 process_vm_readv() 但它在仿生 libc 中不可用。

ptrace() 线程安全吗?因为这可能是一个选择。

最佳答案

如果 /proc 可用,则可以在文件 /proc/PID/mem 上使用 pread64 或(lseek()read()) 来读取数据。这是 gdb 从调试进程获取信息的一种方式。然而,gdb 在从中获取信息之前会停止进程。这就是为什么它在 gdb

下是线程安全的

关于linux - 用于大读取的 PTRACE_PEEKDATA 的替代方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26340333/

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