【计组】存储系统

主存

结构

位数关系

MDR=数据线宽度

MAR=地址线宽度

数据线宽度与机器字长

MDR与存储字长

MAR与主存容量

线与引脚

普通存储器

DRAM

地址线复用

行列选通线代替片选

编址方式

按字节编址

按字编址

按半字编址

扩展

字扩展

增加存储单元(存储字)个数

逻辑上组成组

地址高位用于片选

位扩展

增加存储字长

逻辑上黏在一起

无需片选

和低位交叉编址的同时启动类似

字位扩展

存储周期与总线周期(多模块存储器)

边界对其

K字节的数据的起始地址必须是K的倍数

大端和小端

大端

  • 数据高位放在地址低位
  • 与阅读顺序一致
  • 高字节为字地址

小端

  • 数据高位放在地址高位
  • 与阅读顺序相反
  • 低字节为字地址

Cache

原理

地址结构

普通主存地址

直接映射

组相连

全相连

cache行的内容

访存过程

1.CPU给出主存地址

2.根据主存地址中间的cache行号字段找到对应的cache行

3.对比cache行和主存地址的cache位,并观察cache行的有效位

平均访问时间

p*Tc+(1-p)*(Tc+Tm)

Tc+(1-p)Tm

写策略

写命中

全写法

同时写cache和主存

回写法

信息只被写入cache而不写入主存

只有此块被替换出时才写回主存

写不命中

写分配法

先在主存块中更新相应存储单元,然后分配一个cache行,更新主存块进去

非写分配法

仅更新主存单元而不装入主存块到cache中

命中率

如果每个对象按顺序访问并且不会回头,在cache发生替换之前可以只分析一个块的命中率来代替整体

注意访问的对象是否能把cache塞满,或者放不下时会塞满cache几轮,因为替换算法会影响到后续的命中率

虚拟内存

虚拟存储的原理

虚拟地址空间

虚页号+页内地址

地址连续

每个进程的虚拟地址空间一样大

主存地址空间

实页号(页框号)+页内地址

同一个进程的某些存储单元的主存地址通常不连续

地址转换的过程

磁盘

结构

磁头

柱面

扇区

平均存取时间

寻道时间+旋转延迟时间+传输时间

相关推荐
vision_wei_8 小时前
Redis中间件(二):Redis协议与异步方式
网络·数据库·c++·redis·分布式·缓存·中间件
代码的余温8 小时前
Redis内存耗尽时的应对策略
数据库·redis·缓存
代码的余温13 小时前
Redis集群核心原理与实战解析
数据库·redis·缓存
倾听醉梦语16 小时前
Redis作为MySQL缓存的完整指南:从原理到实战
数据库·redis·mysql·缓存
转身後 默落18 小时前
13.Redis 的级联复制
数据库·redis·缓存
超龄超能程序猿1 天前
闸机控制系统从设计到实现全解析:第 4 篇:Redis 缓存与分布式锁实现
redis·分布式·缓存
GISer_Jing2 天前
浏览器缓存机制全解析:强缓存与协商缓存
前端·javascript·缓存
xyphf_和派孔明2 天前
聊聊web前端的缓存问题
缓存