- 积分
- 552
- 最后登录
- 2024-4-26
- 精华
- 0
- 阅读权限
- 40
- 主题
- 67
- UID
- 60921
- 帖子
- 1365
- PB币
- 2672
- 威望
- 1
- 贡献
- 0
- 技术
- 4
- 活跃
- 1819
- UID
- 60921
- 帖子
- 1365
- PB币
- 2672
- 贡献
- 0
- 技术
- 4
- 活跃
- 1819
|
事情发生在今天,公司里有台电脑蓝屏了。
公司台式机大部分都是用LTSC,只有那台好喝的机器用的是19h1(18362)。
这让我非常好奇,分析了蓝屏发生位置,发现19h1和之后的系统内核,相比较LTSC(17763)多了一个对进程字符集的检查机制。在很多驱动中,很多涉及到字符串转换/比较之类的API,都会涉及到这个检查机制。
最大的问题是很多字符串操作函数,在微软文档里虽然标注着要在PASSIVE_LEVEL运行,但因为很多程序员对非分页内存的滥用,导致这些字符串操作函数在LTSC和之前的系统里跑在高中断下都是安全的。
直致Win10引入这个机制。,想到一群程序员对着自己的蓝屏百思不得其解,不停才检查为什么会蓝屏的样子,忍不住,笑出声来。
照理,应该在19h1之后,应该外网会多出一波蓝屏来,包括QQ那一波带驱动的东西。
群里大佬们见多识广,来说说是不是啊。
|
|