什么是 SEGV_MAPERR ,为什么总是出现 SIGSEGV

最佳答案

SEGV 有两种常见类型,这是由无效内存访问导致的错误:

  • 访问了具有错误权限的页面。例如,它是只读的,但您的代码试图写入它。这将被报告为 SEGV_ACCERR
  • 访问的页面甚至根本没有映射到应用程序的地址空间。这通常是由于取消引用空指针或因小整数值损坏的指针而导致的。这被报告为 SEGV_MAPERR

  • SEGV_MAPERR 的排序(索引 Linux 源代码)文档在这里: http://lxr.free-electrons.com/ident?i=SEGV_MAPERR

    关于linux - 什么是 SEGV_MAPERR?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1000002/

    10-14 19:30
    查看更多