冷月手撕408之操作系统(14)-内存分配之非连续存储管理
16lz
2021-04-28
操作系统的内存分配之基本分页存储管理,主要是内存分配策略的非连续分配管理。整个知识点都需要重点掌握。特别是给出逻辑地址,转换为物理地址的过程。
主要的重点冷月做出了标识,知识点如下图(pdf版或xmind源文件请关注公众号:学长冷月,回复操作系统)。
冷月点睛
内存分配之基本分页存储管理
基本概念
定义
把进程中的逻辑空间大小、内存物理空间、外存物理空间划分为大小相同的块;内存中叫页框、进程中的块叫页
进程中的逻辑空间中的页面可以离散的分配到内存中的页框
页面的大小为2的整数次幂
页表
记录页面和实际存放内存块的映射关系,一般存放在内存中
一个进程对应一张页表,进程的每一页对应一张页表项
页号 = 逻辑地址/页面大小 ; 页内偏移 = 逻辑地址 % 页面大小
地址变换机构
地址转换
1.计算出逻辑地址对应的页号、页内偏移
2.找到页面对应内存中的存放位置
3.物理地址 = 页内始址 + 页内偏移量
基本地址变换机构
需要两次访存;第一次先访问内存中的实际存放位置,第二次在内存中访问目标
具有快表的地址变换机构
快表命中则只需要一次访存
两级页表
将页再分页;逻辑结构是(一级页号、二级页号、页内偏移量)
N级页表访问一个内存空间需要N + 1次访存
©著作权归作者所有:来自51CTO博客作者mb608817c2954e5的原创作品,如需转载,请注明出处,否则将追究法律责任更多相关文章
- 冷月手撕408之操作系统(15)-内存分配之基本分段式、段页式管理
- 冷月手撕408之操作系统(16)-虚拟内存管理
- c语言指针自学
- 你真的了解数据在堆栈中的存储方式吗?
- 关于修复用户异常地址的思路
- ce内存寻址基址
- 内存操作函数:memove、memcpy、strstr、strcat、strcmp模拟实现
- zabbix server 内存溢出 @第一次遇到
- zabbix监控DELL iRADC风扇+温度+内存(zabbix模板自行下载)