当CPU遇到它不认识的指令,会发生什么?😱【底层原理】

合集 · 直观理解计算机技术【CoreDumped】 (68)

  1. 11:03
    代码中指定变量类型为何如此重要?
  2. 13:46
    栈为何如此之快?
  3. 17:53
    堆为何如此之慢?
  4. 19:56
    动态数组的内部机制(ArrayList VS LinkedList)
  5. 15:37
    探索计算机并发与多任务处理的历史
  6. 12:54
    晶体管是如何运行代码的?
  7. 16:12
    晶体管是如何记忆数据的?
  8. 18:47
    制作一个CPU来运行程序
  9. 11:23
    计算机如何将字符串转换为数字
  10. 17:18
    动态随机存取存储器(DRAM)的工作原理
  11. 16:05
    计算机处理器是如何运行条件和循环的?
  12. 6:51
    一个程序不是一个进程
  13. 14:52
    深入理解进程,如何进行上下文切换?计算机科学中最深刻和最成功的想法之一。
  14. 20:20
    处理器内部的单个位如何保护操作系统的完整性?
  15. 13:14
    计算的心跳:时钟如何推动 CPU 前进?
  16. 14:22
    英语原声版-计算的心跳:时钟如何推动 CPU 前进?
  17. 14:15
    (英语原声)进程间通信:共享内存或发送消息
  18. 12:29
    (中文配音)进程间通信:共享内存或发送消息
  19. 14:59
    (中文配音)为什么单核处理器需要线程?
  20. 16:07
    (英语原声)为什么单核处理器需要线程?
  21. 9:26
    (中文配音)多核系统上的线程
  22. 11:27
    (英语原声)多核系统上的线程
  23. 11:52
    (中文配音)为什么应用程序是特定于操作系统的?
  24. 13:09
    (英语原声)为什么应用程序是特定于操作系统的?
  25. 13:15
    (英语原声)硬件如何在多任务处理中协助软件?
  26. 11:29
    (中文配音)硬件如何在多任务处理中协助软件?
  27. 20:34
    链表的一个实际应用
  28. 45:02
    让你的电脑运行更流畅的奇妙算法
  29. 43:38
    (流畅中文配音)让你的电脑运行更流畅的奇妙算法
  30. 19:41
    (原声双语字幕)当程序调用 sleep() 时会发生什么?
  31. 17:57
    (流畅中文配音)当程序调用 sleep() 时会发生什么?
  32. 20:40
    这个简单算法驱动了真正的解释器:Pratt Parsing
  33. 18:19
    (双语字幕)编程中最难以捉摸的Bug:竞态条件
  34. 19:23
    (流畅中文配音)编程中最难以捉摸的Bug:竞态条件
  35. 16:02
    (中文配音)阻止内存攻击的底层电路
  36. 14:51
    (英语原声)阻止内存攻击的底层电路
  37. 18:04
    为什么有些项目会使用多种编程语言?
  38. 19:32
    为什么有些项目会使用多种编程语言?
  39. 17:15
    别再杀进程了!让 Ctrl+C 变成“喵”……(用信号实现)
  40. 19:23
    别再杀进程了!让 Ctrl+C 变成“喵”...(用信号实现)
  41. 19:05
    80 年代避免竞态条件的算法(以及它为何失败)
  42. 19:43
    80 年代避免竞态条件的算法(以及它为何失败)
  43. 22:10
    CPU如何与众多不同设备交互?
  44. 23:52
    (中文配音)CPU如何与众多不同设备交互?
  45. 14:04
    (中文配音)你每天都在用的奇特CPU操作
  46. 13:04
    你每天都在用的奇特CPU操作
  47. 18:04
    (中文配音)历史如何塑造了我们今天仍在使用的编程术语?
  48. 17:42
    (英语原声)历史如何塑造了我们今天仍在使用的编程术语?
  49. 16:41
    为什么有些底层项目里会充满这种奇怪的代码?
  50. 16:39
    (中文配音)为什么有些底层项目里会充满这种奇怪的代码?
  51. 21:35
    编译与解释代码如何共处同一程序中?
  52. 21:30
    (英语原声)编译与解释代码如何共处同一程序中?
  53. 17:09
    【双语字幕】Core Dumped 常见问题的集中回答
  54. 13:36
    【双语字幕】90年代的设计决策阻碍了Python并行化
  55. 12:01
    【中文配音】90年代的设计决策阻碍了Python并行化
  56. 17:51
    Linux创建进程的奇怪方式
  57. 18:14
    【中文配音】Linux创建进程的奇怪方式
  58. 19:49
    CPU如何运行函数?
  59. 19:38
    【中文配音】CPU如何运行函数?
  60. 17:15
    没有人解释的问题:内核的边界在哪里?
  61. 19:36
    【英语原声】没有人解释的问题:内核的边界在哪里?
  62. 35:49
    硬件如何让线程问题不再那么棘手?
  63. 19:47
    为什么在macOS、Windows和Linux上安装应用程序如此不同?
  64. 24:00
    游戏公司真的能破坏你的电脑吗?
  65. 10:43
    一个视频说透“架构”:为什么你的程序换个CPU就可能跑不了?
  66. 14:45
    CPU如何执行有符号和无符号运算?
  67. 19:11
    简单指令, 奇妙算法
  68. 9:26
    当CPU遇到它不认识的指令,会发生什么?😱【底层原理】
