最新全球爆发流行的微软蓝屏 BSoD 的最新病理解剖来了!
国外的热心网友解析了这次导致全球很多民航企业停飞的微软蓝屏的病理了,它是一个空指针,是 C++语言里面的 NULL 空指针,而大家都知道,C++语言本身就是内存不安全的编程语言,C++语言让程序员必须自己负责内存是不是非法访问或者泄露或者各种奇葩的故障。
Windows 操作系统每次蓝屏的时候,都会在 C 盘系统盘里的某一个路径下面,生成创建一个 BSoD 转存故障诊断文件,有经验的码农,就可以从微软官方网站下载一个官方的 BSoD 解析小工具,虽然不能直接治愈 BSoD 的病根,但是能帮你解析 BSoD 故障的病理,这次流行全球爆发的蓝屏 BSoD 的病理如下图所示:
红色箭头的位置,就是被 crowdstrike 升级崩掉的 Windows 系统在启动的时候试图访问一个内存地址,而这个地址并不是正确的地址,程序员本意是要访问一个内存地址执行其所存储的接下来的引导程序,但是却访问了错误的地址,在错误的地址上面,并没有什么 CPU 可以执行的命令,然后就,BSoD 了,蓝屏了,BSoD 就是英文蓝屏的缩写:Blue Screen of Death,是 Windows 操作系统自古以来就有的一种故障报告的形式,对,它也就仅仅是故障报告的一种形式,它是故障,不是猝死,是能够救回的,当然,在救回之前,是需要很费劲的解析蓝屏的故障,Windows 系统的蓝屏只是一种很严重的症状,而病因,却可能是很多种,各种软件 bug、驱动 bug、windows 系统的 bug、都可能导致 BSoD,甚至你自己拿 C++写一个程序一不小心也可能导致 Windows 系统蓝屏。
本来这个系列是 Linux MeMe 梗图系列,每一期就一张幽默漫画,但是这一期 Linux 梗图,因为梗图实在是太多,所以就从单纯的发图,扩展为一篇图文了,就是世界各地的 Linuxer 们看热闹不嫌事大的梗图大全集:
微软公司总是能出其不意攻其不备的让很多民航企业的飞机在机场趴窝飞不起来,上一次是中东世界的很多航空爱好者借助微软飞行模拟游戏自学成为中东世界最优秀的一匹飞行员,然后一顿乱飞,使得美国在那天停飞了美国境内所有的民航航班和全世界所有飞往美国的航班,而这次,微软又借助于这个 BSoD 的全球爆发,瘫痪了欧美很多民航企业还没有起飞的飞机,原因就是这次蓝屏起源于其安全软件 CrowdStrike 自动更新无意中引入的的这个内存错误的 bug,被自动化的推送到很多欧美大企业的正版 Windows 服务器操作系统,正版软件的受害者往往就是这些大企业大客户的,所以各个航空企业都趴窝了,连 Space X 的大老板马斯克都自己制作了梗图假装亲自烧了自己的服务器机房:
BSoD 总是在你意想不到的地方出现,甚至是家用冰箱也能蓝了…………
对于他们这些正版软件的受害者,在微软修复这次 BSoD 之前,正在度日如年
这次 CrowdStrike 的故障也暴露了很大的安全隐患,让隐藏在世界各地的黑客可以悄悄的研究一下如何黑掉 Windows 系统
之前我拿自己的 Windows 系统的电脑做自己的 vscode 写作服务器开着,然后等我要访问的时候,发现它自动重启关了这服务,真是气死自己了……
最后,如果你还没有蓝屏,那么可以这样操作来暂时避免蓝屏: