![Windows 7 BSoD + 插入和拔出闪存驱动器时重新启动](https://linux22.com/image/1350233/Windows%207%20BSoD%20%2B%20%E6%8F%92%E5%85%A5%E5%92%8C%E6%8B%94%E5%87%BA%E9%97%AA%E5%AD%98%E9%A9%B1%E5%8A%A8%E5%99%A8%E6%97%B6%E9%87%8D%E6%96%B0%E5%90%AF%E5%8A%A8.png)
我有一个 Gumstix Overo Fire COM,我已为它加载了基本的 Linux 内核和大容量存储驱动程序。然后,该设备连接到主机,在主机上,它显示为一个普通的 USB 存储设备。然后,它被设置为g_file_storage
每 5 秒重复插入和移除模块,以模拟重复手动将设备插入主机。虽然这听起来很奇怪,但这是完全必要的,因为我想从驱动程序收集大量 USB 消息。
这种重复的“插入”和“移除”设备在 Mac 和 Linux 主机上工作正常,但在大多数 Windows 机器上,我在插入和移除大约 10 次后就会出现 BSoD。最初,我以为可能是设备的“移除策略”导致了问题,正如所述这里。但是,一些实验表明,此设置没有效果;即使删除策略针对快速删除进行了优化,BSoD 仍然会出现。
此外,在一些我拥有管理员控制权且所有设置都为出厂/默认设置的 Windows 机器上,我没有遇到 BSoD 或任何错误。该问题主要发生在设置为具有更高安全性和受限用户设置的公共机器上。因此,我相信是某些安全设置导致了问题,但我不太了解具体是什么。
什么样的设置可能导致这个问题?
编辑:这是有关 BSoD 的“技术信息”:
*** STOP: 0x0000007E (0xFFFFFFFFC0000005, 0xFFFFF88001612652, 0xFFFFF88002FB9308, 0xFFFFF88002FB8B60)
*** FarSpace.sys - Address FFFFF88001612652 base at FFFFF88001600000, DateStamp 50046f1f
据我所知,这Farspace.sys
是深度冻结软件。
答案1
7E 停止错误是“SYSTEM_THREAD_EXCEPTION_NOT_HANDLED“:
此错误检查表明系统线程生成了错误处理程序未捕获的异常。
我很确定 FarSpace.sys 是 Faronics 软件的一部分,他们制造了深度冻结。由于您说它们是公共机器,我猜有人用 Deep Freeze 将它们锁定了,而这一事实导致它们无法很好地适应您异常的 USB 插入/移除。
如果是这样的话,那么首先我会测试一下它们在“解冻”时的行为是否有任何不同,如果是这样的话,我就会采取Faronics 的支持来自一些关于在 PC“冻结”时执行您想做的事情的指导。
此外,您可能需要对所使用的任何代码进行四次检查,以确保在完成后正确清理其线程。