|
我再补充一段。
grub4dos 的开发者很重视 “互操作性”。在可能的情况下,grub4dos 尽力支持别的启动软件,除非那个启动软件的开发者千方百计设卡,不让用户能够经由 grub4dos 来启动他的软件。反过来也一样,grub4dos 的开发者为别的软件能够方便地启动 grub4dos 架设了桥梁。让用户能够直接用加载 ntldr 的方式来加载 grldr,这就是一个桥梁。别的软件的开发者(或用户)只要懂得如何加载 ntldr,那就懂得如何加载 grldr 了,完全不存在 “需要重新学习新知识” 的问题。另一座桥梁是 grub.exe,这是 linux 的 kernel 格式。任何能够加载 linux kernel 的启动软件,都可以加载 grub.exe,同样也是 “完全不需要学习新知识”。
就是说,grub4dos 作为第一启动,能够加载别的启动软件(那么被加载者也就是作为第二启动了)。这种情况是很安全的,因为 grub4dos 是 “纯绿色” 的软件,整个运行过程,不会对内存数据结构造成任何影响。别的软件在被 grub4dos 加载时,其内存和 CPU 的状态就跟主板通电自检之后的状态是一样的。只要这个软件自己没有 bug,那么 grub4dos 就不会给它增添一个 bug。例外情况有没有呢?当然有啊!否则,grub4dos 不就称王称霸了吗?例外情况,就是 grub4dos 被主板封杀了。这种封杀非常多!但大多数封杀,都已经被开发者巧妙躲过。新的封杀,如果有的话,是无法躲过了,因为开发者已经不把 BIOS 作为重点了。那就是说,随便封杀吧,反正你不封杀,也是个死,封杀,也是个死,都一样。BIOS 整体来说,总归是个死,总要被 EFI 取代。grub4dos 的被封杀,从用户的角度来看,可以认为 grub4dos “不可靠”。被封杀,当然属于 “不可靠” 的一个重要方面。也就是说,用户当然可以 “不信任” grub4dos。用户有这种自由。当 grub4dos “失效” 时,在另外一个 U 盘上,用户可以选择别的启动软件啊,对不对?
刚才说的是 grub4dos 作为第一启动。现在说说,grub4dos 作为第二启动。
grub4dos 确实可以作为第二启动。但是,你得保证,你的第一启动确实优秀。你的第一启动的责任就大了。相信你不会选择一个很烂的软件来作为第一启动,因为你不是傻子。但是,你有可能选择了一个不那么优秀的软件作为第一启动。“不那么优秀” 是不行的。你都把它放在 “第一启动” 的位置上了,它还敢 “不那么优秀” 吗?根本不敢!你的第一启动,就得为后续的任何启动过程 “负责”,包括为后续的 grub4dos 的启动负责,不可以给 grub4dos 带来莫名其妙的新的 bug。这正如 grub4dos 作为第一启动时,也必须为后续的整个启动过程负责一样:grub4dos 不可以给后续的 “第二启动” 软件带来任何一个新的 bug。【我们的想法要符合逻辑,要懂得换位思考,尽量做到公平。】
如果 “第一启动” 不小心,污染了 CPU 状态以及内存关键数据结构,那就会给 “第二启动” 带来麻烦。开发者 “自负” 是不行的,“自信” 也不要太过分。因为,假如没有封杀,你完全可以自负、自信。在有封杀的情况下,你哪来的自信?嗯??封杀者没有针对你?封杀只针对 grub4dos?你的想法太过于简单了。马路上有人挖了个深坑,任何车辆都有可能陷进去。grub4dos 早都吃亏了,已经知道必须绕道走了。而你,完全不了解这些情况,你不中枪谁中枪?你以为那还是一条可以正常通行的马路啊?这跟你的程序代码 “正确与否” 没有关系。你越是 “自信”、越是 “自负”,你出问题的可能性就越是大。如果我要狂妄一点,我可以这么说:“我用贞操担保,你开发启动软件是不行的,尤其是不要开发 BIOS 下的启动软件。”但是,做人要低调,不可以如此狂妄,如此教训别人。提出自己的看法,让别人参考,让别人自己决定取舍,这是合适的。
|
|