周记04|2025.07.28 - 08.03 暑假第五周

本文是对20250728 - 0803 的记录与思考

阅读有关Parquet和ORC的论文;并发程序的新理解;矩阵和矩阵乘法的理解;开坑线性代数的正式学习和记录;准备学习Rust

1. 本周进展总结

😍Database Systems

🤔Operating Systems

📏Linear Algebra

🌠CMU15213 CSAPP

✍️英语词汇

🌐个人网站

Pasted image 20250802144415.png

2. 日历工具的探索

这周尝试把 Notion Calendar 和 Google Calendar 结合起来用,来统一管理我的日程安排。用下来感觉还挺不错的

Notion Calendar的优点

Google Calendar的优点

所以我最终选择了用Noiton日历管理学习任务,用Google日历管理课表与协作日程,再将Google日历集成到Noiton中统一视图

另外一个小收获是,我发现其实不需要再手写一张一周计划了,完全可以直接在日历里把每天的任务和大致时间排好

3. 矩阵和矩阵乘法的理解

这周通过线性代数的学习,真的是在在矩阵和矩阵乘法上有了新的理解

矩阵的不同理解

矩阵乘法AB=C

4. 处理器也是"编译器"

x++这个操作的底层是由三条汇编指令(读,加,写)组成的,在并发编程中并不能保证其原子性,可能会导致竞态条件和一些不可预测的行为

更进一步,我们的编译器为了优化性能,会对指令进行整合 调整,而不同的优化做的事情不一样,-O1-O2不同的优化带来了不同的结果

其实真正我没想到的是: 即使是一条指令,在处理器内部也未必“安全”

这是因为处理器也是“编译器”,它会把汇编指令拆解成多条微指令,并在内部进行流水线执行、乱序执行

其实回想起来微指令,流水线技术,超流水线技术当时在计算机组成原理中学过了,但是却没有想到这一点

5. 新计划 -- 下周开始学习Rust

从下周开始,我决定每天晚上都安排一点时间来学Rust,第一个学习资源我选择了新南威尔士大学的课程COMP6991,是一门受好评的Rust入门课

6. 其他的一点想法