找回密码
立即注册
搜索
发回帖 发新帖

5229

积分

0

好友

671

主题
发表于 2 小时前 | 查看: 7| 回复: 0

买电脑的时候,谁都想一步到位,内存直接拉到 32G。可两年后再看,照样嫌小。这不是错觉,课件里有句话说得特别直白:程序大小的增长速度,与内存容量的增长速度几乎一样快。

硬件一扩容,软件马上就吃满;用户还是抱怨内存太小、总是不够用。于是,「让内存和外存高效配合」成了操作系统的重要任务之一,这个活儿有个正式名字——存储管理。

一、先认清一条过不去的边界

存储器的分类只有一句话:分内存储器(内存)和外存储器(外存)。

存储器分类示意图:内存、外存与闪存的边界

图① 一条过不去的边界

处理器可以直接访问内存,但不能直接访问外存。外存里的东西要进来,必须经过输入输出设备搬运;内存里的东西要留住,必须写回外存。

这也是两者的分工:外存可以持久保存信息,而内存掉电之后就丢了。

有个新物种值得单独说:闪存。它既能被直接访问,又能在掉电后继续保存信息——两头都占。但它的写入速度与处理器不匹配,所以通常还是当外存用,比如固态硬盘。

所以判断一个器件站哪边,看的不是「能不能直访」,而是速度配不配得上处理器。

这条边界有多贵,看两个数字就够:

纳秒与毫秒:调页和访存的速度差异

图② 纳秒与毫秒之间

一次访存是纳秒级,一次调页要经过输入输出,是毫秒级,差了六个数量级。后面所有页面置换算法,争的都是同一件事——别让外存动不动就上场。

二、存储管理管的四件事

存储管理的四件事:分配、回收、保护、扩充

图③ 分配、回收、保护、扩充

这四件事,正好对应课本第五章的八条学习目标:内存空间的概念、层次、分配与回收方法;程序装入时的地址转换过程;可变分区分配与内存紧缩;覆盖与交换;以及最后的大头——虚拟页式存储管理,连同虚拟空间、虚拟地址与页表、页表项、TLB、页面置换、缺页异常、颠簸与工作集。

八条目标其实是一条线:

存储管理章节逻辑线索:从概念到虚拟页式

图④ 从概念到虚拟

先认清内存是什么(概念与层次),再看程序怎么进来(装入与地址转换),然后看空间怎么切(可变分区与紧缩)、怎么省(覆盖与交换),最后看怎么把空间造出来(虚拟页式)。

建议学时 12 学时,是全课最厚的一章——不是内容难,是这一章的每个概念都互相咬着。

三、先把术语统一,省得被译名绕晕

同一件事在这门课里有好几个叫法,第一次见容易以为是新东西。课件专门列了一张等价表,四组:

| 地址重定位 | = 地址转换 = 地址翻译 = 地址变换 = 地址映射 |
| 物理页面 | = 页帧 = 页框 = 内存块 |
| 转换检测缓冲区 | = 快表 = 旁路寄存器(英文缩写 TLB) |
| 页内地址 | = 页内偏移 = 页内位移 |

看到不认识的译名,先回这张表对一下,往往只是换了个说法。换个名字不等于换了个概念,这是这一章最省时间的习惯。

下一篇从「内存空间的概念与层次」开始——先说清楚内存里到底长什么样,再谈怎么往里放程序。




上一篇:Solana 链上索引器实战:187 行代码从签名回填到余额解析
下一篇:英国AI安全新计划:前沿模型排查政府漏洞,修复时间50天缩至8天
您需要登录后才可以回帖 登录 | 立即注册

手机版|小黑屋|网站地图|云栈社区 ( 苏ICP备2022046150号-2 )

GMT+8, 2026-10-19 06:24 , Processed in 0.064544 second(s), 38 queries , Gzip On.

Powered by Discuz! X3.5

© 2025-2026 云栈社区.

快速回复 返回顶部 返回列表