CPU是如何与千奇百怪的设备交互的? | Core Dumped

合集 · Core Dumped (28)

  1. 13:09
    为什么应用程序只能运行在特定操作系统上? | Core Dumped
  2. 19:36
    内核到底在哪结束?一个从未被解释清楚的问题 | Core Dumped
  3. 14:51
    为什么程序不能互相访问内存?硬件如何保护系统 | Core Dumped
  4. 13:04
    CPU里的隐藏绝技:位运算究竟如何工作? | Core Dumped
  5. 17:42
    编程术语的历史渊源:今天我们还在用的词从哪来? | Core Dumped
  6. 18:41
    硬件指令如何让多线程编程不再噩梦? | Core Dumped
  7. 22:08
    解析表达式的高效算法:Pratt Parsing详解 | Core Dumped
  8. 18:35
    信号机制:让Ctrl+C做任何你想做的事 | Core Dumped
  9. 13:36
    为什么Python正在移除GIL?并行编程的瓶颈即将消失 | Core Dumped
  10. 18:25
    为何底层项目里全是这种古怪代码? | Core Dumped
  11. 19:32
    为什么有些项目要同时使用多种编程语言? | Core Dumped
  12. 10:17
    那次我不得不使用链表 | Core Dumped
  13. 21:20
    底层探秘:ArrayList与LinkedList内存对决 | Core Dumped
  14. 19:05
    80年代的竞态条件避免算法,为何失败了? | Core Dumped
  15. 12:09
    计算机如何将字符串转换为数字?完整过程解析 | Core Dumped
  16. 13:15
    多任务时,硬件如何辅助软件切换上下文? | Core Dumped
  17. 17:53
    堆内存为何如此缓慢?深入剖析 | Core Dumped
  18. 17:51
    Linux创建进程的方式有多奇葩? | Core Dumped
  19. 14:22
    CPU的“前进”指令,竟是时钟在指挥? | Core Dumped
  20. 8:08
    程序≠进程:别再搞混了 | Core Dumped
  21. 19:49
    CPU是如何运行函数的?底层原理揭秘 | Core Dumped
  22. 16:58
    内存如何记住数据?晶体管层面的原理 | Core Dumped
  23. 45:02
    揭秘让电脑反应更丝滑的CPU调度算法 | Core Dumped
  24. 11:27
    多核CPU的线程是如何运作的? | Core Dumped
  25. 18:09
    电容存数据有多不靠谱?但DRAM还是这么干了 | Core Dumped
  26. 23:28
    CPU是如何与千奇百怪的设备交互的? | Core Dumped
  27. 14:28
    晶体管是如何执行代码的? | Core Dumped
  28. 19:51
    为什么Windows装软件需要安装程序,而macOS不用? | Core Dumped
Description
来源:https://www.youtube.com/watch?v=tadUeiNe5-g
原标题:How CPUs Interact with So Many Different Devices
频道:Core Dumped
发布时间:2025-10-08

内容简介:
在这个视频中,我们将学习I/O设备的基础知识,以及它们在通用计算机系统中是如何与CPU交互的。

内容涵盖I/O设备的定义、CPU为何不直接控制外设的原因,并以键盘为例深入解析了其背后的I/O逻辑。接着探讨了微控制器与控制总线在其中的角色,以及硬盘设备控制器如何处理具体的I/O操作。

视频还详细介绍了不同的I/O硬件实现方式,包括内存映射I/O (MMIO)、独立I/O (端口映射I/O)、程序控制I/O (轮询) 和中断驱动I/O。进一步讲解了MMIO与自定义I/O总线的配合、经典的北桥南桥架构,以及现代CPU如何整合I/O控制功能。

此外,还从历史角度分析了80年代的电脑为何互不兼容,以及后来PCIe、SATA、USB等标准的出现如何带来了兼容性。最后,阐述了设备驱动程序作为软硬件之间翻译官的重要作用。

可在Github上赞助作者的工作:https://github.com/jdvillal
加入Discord社区:https://discord.gg/szyQsXfzuv
关注Twitter:https://twittter.com/coredumpped


时间轴:
00:00 开场
00:33 内容目录
00:49 什么是I/O设备
01:12 为什么CPU不应直接控制外设
02:22 以键盘为例解析I/O逻辑
04:19 微控制器与控制总线的角色
05:13 以硬盘为例看设备控制器如何处理I/O操作
07:05 赞助商信息
08:21 I/O硬件实现概览
08:56 内存映射I/O (MMIO)
10:45 独立I/O (端口映射I/O)
12:16 程序控制I/O (轮询)
13:11 中断驱动I/O
14:12 MMIO + 自定义I/O总线
15:02 北桥与南桥架构
16:14 现代CPU对I/O控制功能的整合
17:47 为什么系统仍然使用内存映射I/O
18:45 为什么80年代的电脑互不兼容
20:07 标准化与兼容性 (PCIe, SATA, USB)
22:

Comments

programmer-null 2026-06-07

Though why

♥ 5

月影风灵 2026-06-05

学到了[打call]

♥ 3

ros2jazzy 2026-06-08

我看到了硬盘里面的Marvel

♥ 1