页缺失

✍ dations ◷ 2025-04-04 23:30:07 #计算机错误,虚拟内存

页缺失(英语:Page fault,又名硬错误、硬中断、分页错误、寻页缺失、缺页中断、页故障等)指的是当软件试图访问已映射在虚拟地址空间中,但是目前并未被加载在物理内存中的一个分页时,由中央处理器的内存管理单元所发出的中断。

通常情况下,用于处理此中断的程序是操作系统的一部分。如果操作系统判断此次访问是有效的,那么操作系统会尝试将相关的分页从硬盘上的虚拟内存文件中调入内存。而如果访问是不被允许的,那么操作系统通常会结束相关的进程。

虽然其名为“页缺失”错误,但实际上这并不一定是一种错误。而且这一机制对于利用虚拟内存来增加程序可用内存空间的操作系统(比如Microsoft Windows和各种类Unix系统)中都是常见且有必要的。

微软在较新版Windows的资源监视器中使用“硬错误”(Windows Vista及以上)、“硬中断”(Windows 8及以上)这一术语来指代“页缺失”。

软性页缺失指页缺失发生时,相关的页已经被加载进内存,但是没有向MMU注册的情况。操作系统只需要在MMU中注册相关页对应的物理地址即可。

发生这种情况的可能性之一,是一块物理内存被两个或多个程序共享,操作系统已经为其中的一个装载并注册了相应的页,但是没有为另一个程序注册。

可能性之二,是该页已被从CPU的工作集中移除,但是尚未被交换到磁盘上。比如OpenVMS这样的使用次级页缓存的系统,就有可能会在工作集过大的情况下,将某页从工作集中去除,但是不写入硬盘也不擦除(比如说这一页被读出硬盘后没被修改过),只是放入空闲页表。除非有其他程序需要,导致这一页被分配出去了,不然这一页的内容不会被修改。当原程序再次需要该页内的数据时,如果这一页确实没有被分配出去,那么系统只需要重新为该页在MMU内注册映射即可。

与软性页缺失相反,硬性页缺失是指相关的页在页缺失发生时未被加载进内存的情况。这时操作系统需要:

硬性页缺失导致的性能损失是很大的。以一块7200rpm的主流机械硬盘为例,其平均寻道时间为8.5毫秒,读入内存需要0.05毫秒。相对的,DDR3内存的访问延迟通常在数十到100纳秒之间,性能差距可能会达到8万到22万倍。

另外,有些操作系统会将程序的一部分延迟到需要使用的时候再加载入内存执行,以此来提升性能。这一特性也是通过捕获硬性页缺失达到的。

当硬性页缺失过于频繁的发生时,称发生系统颠簸。

当程序访问的虚拟地址是不存在于虚拟地址空间内的时候,则发生无效页缺失。一般来说这是个软件问题,但是也不排除硬件可能,比如因为内存故障而损坏了一个正确的指针。

具体动作与所使用的操作系统有关,比如Windows会使用异常机制向程序报告,而类Unix系统则会使用信号机制。如果程序未处理相关问题,那么操作系统会执行默认处理方式,通常是转储内存、终止相关的程序,然后向用户报告。

相关

  • 视光学眼科视光学(英文:Optometry),是光学和眼科的结合,运用光学仪器来检查眼睛的视觉功能,并采取相应的非手术或手术的手段来治疗病人的近视、远视、散光、老视和双眼视觉功能性异常等
  • 医用大麻医用大麻(法语:Cannabis médical; 英语:medical cannabis或medical marijuana)是可用于医疗处方的大麻或大麻素。相比娱乐用大麻的高强度THC,医用大麻拥有相对较高的大麻二酚(CBD)
  • 活性度化学中,活性(Activity)即某物质的“有效浓度”,或称为物质的“有效莫尔分率”。此概念由吉尔伯特·牛顿·路易斯首先提出。将理想混合物中组分i的化学势表示式中的莫尔分率(xi)替
  • 交互设计交互设计,又称互动设计,(英文Interaction Design, 缩写 IxD 或者 IaD),是定义、设计人造系统的行为的设计领域,侧重在交互模式的设计。人造物,即人工制成物品,例如,软件、移动设备
  • 尼泊尔行政区划尼泊尔全国在2015年采纳新宪法以后划为7个省。在采纳新宪法以前,尼泊尔划分为5个发展区,下辖14个专区(尼泊尔语:अञ्चल,IAST:añcal;英语:zone),专区又分为75个县(尼泊尔语:जिल्
  • 阿尔库俄涅在希腊神话中,阿尔库俄涅(Alcyone,Ἁλκυόνη, )是风神埃俄罗斯(Aeolus)与厄那瑞忒(Enarete)或埃癸阿勒亚(Aegiale)所生的女儿。嫁给了启明星厄俄斯弗洛斯(Eosphorus)之子
  • 德沃哈迪德沃哈迪(Dewhadi),是印度马哈拉施特拉邦Bhandara县的一个城镇。总人口5759(2001年)。该地2001年总人口5759人,其中男性2874人,女性2885人;0—6岁人口617人,其中男314人,女303人;识字率
  • 蔡仲德蔡仲德(1937年2月26日-2004年2月13日)是中国音乐史学者、哲学学者,中央音乐学院教授。蔡仲德1937年生于浙江省绍兴市。1960年在华东师范大学毕业,同年到中央音乐学院附中担任语文
  • 蛋白印相蛋白印相是一种印刷照片底片的技术,它是1847年1月由路易·德塞尔·巴兰夸特-伊沃拉德首次发表的,它是第一个商业使用把底片翻印成照片的技术。它使用蛋白把摄影化合物固定在纸
  • 加利福尼亚甜灰蝶加利福尼亚甜灰蝶(),又名加里福尼亚戈灰蝶,是一种已灭绝的灰蝶。它们栖息在旧金山的海岸地区。它们相信是美国第一种因城市开发而灭绝的蝴蝶。最后的加利福尼亚甜灰蝶是于1941年