首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >分割故障与页面故障

分割故障与页面故障
EN

Stack Overflow用户
提问于 2011-08-05 01:43:11
回答 2查看 20K关注 0票数 35
  1. I想知道分割错误和页面错误之间有什么区别和关系?
  2. 是否只属于分段记忆模型?

页面错误只属于分页内存模型吗?

如果两者都是,由于大多数计算机系统(如x86和Linux )使用分页内存模型而不是分段内存模型,为什么GCC C编译器有时会报告分段错误?

谢谢和问候!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-08-05 01:53:58

这两件事其实是很不一样的。分段错误意味着程序试图访问无效或非法的内存地址:例如,0,或大于任何有效指针的值。页面错误是当指针试图访问当前未映射到物理内存的地址空间页时,因此MMU需要从磁盘上抓取它,然后才能使用它。前者是非法的条件,程序通常会被中止;后者是完全正常的,程序甚至不会知道它。

“分段”与早期x86处理器使用的旧的“分段内存模型”完全无关;它是一种早期的使用,仅指一部分或部分内存。

票数 40
EN

Stack Overflow用户

发布于 2011-08-05 01:51:19

分割错误发生在不允许访问内存(不存在或被禁止)时。最常见的情况是,当您取消引用空变量或从数组的末尾运行时。访问映射但未加载的内存时会发生页错误。它们不是错误,并向操作系统发出信号,表明它应该将适当的页面加载到内存中。

票数 11
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6950549

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档