第6章学习笔记:Cache与存储层次
课程笔记沿程序真实运行路径学习Cache与存储层次,始终区分抽象接口、实现状态和可观测证据。
关联:章节 第6章 Cache与存储层次
第6章笔记:Cache与存储层次
本章要解决的问题
沿程序真实运行路径学习Cache与存储层次,始终区分抽象接口、实现状态和可观测证据。 本章七课是一条连续推理链,不是七个标题。先确定上一课输出怎样成为下一课输入,再记录对象、事件、状态和证据。
七课连接
- 局部性为什么有效:关系
temporal+spatial\ locality;练习为为《局部性为什么有效》构造一条最短可运行轨迹,逐步记录输入状态、系统动作和输出状态,并用关系 temporal+spatial\ locality 复算关键量;边界为不能把《局部性为什么有效》在语言、ABI、ISA、微体系结构、内核或设备层的对象混成一个‘系统自动完成’,必须声明位宽、权限、时序和失败后的可见状态;连接说明:承接前一课的状态或契约;本节结果会进入《块、组、标记与偏移》。 - 块、组、标记与偏移:关系
address=tag|index|offset;练习为为《块、组、标记与偏移》构造一条最短可运行轨迹,逐步记录输入状态、系统动作和输出状态,并用关系 address=tag|index|offset 复算关键量;边界为不能把《块、组、标记与偏移》在语言、ABI、ISA、微体系结构、内核或设备层的对象混成一个‘系统自动完成’,必须声明位宽、权限、时序和失败后的可见状态;连接说明:承接前一课的状态或契约;本节结果会进入《直接映射与冲突》。 - 直接映射与冲突:关系
line=block\bmod sets;练习为为《直接映射与冲突》构造一条最短可运行轨迹,逐步记录输入状态、系统动作和输出状态,并用关系 line=block\bmod sets 复算关键量;边界为不能把《直接映射与冲突》在语言、ABI、ISA、微体系结构、内核或设备层的对象混成一个‘系统自动完成’,必须声明位宽、权限、时序和失败后的可见状态;连接说明:承接前一课的状态或契约;本节结果会进入《组相联与替换》。 - 组相联与替换:关系
set=block\bmod S;练习为为《组相联与替换》构造一条最短可运行轨迹,逐步记录输入状态、系统动作和输出状态,并用关系 set=block\bmod S 复算关键量;边界为不能把《组相联与替换》在语言、ABI、ISA、微体系结构、内核或设备层的对象混成一个‘系统自动完成’,必须声明位宽、权限、时序和失败后的可见状态;连接说明:承接前一课的状态或契约;本节结果会进入《写直达与写回》。 - 写直达与写回:关系
dirty\Rightarrow writeback;练习为为《写直达与写回》构造一条最短可运行轨迹,逐步记录输入状态、系统动作和输出状态,并用关系 dirty\Rightarrow writeback 复算关键量;边界为不能把《写直达与写回》在语言、ABI、ISA、微体系结构、内核或设备层的对象混成一个‘系统自动完成’,必须声明位宽、权限、时序和失败后的可见状态;连接说明:承接前一课的状态或契约;本节结果会进入《多级Cache与AMAT》。 - 多级Cache与AMAT:关系
AMAT=T_1+m_1P_1;练习为为《多级Cache与AMAT》构造一条最短可运行轨迹,逐步记录输入状态、系统动作和输出状态,并用关系 AMAT=T_1+m_1P_1 复算关键量;边界为不能把《多级Cache与AMAT》在语言、ABI、ISA、微体系结构、内核或设备层的对象混成一个‘系统自动完成’,必须声明位宽、权限、时序和失败后的可见状态;连接说明:承接前一课的状态或契约;本节结果会进入《Cache轨迹实验》。 - Cache轨迹实验:关系
hit/miss\ state\ trace;练习为为《Cache轨迹实验》构造一条最短可运行轨迹,逐步记录输入状态、系统动作和输出状态,并用关系 hit/miss\ state\ trace 复算关键量;边界为不能把《Cache轨迹实验》在语言、ABI、ISA、微体系结构、内核或设备层的对象混成一个‘系统自动完成’,必须声明位宽、权限、时序和失败后的可见状态;连接说明:承接前一课的状态或契约;本节结果会进入《虚拟页、页框与权限》。
章内学习法
先闭卷画一条最短执行轨迹,再为每个箭头标主体和所属层;随后逐式复算,运行本章代码实验四组测试,并增加一个越界、权限、冲突、乱序或故障输入。只要实际值与模型不同,就保存首个偏差,不用后续噪声替代根因。
错题与复习
把错误归入分层混淆、位宽/单位、状态跳步、事件顺序、权限遗漏、并发交错、故障恢复或观察窗八类。一周后更换参数重做阶段卷;能向同学从现象讲到机制、公式、实验和边界,才算学会。