物理内存管理:非连续内存分配

Posted My heart will go ~~

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了物理内存管理:非连续内存分配相关的知识,希望对你有一定的参考价值。

1.背景

非连续内存,实现虚拟地址和物理地址的转换有点困难。可以软件、硬件实现。

非连续分配中内存块大小:段式、页式存储管理。

2.段式内存管理

3.页式内存管理

页帧:把物理地址空间划分的基本单位为页帧。

页面:逻辑地址空间划分的基本单位为页面

逻辑地址页号是连续的,物理地址帧号是不连续的,不是所有的页都有对应的帧。

页表:页面与页帧之间的转换

4.页表描述

页表:从逻辑页号到物理页号的转换

带来的问题:
内存访问的性能问题:访问一个内存单元需要2次内存访问。
页表大小问题:页表可能非常大。
如何处理:缓存,间接访问。

5.快表和多级页表

快表:利用缓存减少对内存的访问。

多级页表:通过间接引用减少页表长度。
通过多级引用,将页号分为若干级。

6.反置页表

多级页表访问次数较多,让页表项和物理地址对应起来。

7.段页式存储管理

段式和页式结合起来。

以上是关于物理内存管理:非连续内存分配的主要内容,如果未能解决你的问题,请参考以下文章

物理内存管理:非连续内存分配

Linux内存从0到1学习笔记(六,物理内存初始化之四 --- 内存分配器)---持续更新

linux操作系统内存管理

Linux内存从0到1学习笔记(6.8,物理内存初始化之buddy伙伴系统)

物理内存管理:连续内存分配

物理内存管理:连续内存分配