Description
https://www.youtube.com/watch?v=WtlGB-YVLOg
CPU收到一条“看不懂”的指令,程序会崩溃吗?系统会报错吗?还是整台电脑直接……?本期视频从指令集架构聊起,带你搞懂CPU如何识别扩展指令、CPUID查询机制,以及旧CPU执行新指令时触发的“非法指令”异常到底是怎么回事。还有Linux如何处理这种崩溃、我们能不能拦截它!

**标签**:  
CPU, 指令集, ISA, 指令集架构, CPUID, 扩展指令, AVX, 非法指令, 异常处理, Linux, 信号, 操作系统, 程序崩溃, 底层原理, 计算机组成原理, 编程, 开发, , 科普, 技术

Comments

米线云何 9d ago

翻来覆去的说废话

♥ 31

3-3-0972 10d ago

省流:遇到无法识别的指令,系统会发出“zako❤️~zako❤️~”的语音提示[doge]

♥ 138 ↩ 2

丶Nevermore 10d ago

省流:触发中断异常,产生一个可捕获的信号

♥ 57 ↩ 1

百年糊涂了 10d ago

省流:遇到无法识别的指令,系统会发出“ON!god!please!ON!”的语音提示[doge]

♥ 394 ↩ 11

車力巨人吃不起西瓜 9d ago

CPU: Hey Grok, What is this?

♥ 105 ↩ 4

九七のねこ 10d ago

内存指针:兄弟们觉得我会飞吗?[doge]

♥ 581 ↩ 14

不一样的惩 10d ago

正片:7:00

♥ 336 ↩ 8

亏的盆满钵满 10d ago

省流:执行不认识的指令触发中断,内核停止进程或者程序做出响应

♥ 314 ↩ 4

大道寺ともよ 10d ago

其实和视频观众们想的差不多,什么都不会发生,因为CPU知道这条指令是未知指令,它压根儿不会去执行,只会中断并抛出一个错误 之前我用汇编写真随机数生成器的时候,就曾经判断过CPU是否支持那两条指令,如果不支持就告诉用户不支持,然后去调用另一个差不多的功能

♥ 125 ↩ 7

___DUSK___ 10d ago

cpu:打咩!那两个管子不可以一起来[笑哭]

♥ 43 ↩ 1

猫耳BenYeeHua 9d ago

其实还有一个更有趣的案例,如果系统不支持新CPU和软件调用的新指令集,会如何 答案,会蓝屏ww 有一小部分人,给他们的avx指令集CPU安装了win 7,却缺少了win 7 sp1,在游戏使用NVIDIA physx的CPU物理计算,使用了avx指令集的时候,就蓝屏了 可以说,在win 8时代,我的确遇到很多人电脑还是win 7,缺少sp1,就很ww[装扮小姐姐·风纪委员表情_盯] 至于后面win 10系统还会不会针对后续指令集蓝屏,那我就不知道了ww

♥ 45 ↩ 10

聽妳軟雨 10d ago

Win上面好像会蓝屏,之前想试试775CPU硬刚三角洲的,卡在ACE这一关了,一加载反作弊就蓝屏,CPU是Q9550,应该是没有新SSE的问题

♥ 200 ↩ 15

ECHO-14 10d ago

在单片机上遇到过这种情况,因为使用了错误的库文件所以编译器把C编译成了单片机不支持的汇编,大部分情况下确实是直接中断了,但是对于个别函数CPU竟然真的执行了错误的汇编,尽管执行的结果完全混乱,比如printf变成了往内存里完全无关的地方写一个255

♥ 39 ↩ 8

Choice_1st 3d ago

cpu:我看你的胆子肥嘟嘟的

♥ 5

FYF714 10d ago

跳伞7:10

♥ 74 ↩ 5

吾近士心 10d ago

看编译器了。RISC尤其得注意,由于精减了,有的指令不是弱化了就是取消了。

♥ 11

铅笔头qwer 9d ago

好久没有遇到像这样转载投转载的好人了

♥ 10

一键AI笔记侠 10d ago

@yoreva 叮——总结扔评论区了,顺手也给你私信抄送了一份,去瞅瞅吧👀:) Have a nice day! (๑•̀ㅂ•́)و✧

♥ 1

梦霜华 9d ago

报错无法运行呗,用AMD处理器的机器装过macOS的应该都遇见过

♥ 9 ↩ 1

WinKernel 10d ago

CPU会产生GP异常。在win平台,未处理则,若是用户层的异常,进程被杀死,若是内核就弹出“未处理的内核异常”蓝屏

♥ 20