页缺失

✍ dations ◷ 2024-12-23 19:37:21 #计算机错误,虚拟内存

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

相关

  • 陆生植物陆生植物一般指生活在陆地上且茎叶完全伸展在空气中的植物,能适应干旱的环境。与水生植物相比,陆生植物拥有庞大的根系,从土壤中吸收水分。植物学与进化生物学中,陆生植物一般特
  • 新汉音陶文 ‧ 甲骨文 ‧ 金文 ‧ 古文 ‧ 石鼓文籀文 ‧ 鸟虫书 ‧ 篆书(大篆 ‧  小篆)隶书 ‧ 楷书 ‧ 行书 ‧ 草书漆书 ‧  书法 ‧ 飞白书笔画 ‧ 
  • 夺格离格(英语:ablative case,缩写: .mw-parser-output .smallcaps-all{font-variant:small-caps;text-transform:lowercase}.mw-parser-output .smallcaps-all *{font-variant:norm
  • 甘蓝甘蓝(学名:Brassica oleracea)是十字花科植物,其多个变种,食用不同部位,如花用甘蓝花椰菜(花菜)(港译: 椰菜花),绿花椰菜(绿花菜)(港译: 西兰花)。叶用结球甘蓝(卷心菜、洋白菜、圆白菜),
  • 布鲁海文国家实验室布鲁克黑文国家实验室(Brookhaven National Laboratory,简称BNL)是美国的一所国家实验室,位于纽约州长岛苏福克县布鲁克黑文镇的阿普顿,1947年在前美国基地阿普顿营原址建造。该
  • Linognathidae见内文鄂虱科(学名:Linognathidae),又名毛虱科,旧属虱毛目(Phthiraptera),现在是啮虫目虱亚目之下的一个科,有物种70个。Cladogram enligt Catalogue of Life和Dyntaxa:LinognathusPro
  • 柬埔寨总理柬埔寨政府与政治 系列条目现今柬埔寨王国的政府首脑称首相,现任柬埔寨首相是洪森。而从前柬埔寨在非君主制时期的政府首脑则多译作总理。
  • 屁股臀部,又称尻、腚,俗称屁股、屎窟、箩柚(碌柚谐音)、箩噼、噼噼,台语亦作尻川(kha-tshng),是猿类和人类盆骨部分后方的浑圆部位。亦是人类用来承受坐力的部位。臀部由臀大肌和臀中肌
  • 巴鲁克旁巴鲁克旁是印度阿鲁纳恰尔邦(中国称藏南)西卡门县位于喜马拉雅山南麓的一个小镇。海拔213米。 距邦迪拉 100 km,距阿萨姆邦提斯普尔 52 km 。巴鲁克旁位于卡门河(鲍罗里河,也
  • 比利·赞恩小威廉·乔治·“比利”·赞恩(英语:William George " Billy " Zane, Jr.,1966年2月24日-)是一位美国男演员和制片人。他较著名的是在1989年惊悚片《航越地平线》中饰演休吉·沃