开篇词|为什么你要系统学习计算机的内存知识?
导学(一)| 拆解CPU的基本结构和运行原理导学(二)| 汇编语言是怎么一回事?导学(三)| 一个CPU是怎么寻址的?
01|虚拟内存:为什么可用内存会远超物理内存?02|聊聊x86体系架构中的实模式和保护模式03 | 内存布局:应用程序是如何安排数据的?04 | 深入理解栈:从CPU和函数的视角看栈的管理05 | 栈的魔法:从栈切换的角度理解进程和协程06 | 静态链接:变量与内存地址是如何映射的?07 | 动态链接(上):地址无关代码是如何生成的?08 | 动态链接(下):延迟绑定与动态链接器是什么?09 | 深入理解堆:malloc和内存池是怎么回事?10 | 页中断:fork、mmap背后的保护神11 | 即时编译:高性能JVM的核心秘密12 | 内存虚拟化:云原生时代的奠基者
13 | 存储电路:计算机存储芯片的电路结构是怎样的?14 | CPU Cache:访存速度是如何大幅提升的?15 | MESI协议:多核CPU是如何同步高速缓存的?16 | 内存模型:有了MESI为什么还需要内存屏障?17 | NUMA:非均匀访存带来了哪些提升与挑战?
18 | Java内存模型:Java中的volatile有什么用?19 | 垃圾回收:如何避免内存泄露?20 | Scavenge:基于copy的垃圾回收算法21 | 分代算法:基于生命周期的内存管理22 | G1 GC:分区回收算法说的是什么?23 | Pauseless GC:挑战无暂停的垃圾回收24 | GC实例:Python和Go的内存管理机制是怎样的?
不定期福利第一期 | 海纳:我是如何学习计算机知识的?不定期福利第二期 | 软件篇答疑
期末测试 | 来赴一场满分之约吧!结束语 | 自主基础软件开发的那片星辰大海