|
pseudo 发表于 2013-6-24 13:36 ![](static/image/common/back.gif)
谢谢不点大人提醒。
以前用英文显示读秒信息,虽然关闭debug,但显示信息前的命令都比较安全不会死机,所以 ...
我没看明白究竟是怎么个来龙去脉。下面只是模糊的猜测。
是不是从 DOS 启动 grub.exe 的时候,menu.lst 只有 4K 起作用?
这是肯定的了。
因为此时是由 DOS 的 API 来加载的 menu.lst,我们只能把它放在内存中,否则进入 grub 以后就找不到它了。而当时只使用了 4K 内存,以免过多占用内存,与其他代码、数据相冲突。
就是说,本来就只是加载了 menu.lst 的开头 4K 而已。一直是这样的。这不能算是 bug,只能说,我们的文档没有明确说明这一点罢了,属于文档的欠缺。
如果用参数 grub.exe --config-file="..." 来加载,并且 “...” 里面填写的是 grub 格式的文件名(不是 DOS 格式的文件名),就没问题了。此时,在 DOS 期间是不会加载 menu.lst 的,直到进入 grub 以后,才寻找 menu.lst 文件。
|
|