操作系统-存储管理

存储管理

RAM

分层存储体系 memory hierachy

无存储器抽象

早期直接去访问存储器,无抽象

无法两个程序共同使用

一种存储器抽象:地址空间

地址空间是一个进程可用于寻址内存的一套地址集合。每个进程都有一个自己的地址空间,并且这个地址空间独立于其他进程的地址空间

地址空间的概念

基址寄存器与界限寄存器

给CPU配置两个特殊的硬件寄存器,基址寄存器与界限寄存器。

交换技术

所有进程运行所需要的内存,

空闲内存管理

位图链表

虚拟内存

虚拟内存主要是用来解决程序的需要空间大于内存,早期使用覆盖(overlay)的方法来解决。

分页

image.png

虚拟地址空间按照固定大小划分成页面(page)的若干

image.png

如果虚拟页面访问一个没有映射的页面,会发生缺页中断。

页表

image.png

虚拟地址 = 虚拟页号 + 偏移量

页表的目的是把虚拟页面映射为页框。可以把页表理解成一个函数,输入的是虚拟页号,输出框号。

加速分页过程

大多数程序总是对少量的页面进行多次访问。
TLB

针对大内存的页表

多级页表

倒排页表

页面置换算法

当发生缺页中断时,操作系统会选择一个页面将其换出内存。

分页系统中的设计问题

有关实现的问题

分段

有关存储的研究

坚持技术分享,您的支持将鼓励我继续创作!