Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
GDB&x27;查找';命令提前终止_Gdb_Gdbserver - Fatal编程技术网

GDB&x27;查找';命令提前终止

GDB&x27;查找';命令提前终止,gdb,gdbserver,Gdb,Gdbserver,我在GDB中的程序内存中寻找一系列特定的字节 从某个地址(0x104f90)上方开始的“查找”有效,但从该地址下方开始的“查找”无效: (gdb) find /w 0x104f90, 0x108fe4, 0x6863203b 0x108e08 0x108e58 0x108ee8 vs GDB(似乎)可以访问此地址周围的内存: (gdb) x/12x 0x104f80 0x104f80: 0x00000000 0x00000000 0x00000000 0x00000000 0x1

我在GDB中的程序内存中寻找一系列特定的字节

从某个地址(0x104f90)上方开始的“查找”有效,但从该地址下方开始的“查找”无效:

(gdb) find /w 0x104f90, 0x108fe4, 0x6863203b
 0x108e08
 0x108e58
 0x108ee8
vs

GDB(似乎)可以访问此地址周围的内存:

(gdb) x/12x 0x104f80
0x104f80:  0x00000000  0x00000000  0x00000000  0x00000000
0x104f90:  0x00000000  0x00000000  0x00000000  0x00000000
0x104fa0:  0x00000000  0x00000000  0x00000000  0x00000000
这两个地址都在堆上--
info-proc-mappings
表示堆从
0xe7000
-
0x109000


有人能告诉我这里遗漏了什么吗?谢谢大家!

问题是我使用的是gdbserver,gdbserver中有一个bug,如果“find”函数在16000字节内找不到它要查找的内容,它就会放弃。有关官方错误报告,请参阅


解决方案是更新到gdb 10(这将有一个修复程序),或者将“查找”查询限制在16000字节以下

您是否正在使用gdbserver进行调试?是!这可能是导致问题的原因吗?是的,您发现了gdbserver错误。我刚刚发布了修复。是的,这就是问题所在!非常感谢你!作为记录,问题似乎不是搜索本身>=16000个字符,而是“如果在16000个字符内找不到匹配项,它就会放弃”(这可能是您的修复程序所说的,我不太确定),但是的,我的解决方案似乎是更新或将搜索限制在16000字节块。非常感谢。我应该把答案写在这里,还是你愿意?
(gdb) x/12x 0x104f80
0x104f80:  0x00000000  0x00000000  0x00000000  0x00000000
0x104f90:  0x00000000  0x00000000  0x00000000  0x00000000
0x104fa0:  0x00000000  0x00000000  0x00000000  0x00000000