图解 您所在的位置:网站首页 缺页中断什么意思 图解

图解

2024-06-09 11:25| 来源: 网络整理| 查看: 265

1.号外号外

各位老铁,大家好!

上周大白有事停更1次,最近在想如何让大家在10分钟中有所收获,于是准备搞一个"什么是xxx"系列,写一些精悍的知识点。

先抛一道阿里面试题给大家热热身,引出今天的主角-缺页异常Page Fault。

谈谈对缺页异常Page Fault的理解。

话不多说,集合上车。

2. 术语约定

VA:Virtual Address 虚拟地址

PA:Physical Address 物理地址

MMU:Memory Manage Unit 内存管理单元

TLB:Translation Lookaside Buffer 旁路快表缓存/地址变换高速缓存

PTE:Page Table Entry 分页表项

3. 内存的惰性分配

以32位的Linux系统为例,每个进程独立拥有4GB的虚拟地址空间,根据局部性原理没有必要也不可能为每个进程分配4GB的物理地址空间。

64位系统也是一样的道理,只不过空间寻址范围大了很多很多倍,进程的虚拟地址空间会分为几个部分:

实际上只有程序运行时用到了才去内存中寻找虚拟地址对应的页帧,找不到才可能进行分配,这就是内存的惰性(延时)分配机制。

对于一个运行中的进程来说,不是所有的虚拟地址在物理内存中都有对应的页,如图展示了部分虚拟地址存在对应物理页的情况:

虚拟地址空间根据固定大小一般是4KB进行划分,物理内存可以设置不同的页面大小,通常物理页大小和虚拟页大小是一样的,本文按照物理页4KB大小展开。

经过前面的分析,我们将面临一个问题:如何将虚拟地址准确快速地映射到物理页呢?

>>>高能预警 敲黑板 本段小结高能预警 敲黑板 本段小结 敲黑板 划重点 本段小结:



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有