无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 6360|回复: 18
打印 上一主题 下一主题

[已解决] 用grub4dos如何在DOS下同时虚拟软盘和光盘

[复制链接]
跳转到指定楼层
1#
发表于 2012-1-13 22:08:51 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
用grub4dos如何在DOS下同时虚拟软盘和光盘

我想在一台无软驱、无光驱(可使用U盘)的老机上,将其第一主分区分为FAT16分区来安装win95,在激活的第二主分区安装了grub4dos及相应的映像文件,menu.lst如下:
title windows 95 (用DOS映像启动,安装系统)
pause --wait=0 正在载入映像文件,请等待....
map --mem-max=512m
map --mem (hd0,1)/msdos622.ima (fd0)
map --mem (hd0,1)/win95.iso (0xFF)
map --hook
rootnoverify (fd0)
chainloader +1


当用该菜单启动后,找到了dos6.22的系统a:盘、空的c:盘,及虚拟的光驱D:盘,当用dir命令列表D:盘的文件,无法列出。

本来想用D:盘的win95文件来安装系统的,却是找到了D:盘但不能读内容。
我该如何进行,敬请各位网友指点,谢谢!


[ 本帖最后由 qj_tzy 于 2012-1-18 19:14 编辑 ]
2#
发表于 2012-1-14 09:42:33 | 只看该作者
win95 不支持光盘启动,所以,你用 DOS 启动盘是对的。

win95 已经开始使用 DOS 7.0 了,所以,应该换用 Win95 所带的 DOS 7,替换掉 dos6.22.

在 DOS 的 config.sys 中,应该加载 eltorito.sys 才能驱动由 grub4dos 虚拟出来的 int13 光盘。

eltorito.sys 现在已经是开源软件,由 syslinux 的开发者来维护。

eltorito.sys 可以在 DOS 下驱动光盘,但进入 Win95 的保护模式以后,究竟能否访问 eltorito.sys 的光盘,还不知道,应该是失败的。

请参照 grub4dos 的 readme 中关于 eltorito.sys 的用法说明的章节。
回复

使用道具 举报

3#
发表于 2012-1-14 13:50:58 | 只看该作者
win95是可以光盘安装的,我以前曾经有过d版的安装光盘,不过那应该是俗称为win97的第2版,这个版本支持fat32、集成ie,而且是光盘启动安装的(最初的老版,不支持fat32,没有ie,可能只能软盘安装)。楼主没必要用win95的,要玩的话就在virtual pc里安装,因为你即使能安装,你在win95里也用不了你的u盘(没有这个驱动,即使有驱动也装不了,我以前试验过的),即便在win98里能够安装u盘驱动,对于大容量的u盘使用也会出问题(可能因为主板bios对可移动设备有容量限制吧,小容量的就正常)。
楼主真要安装的话,就把安装文件放在fat16格式的c盘吧,说实话,我不认为在真实操作系统内,grub4dos对内存的限定有效,而且它模拟出来的光驱在进入操作系统后也无效,不过win95因dos为基础,所以你在config.sys和autoexec. bat里加载有dos下的虚拟光驱程序,那在win95里应该能使用这个,如果不行你试试禁止ide控制器的32位保护模式——十几年前的事情,不是太清楚,你自己试试就知道了。

[ 本帖最后由 mahuniu 于 2012-1-14 13:55 编辑 ]
回复

使用道具 举报

4#
 楼主| 发表于 2012-1-15 15:59:54 | 只看该作者

回复 #2 不点 、#3mahuniu 的帖子

昨天有事未能上网,今天,看到两位的热心指点,非常高兴。

我还是赶紧试试吧,不懂的再请教!
回复

使用道具 举报

5#
 楼主| 发表于 2012-1-15 22:08:18 | 只看该作者

回复 #3 mahuniu 的帖子

按上法安装完成,但启动时出现内存错误。是否是像您说的那样,是grub4dos对内存的限定不一定有效造成的。我是在内存为4G的电脑上测试的。
回复

使用道具 举报

6#
发表于 2012-1-16 13:56:31 | 只看该作者
楼主不要折腾了,那玩意只能在虚拟机里玩的,即使你能安装win95,你也找不到硬件驱动的,例如显示卡的驱动,那些for win9x的驱动可用于win98/me却不能用于win95,因为win95不支持双显示器(win98以后的显示器设置都有1、2两个显示器选项),你的显示卡总不可能是90年代的古董,所以显示卡和usb的驱动,你肯定是找不到的
回复

使用道具 举报

7#
 楼主| 发表于 2012-1-17 14:56:21 | 只看该作者

回复 #6 mahuniu 的帖子

只是想试试在实机上能否安装,没管能否驱动某些硬件。既然已试了不能安装,那就不想再试了。
回复

使用道具 举报

8#
发表于 2012-1-17 20:38:55 | 只看该作者
grub4dos 是遵守 int 15 内存规范的。win98 也支持 int15 规范。win95 应该也是支持的。这里指的是 int15/e820 规范。

