物理内存管理:非连续内存分配
Posted My heart will go ~~
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了物理内存管理:非连续内存分配相关的知识,希望对你有一定的参考价值。
1.背景
非连续内存,实现虚拟地址和物理地址的转换有点困难。可以软件、硬件实现。
非连续分配中内存块大小:段式、页式存储管理。
2.段式内存管理
3.页式内存管理
页帧:把物理地址空间划分的基本单位为页帧。
页面:逻辑地址空间划分的基本单位为页面
逻辑地址页号是连续的,物理地址帧号是不连续的,不是所有的页都有对应的帧。
页表:页面与页帧之间的转换
4.页表描述
页表:从逻辑页号到物理页号的转换
带来的问题:
内存访问的性能问题:访问一个内存单元需要2次内存访问。
页表大小问题:页表可能非常大。
如何处理:缓存,间接访问。
5.快表和多级页表
快表:利用缓存减少对内存的访问。
多级页表:通过间接引用减少页表长度。
通过多级引用,将页号分为若干级。
6.反置页表
多级页表访问次数较多,让页表项和物理地址对应起来。
7.段页式存储管理
段式和页式结合起来。
以上是关于物理内存管理:非连续内存分配的主要内容,如果未能解决你的问题,请参考以下文章
Linux内存从0到1学习笔记(六,物理内存初始化之四 --- 内存分配器)---持续更新