CS:APP 第六章学习笔记
CS:APP 第六章 “The Memory Hierarchy” 的学习笔记。
这章的主要内容有:各种存储设备(RAM、ROM、HDD、SSD)的特点、程序的局部性、缓存的结构以及原理、缓存对程序性能的影响。
CS:APP 第六章 “The Memory Hierarchy” 的学习笔记。
这章的主要内容有:各种存储设备(RAM、ROM、HDD、SSD)的特点、程序的局部性、缓存的结构以及原理、缓存对程序性能的影响。
CS:APP 第九章 “Virtual Memory” 的学习笔记。
本章的主要内容为 page table、address translation、memory mapping、dynamic allocation。
CS:APP 第八章 “Exceptional Control Flow” 的学习笔记。
本章的主要内容为 exception、system call、process、signal、longjmp。
这学期选了游泳零基础班作为体育课。一开始的时候只是略低于平均水平,但到后来学习换气的时候,在 20~40m 左右卡了很久,最后能连续游 50m 比班上倒数第二晚了三节课。
在体育方面会垫底是我预料之中的,但比倒数第二差太多,长期和班上同学分开上课,还是挺难受的。但是,这段经历也让我有了丰富的失败经验(,可以水一篇踩坑记录,幸运的话可能还能在未来帮到某人。
这学期选了物理实验B。
以前基本上只在 Markdown 里写 LaTeX,没怎么写过 .tex
,R 则完全没有接触过。理论上我应该好好学一学再用,但实际上没时间好好学。总不能用 Word 写实验报告并且手算吧(
这里总结一下我写实验报告用到的 TeX 和 R。
在学习 浮点数精度转换指令 时,CS:APP 里提到 gcc 并不使用 vcvtss2sd
/vcvtsd2ss
,而是使用 vunpcklps
& vcvtps2pd
/ vmovddup
& vcvtpd2psx
,但是我使用 gcc 12.2.0 编译得到的结果就是 vcvtss2sd
/vcvtsd2ss
。对此,CS:APP 没有深究:
It is unclear why GCC generates this code. There is neither benefit nor need to have the value duplicated within the XMM register.
但是 CS:APP 选择放弃反而会激发读者的斗志啊(
虽然但是,我确实没想到这玩意会让我断断续续搞了三天,ddl 又要寄了 🌚
CS:APP 第七章 “Linking” 的学习笔记。
这章的主要内容为程序的链接。学习链接有助于:理解链接报错,避免链接相关的 bug,理解变量(函数)的作用域,理解程序运行过程中与链接相关的步骤,了解如何使用共享库(动态链接库)。
CS:APP 第四章 “Processor Architecture” 的学习笔记。
这章的主要内容为一个简化的指令集 Y86-64 的设计以及 Y86-64 处理器的实现(顺序实现和 pipeline 实现)。
CS:APP 第三章 “Machine-Level Representation of Programs” 的学习笔记。
这章的主要内容为汇编(machine-level programming)。
CS:APP 第二章 “Representing and Manipulating Information” 的学习笔记。
这章的主要内容为 byte、整数和浮点数的存储及计算。