在那个时代,int15 是个重要的规范,因为那个时代,DOS 很重要。

至于说 win95 运行失败,我觉得与 grub4dos 的内存限制是否有效无关。很可能是别的原因,比如某个硬件不能驱动,从而失败。
回复

使用道具 举报

9#
 楼主| 发表于 2012-1-17 22:25:44 | 只看该作者

回复 #8 不点 的帖子

以前,我在安装win98时,也出现类似的内存错误。当我得到chenall的指点,加上map --mem-max=2g的内存限定后,在实机分区上运行win98成功,后来,将该系统转为win98.ima映像包后,也运行成功。

当我安装完win95但重启时,加上map --mem-max=512m的内存限定,后又改为map --mem-max=64m的内存限定,均出现内存错误而退出。我就猜是否是该内存限定方法对win95无效。

经您的指点,我才知道是我猜错了,谢谢您的热心指点。

但就是不知问题出在何处。
回复

使用道具 举报

10#
发表于 2012-1-17 22:49:14 | 只看该作者
前面 mahuniu 已经说过了,像如下仿真

map --mem (hd0,1)/win95.iso (0xFF)

都是在实模式下有效,而在保护模式无效的。这也可能是失败的原因。


至于说显示出内存不够的消息,那可能性有很多。当然也不排除 win95 与 int15/e820 兼容不好的可能性。

如果你想找出原因,你可以把这个步骤搬到虚拟机下来观察,看看究竟虚拟机可否成功。

如果虚拟机也无法成功,那就怀疑是 win95 的 bug,或者说,win95 与 grub4dos 存在兼容性问题。

你可以考虑把光盘内容复制到硬盘再从硬盘安装,如果你确实需要 win95 的话。

既然在大多数情况下 win95 已经被 win98 取代,其实也就不用费劲了。
回复

使用道具 举报

11#
 楼主| 发表于 2012-1-18 10:50:29 | 只看该作者

回复 #10 不点 的帖子

经在virtual pc 2004虚拟机中测试,win95在安装时,设置内存为512M时出错,设置内存为256M时启动正常;安装完成后,设置内存为946M时启动正常,设置内存为948M即出现内存错误。在virtual pc 2007虚拟机中安装失败。
回复

使用道具 举报

12#
发表于 2012-1-18 11:35:24 | 只看该作者
vpc2007里面的设置,有个硬件虚拟化,如果你打开它,那么win95就不正常了,关闭它就ok了
回复

使用道具 举报

13#
 楼主| 发表于 2012-1-18 12:48:47 | 只看该作者

回复 #12 mahuniu 的帖子

经测试,确实如此。谢谢指点!
回复

使用道具 举报

14#
发表于 2012-1-19 21:41:08 | 只看该作者
你已经证明 win95 可以安装成功。接下来,你就可以证明,win95 的 ISO 是否可以经由 grub4dos 仿真启动。应该会失败的。那就证明了,保护模式下的 win95 无法适应 grub4dos 的仿真。
回复

使用道具 举报

15#
 楼主| 发表于 2012-1-20 20:10:17 | 只看该作者

回复 #14 不点 的帖子

我已经测试,在win98保护模式下,可以见到grub4dos仿真的盘符,但却不能列表其内容。
回复

使用道具 举报

16#
发表于 2012-1-20 20:35:07 | 只看该作者
我印象中,虚拟的内存软盘是可以被 win98 识别的。而虚拟的光盘则不行。不知道你是说的哪种情况。

当然也有可能虚拟软盘也不行了。因为 win98 保护模式下的行为很不容易预料。人们似乎已经淡忘了 win98,如果 grub4dos 新版带来了问题,也没人报告 bug。
回复

使用道具 举报

17#
 楼主| 发表于 2012-1-21 11:05:42 | 只看该作者

回复 #16 不点 的帖子

怪我没说清楚,经我测试,win98 保护模式下,grub4dos仿真的软盘是可被识别的,而仿真的光盘是无效的。

若grub4dos的新版,仿真的光盘在win9x保护模式下也是有效的,那当然是最好的,不知是否可实现。

[ 本帖最后由 qj_tzy 于 2012-1-21 11:09 编辑 ]
回复

使用道具 举报

18#
发表于 2012-1-22 16:47:56 | 只看该作者
光盘自然是不行的。除非有人像 firadisk 那样为 win98 写一个虚拟 ISO 的驱动才行。

原因:win98 支持 int13 的磁盘访问(扇区大小 512 字节),不支持 int13 的光盘访问(扇区大小 2048 字节)。

eltorito.sys 不被微软支持(或者理解为,不被微软承认)。所以,保护模式之下,不再为 eltorito.sys 所建立的 int13 光驱接口提供支持。

但假如 firadisk 能够为 win98 编译(即,支持 win98),则这个问题很容易解决。
回复

使用道具 举报

19#
 楼主| 发表于 2012-1-23 14:29:25 | 只看该作者

回复 #18 不点 的帖子

很期待这个时候,能早日到来。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-12-5 09:44

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表