zl程序教程

您现在的位置是:首页 >  工具

当前栏目

【计算机组成原理】学习笔记——总目录【已完结!】

2023-09-11 14:15:48 时间

入门篇(5讲)

【00】开篇词:为什么你需要学习计算机组成原理?
【01】冯·诺依曼体系结构:计算机组成的金字塔
【02】计算机组成原理知识地图
【03】通过你的CPU主频,我们来谈谈“性能”究竟是什么?
【04】穿越功耗墙,我们该从哪些方面提升“性能”?

原理篇:指令和运算(12讲)

【05】计算机指令:让我们试试用纸带编程
【06】指令跳转:原来if…else就是goto
【07】函数调用:为什么会发生stack overflow?


【08】ELF和静态链接:为什么程序无法同时在Linux和Windows下运行?
【09】程序装载:"640K内存"真的不够用么?
【10】动态链接:程序内部的"共享单车”


【11】二进制编码:“手持两把银斤拷,口中疾呼烫烫烫”?
【12】理解电路:从电报机到门电路,我们如何做到"千里传信"?
【13】加法器:如何像搭乐高─样搭电路(上)?
【14】乘法器:如何像搭乐高─样搭电路(下)?
【15】浮点数和定点数(上):怎么用有限的Bit表示尽可能多的信息?
【16】浮点数和定点数(下)︰深入理解浮点数到底有什么用?

原理篇:处理器(18讲)

【17】建立数据通路(上):指令+运算=CPU
【18】建立数据通路(中):指令+运算=CPU
【19】建立数据通路(下):指令+运算=CPU
【20】面向流水线的指令设计(上) :—心多用的现代CPU
【21】面向流水线的指令设计(下):奔腾4是怎么失败的?
【22】冒险和预测(—) : hazard是"危"也是"机”
【23】冒险和预测(二):流水线里的接力赛
【24】冒险和预测(三) : CPU里的"线程池"
【25】冒险和预测(四):今天下雨了,明天还会下雨么?
【26】 superscalar和VLIW:如何让CPu的吞吐率超过1?
【27】SIMD:如何加速矩阵乘法?
【28】异常和中断:程序出错了怎么办?
【29】CISC和RISC:为什么手机芯片都是ARM?


【30】GPU (上):为什么玩游戏需要使用GPU?
【31】GPU(下) :为什么深度学习需要使用GPU?


【32】FPGA和ASIC:计算机体系结构的黄金时代
【33】解读TPU:设计和拆解—块ASIC芯片


【34】理解虚拟机:你在云上拿到的计算机是什么样的?

原理篇:存储与I/O系统(17讲)

【35】存储器层次结构全景:数据存储的大金字塔长什么样?
【36】局部性原理:数据库性能跟不上,加个缓存就好了?
【37】高速缓存(上):"4毫秒"究竟值多少钱?
【38】高速缓存(下):你确定你的数据更新了么?
【39】MESI协议:如何让多核CPU的高速缓存保持—致?
【40】理解内存(上):虚拟内存和内存保护是什么? ★★★★★
【41】理解内存(下):解析TLB和内存保护时长


【42】总线:计算机内部的高速公路时长
【43】输入输出设备:我们并不是只能用灯泡显示"0"和"1"
【44】理解IO_WAIT: I/O性能到底是怎么回事儿?
【45】机械硬盘:Google早期用过的"黑科技”
【46】SSD硬盘(上) :如何完成性能优化的KPI?
【47】SSD硬盘(下):如何完成性能优化的KPI?


【48】DMA:为什么Kafka这么快?
【49】数据完整性(上):硬件坏了怎么办?
【50】数据完整性(下):如何还原犯罪现场? ★★★★★


【51】分布式计算:如果所有人的大脑都联网会怎样?

应用篇:(4讲)

【52】设计大型DMP系统(上):MongoDB并不是什么灵丹妙药
【53】设计大型DMP系统(下):SSD拯救了所有的DBA(略)
【54】理解Disruptor(上):带你体会CPU高速缓存的风驰电掣(略)
【55】理解Disruptor(下):不需要换挡和踩刹车的CPU,有多快?(略)

结束语:完成比完美更好

特别说明

1)14-16节有些难度,先略过不看,不影响后续的学习。
2)18、19两节原文内容跨越性较大,读起来很费劲,可以结合《编码:隐匿在计算机软硬件背后的语言》14、16、17节进行学习,这本书里写的很详细,可以很透彻地读懂!
学习过程中的重要截图:
链接:https://pan.baidu.com/s/1Oz4cT7V_P0w1cqEJ1uKMyg
提取码:hf2d
3)应用篇52-55省略