04. 常见的内存知识

1.内存的作用

2.常见内存分类

3.内存的 3 个关键特性

4.常见内存问题


1.内存的作用

1).把计算机比作一个办公室:

CPU = 办公室里的"老板"(运算速度极快, 负责处理核心工作)

硬盘 = 办公室的"档案柜"(容量极大, 存放所有长期不用的文件/数据, 但取放速度很慢)

内存 = 老板的"办公桌"(容量比档案柜小,比老板口袋小,但取放速度极快)

内存的核心作用: 临时存放老板(CPU)马上要用到/正在用的数据和指令, 避免老板每次都要跑到档案柜(硬盘)取文件, 提升

办公效率(计算机运行速度)

2).比如你打开一个Word文档:

a.文档原本存在硬盘(档案柜)里

b.打开时, 系统会把文档的核心数据复制一份到内存(办公桌)

c.你编辑文档时, CPU直接操作内存里的副本(老板直接用办公桌上的文件)

d.你点击"保存", 系统才把内存里的修改同步回硬盘(把修改后的文件放回档案柜)

e.关闭Word时, 系统会释放这份内存(把办公桌上的Word文件撤走, 腾出空间)

2.常见内存分类

我们按"从快到慢、从小到大"的顺序讲, 对应办公室的不同储物空间

a.CPU缓存(老板的「私人抽屉」, 最快最小)

因为CPU(老板)运算速度太快, 连内存(办公桌)的取放速度都有点"跟不上", 所以CPU自带了更小更快的「私人抽屉」—— CPU 

缓存, 分为L1、L2、L3三级:

- L1缓存: 老板的「口袋」, 每个CPU核心独有, 容量最小(几KB ~ 几十KB), 速度最快, 存放老板当下最急需的数据

- L2缓存: 老板的「桌面小抽屉」, 也是每个CPU核心独有, 容量比L1大(几十KB ~ 几MB), 速度略慢于 L1

- L3缓存: 办公室的「公用文件架」, 所有CPU核心共享, 容量比L2大(几MB ~ 几十MB), 速度略慢于 L2

工作逻辑: CPU需要数据时, 先翻自己的口袋(L1), 再翻桌面小抽屉(L2), 再翻公用文件架(L3), 最后才找办公桌(内存)实在

找不到才去档案柜(硬盘) —— 这就是为什么电脑CPU缓存越大, 运行越流畅

⚠️ 缓存不一致就是内存屏障要解决的核心问题, 比如两个老板(双CPU核心)各有自己的口袋(L1), 都放了同一份文件数据A老

板修改了自己口袋里的文件, 没同步到办公桌(内存), B老板还在看自己口袋里的旧文件, 这就是"缓存不一致"
b.物理内存(你的「内存条」, 核心主力)

就是你电脑主机里插的「内存条」(8G/16G/32G), 对应我们说的「办公桌」, 是内存的核心主力

特性: 速度快(比硬盘快 100 倍以上)、容量有限(比硬盘小很多)、易失性(断电数据消失, 比如电脑突然关机, 没保存的Word

内容会丢失, 就是因为数据还在物理内存里, 没同步到硬盘)

作用: 存放所有正在运行的程序数据(微信、浏览器、游戏等), 程序运行时必须占用物理内存, 关闭程序后系统会释放对应的

内存空间
c.虚拟内存(「地上的临时布垫」, 应急用)

当物理内存(办公桌)不够用时, 系统会从硬盘(档案柜)划分一块空间, 当作"临时内存"使用, 这就是虚拟内存

特性: 容量大(由硬盘剩余空间决定)、速度慢(和硬盘速度一致, 比物理内存慢很多), 应急专用

缺点: 如果电脑频繁使用虚拟内存(办公桌满了, 只能用地上的布垫放文件), 会导致电脑明显卡顿, 因为硬盘的读取速度远不

如物理内存

比如你同时打开PS、AE、大型游戏,物理内存不够用了, 系统就会启用虚拟内存, 此时你会感觉电脑变卡, 就是这个原因


3.内存的 3 个关键特性

速度优先级: CPU缓存(L1 > L2 > L3) > 物理内存 > 虚拟内存(硬盘), 速度越快, 容量越小, 这是硬件的"平衡法则"

临时存储(易失性): 只有硬盘是"永久存储", 内存(CPU 缓存 + 物理内存 + 虚拟内存里的临时数据)断电就消失, 这也是为什

么一定要及时保存文件

按需分配与释放: 程序运行时系统会分配内存, 程序关闭时应释放内存, 这是避免内存问题的核心

4.常见内存问题

1).内存泄漏

通俗解释: 程序用完内存后, 没及时"归还"给系统, 导致内存被一直占用, 越用越多, 最后程序卡顿甚至崩溃

类比: 秘书把办公桌上的文件用完后, 没撤走, 也没放回档案柜, 一直堆在办公桌上, 办公桌空间越来越小, 最后放不了新

文件

2).内存溢出

通俗解释: 程序需要的内存, 超过了系统能分配的最大内存(物理内存 + 虚拟内存), 直接报错崩溃

类比: 办公桌(物理内存)和地上的布垫(虚拟内存)都堆满了文件, 老板还想放新文件, 根本放不下, 只能停止工作

3).缓存不一致

通俗解释: 多个CPU核心各有自己的缓存, 修改了同一数据后, 没及时同步到物理内存导致其他核心读取到旧数据, 引发程序

逻辑错误
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值