页缺失

✍ dations ◷ 2025-06-30 16:35:12 #计算机错误,虚拟内存

页缺失(英语: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系统则会使用信号机制。如果程序未处理相关问题,那么操作系统会执行默认处理方式,通常是转储内存、终止相关的程序,然后向用户报告。

相关

  • 慢性慢性病是一种持续或长期的健康状况或疾病。美国国家卫生统计中心的定义为持续超过三个月的病症,又或者是因病或先天造成的永久性伤害。常见慢性病包括恶性肿瘤、脑血管疾病、
  • Mgsub3/sub(PSsub2/subOsub2/sub)sub2/sub&二硫代磷酸镁是一种无机化合物,化学式为Mg3(PS2O2)2。该化合物可由五硫化二磷和氧化镁的悬浊液在0℃时反应得到:
  • 第二中间时期第八第十第二中间时期是古埃及历史上的一个分裂时期,位于中王国时期之后,新王国时期之前,时间长度大约有一百年左右。第二中间时期包括了第十五、十六、十七三个王朝;另有一种观
  • 战略轰炸机战略轰炸机(Strategic Bomber)是轰炸机的一种,从高空对地面进行远程投弹的大型军用飞机。与战术轰炸机被用于对某个交战区内的军队和军事设备轰炸不同,战略轰炸机的用途是执行远
  • 啰哩人啰哩人是多姆人的一个分支。目前主要生活在中亚的塔吉克斯坦、乌兹别克斯坦、吉尔吉斯斯坦。语言和吉普赛语接近。信伊斯兰教。其内部社会对外族封闭。中国史书对他的记载最
  • 艾伯特湖阿尔伯特湖(Lake Albert;Lac Albert)是位于非洲中部乌干达和刚果民主共和国边界的淡水湖,它是大湖地区的非洲大湖之一。它是非洲的第七大湖,和世界的第二十七大湖。阿尔伯特湖位
  • CV-4 游骑兵号突击者号(英文:USS Ranger,CV-4)为美国海军第一艘以航空母舰为目的而设计并制造的军舰 ,也是美国海军在航母开发黎明期的尝试作品。由于其较小的吨位与舰岛,狭窄的飞行甲板以及耐
  • 阿纳海姆 (加利福尼亚州)阿纳海姆(英文:Anaheim)是美国加利福尼亚州奥兰治县的第2大城市,位于洛杉矶东南方28英里处。根据2000年人口普查,阿纳海姆的人口为32万8014,是加州第10和全美国的第55大城。以主题
  • 周范莲周范莲(1700年-1764年),字效白,江苏省苏州府长洲县(今苏州市)人。清朝政治人物、诗人。雍正七年(1729年)己酉顺天举人,雍正八年(1730年)庚戌科第二甲第六名进士出身。选翰林院庶吉士,雍正
  • 阿乐阿乐(1995年4月27日-),本名林妤臻,台湾知名艺人及实况主,毕业于淡江大学国际企业学系,其直播内容主要以电玩为主,偶尔也会有钢琴及小提琴的演奏。2017年7月加入魔竞娱乐成为旗下艺人