scq330 发表于 2021-9-6 15:53
我这个dos用大于3g的内存,好多软件就不能正常运行了,用1g就可以
plusv 发表于 2021-9-6 19:44
PC 即将进入拥有 TB RAM 的时代(DDR 5 512GB 单条),
在那 DOS 恐龙年代,
打死都没想过会有这种可能.
plusv 发表于 2021-9-6 19:44
PC 即将进入拥有 TB RAM 的时代(DDR 5 512GB 单条),
在那 DOS 恐龙年代,
打死都没想过会有这种可能.
blank007 发表于 2021-11-28 18:32
GNU Grub 0.97 再也找不到了。
看了历史记录 ,grub4dos 0.4.4 2007-12-14 及之前的版本才有 upperme ...
blank007 发表于 2021-11-28 18:32
GNU Grub 0.97 再也找不到了。
看了历史记录 ,grub4dos 0.4.4 2007-12-14 及之前的版本才有 upperme ...
不点 发表于 2021-11-28 19:29
为您找到一个早期 grub4dos 的站点,是维护者 bean 建立的。
https://sourceforge.net/projects/grub4do ...
无论是否执行 uppermem 65536 命令,效果...... :死机、或者退出。
不点 发表于 2021-11-28 19:29
为您找到一个早期 grub4dos 的站点,是维护者 bean 建立的。
https://sourceforge.net/projects/grub4do ...
可以顺利进入DOS系统,但也会出现一些问题。比如,容易死机、鼠标失灵。总之会有一些问题。
blank007 发表于 2021-11-28 22:19
再补充一小点,实际过程更复杂: 启动 过程,xorboot(BIOS版)→grub4dos 0.4.6a→grub4dos 0.4.3→uppermem ...
diskgenius 4.3 dos 版,直接死机。pqdi2002 的 dos版,直接死机。
blank007 发表于 2021-11-29 06:43
昨晚是匆忙之间做的有限测试。还没有更改优盘格式。首先,优盘用ultraiso 做成 udb-zip+ v2 模式,分区引导 ...
Force GRUB to assume that only kbytes kilobytes of upper memoryare installed. Any system address range maps are discarded.
Caution: This should be used with great caution, and shouldonly be necessary on some old machines. GRUB's BIOS probe can pick upall ram on all new machines the author has ever heard of. It canalso be used for debugging purposes to lie to an OS.
uppermem 65536 就是欺骗操作系统,即,告诉操作系统说,只有 64M 的可用内存。
blank007 在测试中,再现了 gnu grub 0.97 需要 uppermem 命令这个事实。如下:
神舟优雅x4环境下,启用 qemu x64 (最多分配3G内存,所以分了3G) 测试优盘,情况有所不同。gnu grub 0.95 /0.97
执行:
kernel /boot/grub/memdisk c=173 h=4 s=36 floppy
initrd /boot/msdos/msdos.gz
提示错误,不能加载 msdos.gz 。
执行:
uppermem 65536
kernel /boot/grub/memdisk c=173 h=4 s=36 floppy
initrd /boot/msdos/msdos.gz
正常进入DOS。
而 grub4dos 没有 uppermem 命令,但在同样的条件下执行同样的命令
kernel /boot/grub/memdisk c=173 h=4 s=36 floppy
initrd /boot/msdos/msdos.gz
却不是失败,而是成功。
失败的原因在哪里? blank007 没有详说,但应该是 initrd 命令失败了。
也就是说,这不是 DOS 不能处理大内存的问题,因为 grub4dos 给它 3G 内存,DOS 也认了,没有死机。
也不是 memdisk 不支持大内存的问题,因为 grub4dos 加载 memdisk,而 memdisk 又把 msdos.gz 加载在 3G 内存顶部,也成功了,没死机。
因此,只可能是 grub0.97 的 initrd 在加载 msdos.gz 到内存时失败了。这是 grub 0.97 的 bug,而 grub4dos 早已修复此 bug,所以 grub4dos 的 initrd 命令不存在问题。
以上测试又是在 qemu 中进行的,因此,与具体硬件无关。也就是说,是旧版 grub 0.97 中的 initrd 命令的局限性造成的,很可能是这条命令本身不支持大于 2G 的内存。
在测试所涉及到的范围内,无论 memdisk 还是 DOS,都没出现不适应大内存的问题。
也就是说,所测试的 DOS 映像文件,根本不需要 uppermem 命令。
不点 发表于 2021-11-30 10:48
好的,这个帖子中的测试,是个很好的资料。那么我就根据实验数据,说说相关的问题,并给出自己的分析。
...
Snap00000.jpg (49.64 KB, 下载次数: 134)
不点 发表于 2021-11-30 10:48
好的,这个帖子中的测试,是个很好的资料。那么我就根据实验数据,说说相关的问题,并给出自己的分析。
...
欢迎光临 无忧启动论坛 (http://bbs.c3.wuyou.net/) | Powered by Discuz! X3.3 |