【发布时间】:2016-12-30 04:21:58
【问题描述】:
我想知道 C 中是否有任何简单/整洁的方法来检测给定的内存范围 (A, A+len) 是否属于进程地址空间?
编辑: 我的用例更多用于逆向工程和在内存中定位一些字符串(或固定大小的结构)。因此,即使是 hacky 测试也适合我缩小搜索范围。
【问题讨论】:
-
XY 问题。不要调用未定义的行为。不能保证错误的内存访问会产生信号。
-
如果您认为您的程序正在访问它不应该访问的内存,请在valgrind 下运行它。这会告诉你哪里出错了。
-
让我们备份一下:为什么需要知道?一般来说,你一开始就不应该得到无效的指针。
-
我的用例是用于逆向工程并在内存中定位一些字符串(或固定大小的结构)。因此,即使是 hacky 测试也适合我缩小搜索范围
标签: c linux linux-kernel segmentation-fault posix