android – Segmentation Fault中’code’的含义是什么?

前端之家收集整理的这篇文章主要介绍了android – Segmentation Fault中’code’的含义是什么?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在 android中看到了这2个分段错误.
一个说SEGV_MAPERR,另一个说SEGV_ACCERR.

你能告诉我这两个有什么不同吗?

signal 11 (SIGSEGV),code 1 (SEGV_MAPERR),fault addr 41963214

signal 11 (SIGSEGV),code 2 (SEGV_ACCERR),fault addr 4006e000

谢谢.

解决方法

siginfo.h

SEGV_MAPERR表示您尝试访问未映射到任何内容的地址.

SEGV_ACCERR表示您尝试访问您无权访问的地址.

因此,在这两种情况下,您都访问了一个您不应该拥有的地址,这可能是您的实际代码唯一有害的地址.在前一种情况下,无论如何在该地址范围内都没有记忆.在后一种情况下,该地址范围内有内存,但您不拥有它.

如果您要访问随机地址,那么您获得的取决于操作系统在此时如何设置您的流程.

猜你在找的Android相关文章