bfgxp 发表于 2015-9-16 17:49 不过,以上说的是个大概情况。实际情况可能比较复杂多样。也不能完全排除 grub4dos 存在 bug 的可能性。 你最好能够自己调试。如果你实在不能做调试,那就只能等待别人来帮你调试。 有鉴于微软和 Intel、AMD、各 OEM 厂家伙同封杀 BIOS,所以,今后恐怕很难找到愿意替你调试 BIOS 的人了。BIOS 凑合着能用一天是一天,不要太过于追求完美了。如果是在 5 年前,我就愿意调试这个问题。但现在我已经不想做这事了。 如果微软继续强大,那么大家都被迫转向 EFI。如果微软逐渐走弱,那么大家都会转向 Android 等其他开放或半开放系统。这不是某个人说了算的,是要看今后大众的集体取向的。 |
不点 发表于 2015-9-16 16:35 明白了。那就是bios的问题了。 |
本帖最后由 不点 于 2015-9-16 16:36 编辑 graphicsmode 只是调用 BIOS 来进行工作,它不管、也不知道究竟有多少个显示器。 假如它调用的 BIOS 返回失败信息,那就是失败。 存在这样的可能性:BIOS 实际上执行成功了,但它返回了失败的信号给调用者,让调用者认为调用是失败的。 这有可能是 BIOS 的 bug,也有可能是攻击。总之,这需要调试,才能确定究竟是怎样一个状况。 grub4dos 本身不存在考虑几个显示器、几个硬盘、几个 CPU 的问题。grub4dos 只是调用 BIOS。而 BIOS 给出什么信息,grub4dos 就相信是什么信息。如果 BIOS 有 bug,或者故意制造 bug,那么 grub4dos 也没办法。幸运的时候,或许有个 workaround 的变通解决办法;不幸运的话,毫无对策。 |
不点 发表于 2015-9-16 16:02 这个问题出现在双显示器接入的情况下,单显示器接入是可以的。 而且也不是所有双显示器接入都有这个情况,刚刚也说了,我之前独立显卡HD4850双接入就没有这样的问题。 所以可能是bios的bug,也许是graphicsmode没有考虑两个及两个以上显示器接入的情况。 我自己到是没有能力调试,目前我只能把我想到的情况说明白。 要是chenall 或 yaya 有空的话可以帮忙看看。 |
你的 vbeprobe 能够显示出很多 32-bit 颜色的 direct color,说明是支持的。 你可以让 chenall 或 yaya 帮你找出 graphicsmode -1 产生失败的原因(你也可以自己调试)。我猜是 graphicsmode 在执行 current_term->startup(); 的时候产生失败,其失败的原因是相应的 BIOS 调用产生失败。这可能是 BIOS 的 bug,也可能是 OEM 制造商对 grub4dos 进行的攻击。 |
又把我想到的试了一下,这台主机是I3的处理器,核显 Intel HD Graphics 2500 我接了两个显示器,一个是DVI接口,一个是vga接口,拔掉任何一个显示器的线,vbe模式都能正常使用。 之前我用的另一台主机独显HD4850也接两个显示器,vbe没有问题。 |
感谢分享!VBE失败神马的还真没有遇到过。真是林子大了是什么鸟都有。 |
Powered by Discuz! X3.3
© 2001-2017 Comsenz Inc.