关注
软性页缺失指页缺失发生时,相关的页已经被加载进内存,但是没有向MMU注册的情况。操作系统只需要在MMU中注册相关页对应的物理地址即可。发生这种情况的可能性之一,是一块物理内存被两个或多个程序共享,操作系统已经为其中的一个装载并注册了相应的页,但是没有为另一个程序注册。
可能性之二,是该页已被从CPU的工作集中移除,但是尚未被交换到磁盘上。比如OpenVMS这样的使用次级页缓存的系统,就有可能会在工作集过大的情况下,将某页从工作集中去除,但是不写入硬盘也不擦除(比如说这一页被读出硬盘后没被修改过),只是放入空闲页表。除非有其他程序需要,导致这一页被分配出去了,不然这一页的内容不会被修改。当原程序再次需要该页内的数据时,如果这一页确实没有被分配出去,那么系统只需要重新为该页在MMU内注册映射即可。
硬性
与软性页缺失相反,硬性页缺失是指相关的页在页缺失发生时未被加载进内存的情况。这时操作系统需要:
寻找到一个空闲的页。或者把另外一个使用中的页写到磁盘上(如果其在最后一次写入后发生了变化的话),并注销在MMU内的记录;
将数据读入被选定的页;
向MMU注册该页。
无效
当程序访问的虚拟地址是不存在于虚拟地址空间内的时候,则发生无效页缺失。一般来说这是个软件问题,但是也不排除硬件可能,比如因为内存故障而损坏了一个正确的指针。
具体动作与所使用的操作系统有关,比如Windows会使用异常机制向程序报告,而类Unix系统则会使用信号机制。如果程序未处理相关问题,那么操作系统会执行默认处理方式,通常是转储内存、终止相关的程序,然后向用户报告。
查看原帖
1 评论
相关推荐
11-03 12:40
中山大学 Java 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 2025年终总结 #
164445次浏览 2780人参与
# 你面试体验感最差/最好的公司 #
11781次浏览 192人参与
# 一人说一个提前实习的好处 #
7049次浏览 132人参与
# 重来一次,你会对开始求职的自己说 #
4887次浏览 122人参与
# 秋招落幕,你是He or Be #
7190次浏览 155人参与
# 找工作,行业重要还是岗位重要? #
84670次浏览 1673人参与
# 实习没事做是福还是祸? #
11651次浏览 189人参与
# 今年你最想重开的一场面试是? #
2403次浏览 35人参与
# 团建是“福利”还是是 “渡劫” #
5816次浏览 133人参与
# 你小心翼翼的闯过多大的祸? #
9601次浏览 137人参与
# 比亚迪工作体验 #
73073次浏览 277人参与
# 工作中听到最受打击的一句话 #
4268次浏览 83人参与
# 机械人避雷的岗位/公司 #
38567次浏览 261人参与
# 大厂VS公务员你怎么选 #
73214次浏览 667人参与
# 长城汽车工作体验 #
12819次浏览 16人参与
# 如何排解工作中的焦虑 #
246687次浏览 2269人参与
# 机械制造面试点评 #
80733次浏览 465人参与
# 秋招结束之后的日子 #
114100次浏览 1051人参与
# 应届生进小公司有什么影响吗 #
109705次浏览 1123人参与
# 总结:哪家公司面试体验感最差 #
83152次浏览 388人参与