欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Linux操作系统 - 浅析分页机制

程序员文章站 2022-05-29 07:53:43
...

在想看下共享内存如何实现的时候,刚好想了解一下内存使用情况。

简介

分页机制让我们在程序开发的时候不需要管理内存的,也不需要操心内存够不够用它是实现虚拟存储的关键,位于线性地址与物理地址之间。

  • 整个主内存区域划分成 4096 字节(4k)为一页的内存页面
  • 程序申请使用内存时,就以内存页为单位进行分配
  • 通过页目录表PDE和二级页表PTE实现转换

    • 进程的虚拟地址需要首先通过其局部段描述符变换为 CPU 整个线性地址空间中的地址
    • 然后再使用页目录表 PDE(一级页表)和页表 PTE(二级页表)映射到实际物理地址页上

      页表中,每项的大小是32b,其中20b用来存放页面的物理地址,12b用于存放属性信息。页表含有1M个表项,每项4B。第一级表是页目录,存放在1页4k页面中,含有1K个表项。第二级是页表,也是1K个表项
      

      Linux操作系统 - 浅析分页机制

总结

  1.分页的作用,高效率地利用内存,可以运行比物理内存空间更大的程序;

  2.分页机制的原理,利用两级页表将内存分割成4KB/页的大小,强制内存对齐提高效率;

  3.页表结构,PDE与PTE在内存中各个位的主要作用,表项与页之间的对应关系。

相关标签: 内存