无忧启动论坛

 找回密码
 注册
搜索

grub4dos安装原版xp镜像时出现的问题

查看数: 27609 | 评论数: 171 | 收藏 1
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2016-9-2 15:23

正文摘要:

我是从硬盘启动grub4dos,菜单如下: pxe detect configfile default 0 timeout 5 terminal console find --set-root /grub4dos/grldr font /grub4dos/unifont.hex(3500汉字).GZ graphicsmode -1 640:480 ...

回复

求道者 发表于 2016-11-27 22:09:27
不点 发表于 2016-9-14 21:22
没错,很有意义。等着你的消息。

此刻没事了,顺便瞎扯点别的。我认为 XP 差不多是微软最后的辉煌。 ...

不点大师啊..............
非说是Win7的话
其实不是.........
winvista这个东西还记得不?
Win7就是从这个脱胎的........
虽说是无利不起早
但是你更新不能只是改个版本号嘛
特别微软还是一个软件厂
看看winvista为我们带了来什么吧............
真正的64位支持(XP有64位吗?)
现代系统的权限管理UAC(linux那套权限系统可谓很好用 特别是对于商业用户 比如虚拟化 多人使用什么的 随说WIN的UAC没太多厂子遵循 日常软件也要用管理员权限 和linux没得比)
DX10 新的图形底层(这个算是附带)
但是为什么会如此改动大 我猜是上层一股脑决定的“要更新就更新把大的”
也许是历史的必然吧 那时候还没有智能机 正是电脑发展的鼎盛 或许这种膨胀的市场 催生了这种膨胀的更新
Wintel联盟想更新硬件骗钱也许是后话
然后众所周知的当时貌似512MRAM算是顶配 这鬼系统要2GB才能勉强跑
改动的东西太多了 BUG多的可怕 这几乎导致了不可用
然后这东西不是失败了吗................
终归科技以改名为本 花了这么大的力气搞出的东西不能白费吧 于是就改名成了Win7(winvista好像更新几波之后稳定性和Win7差不多了)
然后Win10是Win8的UI返祖吧
至于硬件厂封杀旧OS 我更倾向于是标准的混乱和程序员也就那样(G+上看了个段子 某个玩汇编的说自己的某个同学程序写的稀烂 甚至写出的东西几次几次的不能通过编译 这人去哪个大主板厂去当BIOS开发的主程了 那位发帖嘲讽的大佬我看他在一次更新自用的主板BIOS砖了之后 手动修复了有问题的BIOS然后用编程器刷了BIOS 上次看见他在用单片机做真空管电波钟还是GPS种的控制电路......我觉得他的话有很高的可信度)
毕竟微软是美国公司 是个现代企业 UEFI上可以用Secure Boot强制开启锁死其他系统的启动可能 但是这么做就会面临又一次反垄断调查.............
所以即使是微软自家的Surface Pro也可以关闭Secure Boot
但是即使如此 所有的UEFI固件里还是都集成了微软的认证密钥 有些甚至默认开了Secure Boot
我虽然不太懂外国的法律
在这里微软要死个妈
james168 发表于 2016-11-27 16:05:18
感谢yjqd的测试。之前我也弄不清楚,老是不行。 现在试下这些方法看看。
原来 WinImage 真有bug,要用别的方法啦。
不点 发表于 2016-10-19 17:41:59
yjqd 发表于 2016-10-19 13:28
一个小发现:
grub4dos启动老毛桃xpe
菜单如下:

这个是可以理解的。我是说,按照我的理解力,是可以理解的。理解如下:

winvblock 或 firadisk 都是 Windows 软件,它们可以按照 BIOS 顺序来安排盘符,也可以不按照 BIOS 顺序来安排盘符。它们完全按照各自的开发者的设计来安排盘符。

winvblock 的开发者可能是根据 map 的先后顺序来安排盘符的。假如 firadisk 与 winvblock 的表现有所不同的话,那也属于正常现象。

yjqd 发表于 2016-10-19 13:28:17
本帖最后由 yjqd 于 2016-10-19 13:33 编辑
不点 发表于 2016-10-6 17:28
嗯,有某种神秘感。先前都已经证实了,fd1 的存在与否,影响安装过程。看来 fd1 确实有某种秘密。

如 ...


一个小发现:
grub4dos启动老毛桃xpe
菜单如下:
title 启动 winxpe
find --set-root /grub4dos/winxp.iso
map --mem (hd0,5)/k.img (fd0)        k.img为空盘
map --mem (hd0,5)/2.img (fd1)       2.img里面只有winvblock驱动

map /grub4dos/winxp.iso (0xff)
map --hook
chainloader (0xff)

启动进行xpe后,发有一个3.5英寸软盘A,里面有winvblock驱动,还有一个可移动磁盘H,里面为空,估计是老毛桃xpe自身就生成了一个B盘,所以grub4dos map的软盘在xpe中不是B而是H
格式化A盘或H盘都提示windows不能格式化这种类型的磁盘


按理说是 k.img被map成fd0,也就是A盘,k.img为空盘,A盘也应为空啊,但里面却有winvblock驱动,而winvblock驱动是放在2.img里面的

修改菜单如下:
title 启动 winxpe
find --set-root /grub4dos/winxp.iso
map --mem (hd0,5)/2.img (fd1)      2.img里面只有winvblock驱动
map --mem (hd0,5)/k.img (fd0)       k.img为空盘

map /grub4dos/winxp.iso (0xff)
map --hook
chainloader (0xff)

启动进行xpe后,发有一个3.5英寸软盘A,里面为空,还有一个可移动磁盘H,里面有winvblock驱动,格式化A盘或H盘都提示windows不能格式化这种类型的磁盘

这次结果就和常理相符, k.img被map成fd0,也就是A盘,k.img为空盘,A盘里面确实为空,H里面有winvblock驱动

奇怪,map时(fd0)和 (fd1)  时交换了下顺序结果就不同了

点评

这个是可以理解的。我是说,按照我的理解力,是可以理解的。理解如下: winvblock 或 firadisk 都是 Windows 软件,它们可以按照 BIOS 顺序来安排盘符,也可以不按照 BIOS 顺序来安排盘符。它们完全按照各自的开  详情 回复 发表于 2016-10-19 17:41
不点 发表于 2016-10-6 17:28:30
yjqd 发表于 2016-10-6 17:02
今天把镜像映射成 (fd1)
chainloader  (fd1)/i386/setupldr.bin
rootnoverify  (fd1)

嗯,有某种神秘感。先前都已经证实了,fd1 的存在与否,影响安装过程。看来 fd1 确实有某种秘密。

如果微软不彻底封杀 XP 的话,我还真想永远用下去。而且,有朝一日我还可能复古,用一用古老的 Win98。

点评

一个小发现: grub4dos启动老毛桃xpe 菜单如下: title 启动 winxpe find --set-root /grub4dos/winxp.iso map --mem (hd0,5)/k.img (fd0) k.img为空盘 map --mem (hd0,5)/2.img (fd1) 2.img里面  详情 回复 发表于 2016-10-19 13:28
yjqd 发表于 2016-10-6 17:02:12
不点 发表于 2016-9-15 09:40
你的话又让我有了启发。我们用 DOS 来安装,确实成功了。

那么如果不用 DOS,直接像光盘那样启动 setu ...

今天把镜像映射成 (fd1)
chainloader  (fd1)/i386/setupldr.bin
rootnoverify  (fd1)

居然启动了setupldr.bin(之前测试是映射成 fd0,加载setupldr.bin后直接重启),但马上提示找不到txtsetup.sif,这样看来是setupldr.bin中读取txtsetup.sif路径的问题了

这和直接启动硬盘上的setupldr.bin一样,也是提示找不到txtsetup.sif
chainloader  (hd0,2)/e/i386/setupldr.bin
----------------------------------------------------------------
xp安装难道对映射成 (fd1)也就是B盘有特殊的兴趣?

点评

嗯,有某种神秘感。先前都已经证实了,fd1 的存在与否,影响安装过程。看来 fd1 确实有某种秘密。 如果微软不彻底封杀 XP 的话,我还真想永远用下去。而且,有朝一日我还可能复古,用一用古老的 Win98。  详情 回复 发表于 2016-10-6 17:28
yjqd 发表于 2016-9-16 23:04:49
不点 发表于 2016-9-16 22:41
补充一点。揭开了先前菜单中出现双软盘的神秘面纱。虽然精确的原因未找到,但也总算看到了一部分内幕。成 ...

我没测试了

我刚才在我已安装好的xp系统中,查看了下在xp安装时加载的amd磁盘驱动,发现ahcix86.sys存在于windows\oemdir中
不点 发表于 2016-9-16 22:41:44
yjqd 发表于 2016-9-16 22:28
谢谢不点花时间在非grub4dos问题进行分析,我由此也获得了些关于grub4dos安装xp的原理,还知道了xp集成到 ...

补充一点。揭开了先前菜单中出现双软盘的神秘面纱。虽然精确的原因未找到,但也总算看到了一部分内幕。成果也算是令人满意的。

点评

我没测试了 我刚才在我已安装好的xp系统中,查看了下在xp安装时加载的amd磁盘驱动,发现ahcix86.sys存在于windows\oemdir中  详情 回复 发表于 2016-9-16 23:04
yjqd 发表于 2016-9-16 22:28:22
不点 发表于 2016-9-16 21:23
这个过程,调整一下:

在 DOS 下,先用

谢谢不点花时间在非grub4dos问题进行分析,我由此也获得了些关于grub4dos安装xp的原理,还知道了xp集成到软盘也可安装,同时谢谢其他各位朋友

在此过程中,由于我的理解和表达能力有限,请谅解

另外,更正一下:
前面我说的:

安装程序第二阶段在复制文件时复制了软盘的内容,并且是先复制的,后来发现是我看错了,实际上复制时有个文件很像firadisk,那时我的软盘也有这个文件,我以为是firadisk,于是我推测软盘里的文件都被复制了的,由于当时有点兴奋,所以回复了你

对此很抱歉!

点评

补充一点。揭开了先前菜单中出现双软盘的神秘面纱。虽然精确的原因未找到,但也总算看到了一部分内幕。成果也算是令人满意的。  详情 回复 发表于 2016-9-16 22:41
不点 发表于 2016-9-16 21:23:39
本帖最后由 不点 于 2016-9-16 21:38 编辑
yjqd 发表于 2016-9-16 17:54
xp的全部文件复制到文件夹T(也就是T里不仅有I386文件夹),然后把T拷贝到J盘
软盘只有dos,磁盘驱动


这个过程,调整一下:

在 DOS 下,先用
c: 【回车】
进入 C 盘,再用
cd    \T\I386【回车】
进入 I386 目录(我先前提到过,只是你没太注意)。
最后再敲入
winnt【回车】
开始安装。此时不要修改路径。默认的路径会是 c:\T\i386, 这是对的,不要更改。不管默认的路径是啥,都是对的。默认的路径,就是当前工作路径。也就是当前正在运行的 winnt.exe 所在的位置。

如果有时间了,就按上述步骤测试一次。如果没时间、没精力,也就可以不做了。

如果不做了,我就认为与你前面的结果一样,安装是失败的。

总之,测试也很多了,大家可能都精疲力尽了。也该歇歇了。

得到了很多有用的结论,算是成果吧。

1、必须有本地硬盘驱动才行。否则不能成功安装。
2、采用双软盘,可以在没有 winvblock/firadisk 的情况下成功安装。
3、采用单软盘,则离不开 winvblock/firadisk,没有它不行。

造成差别的原因猜不透,因为测试过程不精确。有些细微的地方可能影响测试结果,也影响下结论。

不过,根据现有的测试,粗略作个猜测:

单软盘上的驱动文件可能不会被安装程序复制到硬盘上,因而在保护模式下仍需要查找软盘,这可能是单软盘(无winvblock/firadisk)安装失败的原因。

双软盘的情况,可能是双软盘以某种方式 “暗示” 或 “刺激” 了安装程序,让安装程序把两张软盘上的驱动文件都拷贝到硬盘上了,于是安装程序在保护模式下不需要访问软盘了,因此,同样是在没有 winvblock/firadisk 的情况下,双软盘却可以安装成功。

谢谢 yjqd 辛苦做了如此多的测试。也谢谢 pseudo 等其他几位高手的帮助。


点评

谢谢不点花时间在非grub4dos问题进行分析,我由此也获得了些关于grub4dos安装xp的原理,还知道了xp集成到软盘也可安装,同时谢谢其他各位朋友 在此过程中,由于我的理解和表达能力有限,请谅解 另外,更正一下  详情 回复 发表于 2016-9-16 22:28
yjqd 发表于 2016-9-16 18:50:09
不点 发表于 2016-9-16 17:22
做过了吗?结果是啥呢?注意这次的试验是禁止使用 winvblock/firadisk 哟,全程都不允许使用 winvblock/f ...

第二次测试本想直接从第二阶段开始,只是增加一个软盘
但还是从头开始,把J盘的文件删除重新拷贝

第一次菜单:

map --mem  /dwinvblock.img (fd0)        只有dos
map --mem /winvblock.img (fd1)           只有磁盘驱动
map --hook
rootnoverify  (fd0)
chainloader (fd0)/io.sys

第一次的过程就没写出来了,和上次一样


第二次菜单:
map --mem /winvblock.img (fd0)   只有dos
map --mem /winvblock.img (fd1)   只有磁盘驱动
map --hook
chainloader (hd0,2)/ntldr

全程安装成功,和猜想的一样
---------------------------------------------------------------------
另外,上次测试没成功,卡在复制文件上,提示要插入盘,无法复制,但实际上在出现建立要复制的文件列表到提示要插入盘的过程中是复制了windows文件夹和一个PAGEFILE.SYS到C盘,windows文件夹里面有很多文件,这是我进PE查看了的

现在就是弄不明白,不管是从硬盘还是软盘安装,两个盘能成功,一个软盘不能成功
yjqd 发表于 2016-9-16 17:56:41
不点 发表于 2016-9-16 17:22
做过了吗?结果是啥呢?注意这次的试验是禁止使用 winvblock/firadisk 哟,全程都不允许使用 winvblock/f ...

刚刚这个测试是按你的建议做的

下一个测试,两个软盘的情况,可以推测,能成功,稍候去做
yjqd 发表于 2016-9-16 17:54:25
不点 发表于 2016-9-16 17:22
做过了吗?结果是啥呢?注意这次的试验是禁止使用 winvblock/firadisk 哟,全程都不允许使用 winvblock/f ...

xp的全部文件复制到文件夹T(也就是T里不仅有I386文件夹),然后把T拷贝到J盘
软盘只有dos,磁盘驱动

运行dos,输入C:\T\I386\WINNT

出现安装界面
A:
删除A:
输入 C:\T
拷贝文件,一会,完成
重启

第二次菜单:
map --mem /winvblock.img (fd0)   还是第一次的软盘
map --hook
chainloader (hd0,2)/ntldr

按F6加载磁盘驱动,出现硬盘,安装到C盘,出现准备复制文件列表,一会,提示插入盘,也就是txtsetup.oem中磁盘驱动标识为“AMD AHCI ......"

按entre,没反应,只有按F3退出安装,重启

点评

这个过程,调整一下: 在 DOS 下,先用 c: 【回车】 进入 C 盘,再用 cd \T\I386【回车】 进入 I386 目录(我先前提到过,只是你没太注意)。 最后再敲入 winnt【回车】 开始安装。此时不要修改路径。  详情 回复 发表于 2016-9-16 21:23
不点 发表于 2016-9-16 17:22:34
yjqd 发表于 2016-9-16 17:09
你这不是相当于从硬盘安装吗
-------------------------------------------------------------------- ...

做过了吗?结果是啥呢?注意这次的试验是禁止使用 winvblock/firadisk 哟,全程都不允许使用 winvblock/firadisk 的。这做过了吗?

点评

第二次测试本想直接从第二阶段开始,只是增加一个软盘 但还是从头开始,把J盘的文件删除重新拷贝 第一次菜单: map --mem /dwinvblock.img (fd0) 只有dos map --mem /winvblock.img (fd1)  详情 回复 发表于 2016-9-16 18:50
刚刚这个测试是按你的建议做的 下一个测试,两个软盘的情况,可以推测,能成功,稍候去做  详情 回复 发表于 2016-9-16 17:56
xp的全部文件复制到文件夹T(也就是T里不仅有I386文件夹),然后把T拷贝到J盘 软盘只有dos,磁盘驱动 运行dos,输入C:\T\I386\WINNT 出现安装界面 A: 删除A: 输入 C:\T 拷贝文件,一会,完成 重启 第二  详情 回复 发表于 2016-9-16 17:54
yjqd 发表于 2016-9-16 17:09:49
本帖最后由 yjqd 于 2016-9-16 17:12 编辑
不点 发表于 2016-9-16 15:25
看来有点乱。这样吧,每次只做一个试验,这就不会乱了。现在做这个试验:

用单个软盘,里面是本机硬 ...


你这不是相当于从硬盘安装吗
-------------------------------------------------------------------------
I386 你事先拷到硬盘(盘符J)上这个测试做过的,只不过是从软盘 winnt.exe运行的,运行后指定源盘为J:

软盘winvblock FIRADISK 磁盘驱动都有

点评

做过了吗?结果是啥呢?注意这次的试验是禁止使用 winvblock/firadisk 哟,全程都不允许使用 winvblock/firadisk 的。这做过了吗?  详情 回复 发表于 2016-9-16 17:22
不点 发表于 2016-9-16 15:25:02
那么需要确认一下,单个软盘与上述两个软盘的情况有何差别。单个软盘上的本机硬盘驱动,如果不加载 winvblock 驱动的话,能否完成安装?这里假定,I386 是采用硬盘上的。确认一下,真的不能安装吗?详细描述究竟是卡在哪里而不能安装的。
前面已经确认了单个软盘上的本机硬盘驱动,如果不加载 winvblock 驱动的话,不能完成安装,提示要插盘
怎样采用硬盘I386  哪一步采用硬盘I386?


看来有点乱。这样吧,每次只做一个试验,这就不会乱了。现在做这个试验:

用单个软盘,里面是本机硬盘驱动,以及 DOS,但不含 winvblock 驱动。I386 你事先拷到硬盘上。软盘里面不要有 I386(其实有没有都行,即使有,也不用它)。

从软盘启动,进入 DOS,然后进入硬盘上的 I386 目录,执行 winnt.exe 进行安装。按照你先前的说法,是安装不了的,对吧?请确认能否彻底安装成功。如果不能安装成功,请描述卡在哪里。

重点就是上述这个试验。

如果做完了,并且是安装失败了,那么再做双软盘的试验,只是把单软盘换成双软盘(fd0 含有 DOS 以便你能进入 DOS; fd1 含本机硬盘驱动,不含 winvblock 驱动),其他都不变,和刚才的过程类似,从头做试验,看看能否成功。

点评

I386 你事先拷到硬盘(盘符J)上这个测试做过的,只不过是从软盘 winnt.exe运行的,运行后指定源盘为J: 软盘winvblock FIRADISK 磁盘驱动都有  详情 回复 发表于 2016-9-16 17:09
yjqd 发表于 2016-9-16 14:20:27
yjqd 发表于 2016-9-16 13:51
现在说的大容量软盘安装第二阶段

两个软盘,或者一个软盘,有时还要分软盘中有还是没驱动,加载还是 ...

我把菜单贴出来,有兴趣的朋友可以进行各种测试验证


title  第一次启动
map (hd0) (hd1)
map (hd1) (hd0)
map --hook
find --set-root /dwinvblock.img      
map --mem  /dwinvblock.img (fd0)        集成了xp安装文件和dos
map --hook
rootnoverify  (fd0)
chainloader (fd0)/io.sys

title 第二次启动
map (hd0) (hd1)
map (hd1) (hd0)
map --hook
find --set-root /winvblock.img
map --mem /winvblock.img (fd1)   只有磁盘驱动
map --mem /k.img (fd0)                 空盘
map --hook
chainloader (hd0,2)/ntldr
yjqd 发表于 2016-9-16 13:51:46
本帖最后由 yjqd 于 2016-9-16 13:53 编辑
不点 发表于 2016-9-16 12:01
说说我的理解,你看理解得准确不准确。

你的测试结果表明,两个软盘都存在时,会自动加载其上的驱动。但 ...


现在说的大容量软盘安装第二阶段

两个软盘,或者一个软盘,有时还要分软盘中有还是没驱动,加载还是不加载有的驱动,这样一组合,分析起来确实内容有点多

先说一下
1、虚拟光驱安装的第一阶段,前面已说过,只有一个软盘时,只加载磁盘驱动,不会出现硬盘,大容量软盘安装第二阶段,只有一个软盘时,只加载磁盘驱动,会出现硬盘(这两种状况恐怕可以分析一下,有时间再说)
2、大概猜想了一下:
大容量软盘安装第二阶段或者虚拟光驱安装的第一阶段,开始时安装程序读取xp的txtstup.sif和软盘中的txtstup.oem(如果软盘存在)并记下来,读取完后进入黑屏,这时可能是进入保护模式,在此时真正的加载或是安装驱动,读取分两种情况:一是手动按F6、二是自动读取,如果有两个软盘,手动只能加载第一个盘的驱动,选择不了第二盘(但实际上后面发现第二盘的驱动是加载了的,那么是在什么时候读取txtstup.oem,是在F6这个界面,注意,只是说的这个界面,还 是在黑屏时读取的),前面说了,大容量软盘安装第二阶段,如果只有一个软盘,且只加载磁盘驱动(此时读取了txtstup.oem,假设txtstup.oem中设置的磁盘驱动的磁盘标识为“AMD”),能出现硬盘,但后面复制文件时提示把标识为“AMD”的磁盘插入,这样说明了在读取时已经记下来了要加载什么驱动,但此时复制文件时发现磁盘没插入
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
“你的测试结果表明,两个软盘都存在时,会自动加载其上的驱动。但如果 winvblock 驱动没有加载的话,软盘是无法访问的,软盘上的 I386 文件是无法被读取的。是这样吗?”

两个软盘都存在时,fd1有磁盘驱动时,fd0不管有没有 winvblock,都能全程安装。软盘上没有 I386 文件,软盘是无法访问是指哪个软盘,谁来怎样访问
单个的 (fd0) 软盘必须要加载磁盘驱动和 winvblock或firadisk,才能全部安装成功


两个软盘,如果不加载本地硬盘驱动,也照样蓝屏,无法安装。即,不管怎么折腾,都安装不了。对吧?
对的

两个软盘,如果加载了本地硬盘驱动,但不加载 winvblock 驱动,则可以正常安装,只要 I386 是采用硬盘上的,即可。对吧?否则,如果是采用软盘上的 I386,则无法安装。对吧?
你说的 I386 是采用硬盘是指dos阶段复制到硬盘的吗,我没提前把 I386拷贝在硬盘,而是dos阶段复制到硬盘。在第二阶段我是没有map 有安装文件的大容量镜像的,只map了驱动镜像,所以不会出现软盘上的 I386

两个软盘,如果加载了本地硬盘驱动,也加载了 winvblock 驱动,则无论是硬盘 I386 还是软盘 I386 都能正常安装。对吧?
I386 把我搞昏了

两个软盘比单个软盘的好处是,两个软盘上的驱动都立即被安装程序采纳了。
单个软盘必须加载磁盘驱动和 winvblock或firadisk   两个软盘上只需加载磁盘驱动,也就是说不依赖于 winvblock或firadisk就能完成安装

那么需要确认一下,单个软盘与上述两个软盘的情况有何差别。单个软盘上的本机硬盘驱动,如果不加载 winvblock 驱动的话,能否完成安装?这里假定,I386 是采用硬盘上的。确认一下,真的不能安装吗?详细描述究竟是卡在哪里而不能安装的。
前面已经确认了单个软盘上的本机硬盘驱动,如果不加载 winvblock 驱动的话,不能完成安装,提示要插盘
怎样采用硬盘I386  哪一步采用硬盘I386?


如果真的不能安装,(我猜)那说明,对于单个软盘的情况,安装程序没有在实模式立即加载软盘里面的驱动,而是等到进入保护模式之后才去找软盘。请你确认这些细节的理解是否正确。
这个问题就是我们想弄明白的问题


点评

我把菜单贴出来,有兴趣的朋友可以进行各种测试验证 title 第一次启动 map (hd0) (hd1) map (hd1) (hd0) map --hook find --set-root /dwinvblock.img map --mem /dwinvblock.img (fd0)  详情 回复 发表于 2016-9-16 14:20
pseudo 发表于 2016-9-16 12:17:19
不点 发表于 2016-9-15 21:59
我是问:只把 img 映射为 (fd0),不再多 map 一个 (fd1), 这也一样行,是不是?这里假定 winvblock 驱动 ...

这些fd0、fd1各种花样您可以在0pe的“iso启动器”和“仿真F6驱动软盘后串接菜单”里直接对照测试。
这两个菜单项是设计来做各种测试的,目标并不是为了迅速安装成功。
菜单底部有不少中文说明。




重启之前的安装测试基本可以用0pe附带的2k3cons.iso代替xp镜像来进行。

不点 发表于 2016-9-16 12:01:44
本帖最后由 不点 于 2016-9-16 12:44 编辑

说说我的理解,你看理解得准确不准确。

你的测试结果表明,两个软盘都存在时,会自动加载其上的驱动。但如果 winvblock 驱动没有加载的话,软盘是无法访问的,软盘上的 I386 文件是无法被读取的。是这样吗?

如果确实如此的话,那说明,保护模式是肯定要进入的。那么,在两个软盘都存在的情况下,与单个的 (fd0) 软盘相比,究竟有什么不同呢?

两个软盘,如果不加载本地硬盘驱动,也照样蓝屏,无法安装。即,不管怎么折腾,都安装不了。对吧?
两个软盘,如果加载了本地硬盘驱动,但不加载 winvblock 驱动,则可以正常安装,只要 I386 是采用硬盘上的,即可。对吧?否则,如果是采用软盘上的 I386,则无法安装。对吧?
两个软盘,如果加载了本地硬盘驱动,也加载了 winvblock 驱动,则无论是硬盘 I386 还是软盘 I386 都能正常安装。对吧?

两个软盘比单个软盘的好处是,两个软盘上的驱动都立即被安装程序采纳了。

那么需要确认一下,单个软盘与上述两个软盘的情况有何差别。单个软盘上的本机硬盘驱动,如果不加载 winvblock 驱动的话,能否完成安装?这里假定,I386 是采用硬盘上的。确认一下,真的不能安装吗?详细描述究竟是卡在哪里而不能安装的。

如果真的不能安装,(我猜)那说明,对于单个软盘的情况,安装程序没有在实模式立即加载软盘里面的驱动,而是等到进入保护模式之后才去找软盘。请你确认这些细节的理解是否正确。




更深入地,也可以试试 (fd2) 和 (fd3) 的情况。注意 BIOS 支持 4 个软盘 (fd0), (fd1), (fd2), (fd3)。但 DOS 只支持 2 个软盘 (fd0), (fd1)。

点评

现在说的大容量软盘安装第二阶段 两个软盘,或者一个软盘,有时还要分软盘中有还是没驱动,加载还是不加载有的驱动,这样一组合,分析起来确实内容有点多 先说一下 1、虚拟光驱安装的第一阶段,前面已说过,  详情 回复 发表于 2016-9-16 13:51
yjqd 发表于 2016-9-16 11:40:12
不点 发表于 2016-9-16 00:07
只要你的 (fd1) 里面的 I386 能够用来安装,那就说明是在实模式下,未进入保护模式。

如果 (fd1) 里 ...

小结一下:

大容量软盘安装xp
第一阶段
大容量软盘只有xp系统文件和dos文件
第二阶段
winvblock.img map 为fd1   winvblock.img里面只有硬盘驱动
空软盘map成fd0

测试安装全程成功

那么这种方式安装xp全程就不需要 winvblock或firadisk驱动

注意:winvblock.img只是镜像名称,实际里面只有硬盘驱动,并没有 winvblock驱动
yjqd 发表于 2016-9-16 11:26:23
不点 发表于 2016-9-16 00:07
只要你的 (fd1) 里面的 I386 能够用来安装,那就说明是在实模式下,未进入保护模式。

如果 (fd1) 里 ...

测试了
fd1没硬盘驱动,但有其它驱动,fd0为空盘
结果蓝屏

第二阶段开始时要加载驱动,一是加载xp自身的驱动,如果有软盘,还会加载软盘中的驱动,加载完后一会进入黑屏(左上角有光标在闪),可能此时正在进行其它操作和进入保护模式,而且是强行进入保护模式,测试中虽然有两个软盘,但还是没阻止进入保护模式,因为蓝屏了,这只是猜测
----------------------------------------------------------
当只有一个软盘(软盘中有磁盘驱动)时且map成fd1,手动按F6时,提示机器上没有软盘驱动器,按enter,后面出现蓝屏,
不手动按F6时,后面出现蓝屏

是否说明没检测到fd0,就不再检测其它软盘

当有两个软盘,fd1有硬盘驱动,fd0为空盘,手动按F6时,提示插入软盘,确认后提示找到不oem文件,再按S也调不出fd1进行加载,再按确认,后面出现硬盘,说明其间自动加载了fd1,但不能够复制文件
当有两个软盘,fd1有硬盘驱动,fd0为空盘,不手动按F6时,不会提示插入软盘,自动进行后面出现硬盘,说明其间自动加载了fd1,但不能够复制文件
----------------------------------------------------------

当有两个软盘,fd1有硬盘驱动,fd0为winvblock,不手动按F6时,不会提示插入软盘,自动进行,后面出现硬盘,再继续安装,能够复制文件,说明fd0和fd1都加载了



yjqd 发表于 2016-9-16 09:36:44
不点 发表于 2016-9-16 00:07
只要你的 (fd1) 里面的 I386 能够用来安装,那就说明是在实模式下,未进入保护模式。

如果 (fd1) 里 ...

149#是说的第二阶段的菜单,菜单中的winvblock.img (fd1) 没有I386
不点 发表于 2016-9-16 00:07:29
本帖最后由 不点 于 2016-9-16 00:28 编辑
yjqd 发表于 2016-9-15 22:55
这种菜单也成功了:
由于我在另一台电脑是回复的,我没抄成功的菜单回复,但实质是一样的


只要你的 (fd1) 里面的 I386 能够用来安装,那就说明是在实模式下,未进入保护模式。

如果 (fd1) 里面的 I386 不能用来安装,而硬盘上的 I386 可以用来安装,那就说明安装程序切换到了保护模式,使得实模式下的 (fd1) 失效了。

为了验证这个推断,可以再做个试验。

你加载软盘 img 到 (fd1),而加载空盘为 (fd0)。把 img 里面的 “本地硬盘驱动” 删除掉,而换成一个无用的驱动,比如换成 winvblock 的驱动文件。看看安装还能进行吗?如果能进行,那就说明,安装程序一直处于实模式,而不进入保护模式,因此,即使没有本地硬盘驱动,也能安装。当然了,在安装完成后,最后要启动 XP 时,仍旧会出现 7B 蓝屏,因为那时是在保护模式了,而保护模式必须有硬盘驱动才行。

点评

小结一下: 大容量软盘安装xp 第一阶段 大容量软盘只有xp系统文件和dos文件 第二阶段 winvblock.img map 为fd1 winvblock.img里面只有硬盘驱动 空软盘map成fd0 测试安装全程成功 那么这种方式安装xp  详情 回复 发表于 2016-9-16 11:40
测试了 fd1没硬盘驱动,但有其它驱动,fd0为空盘 结果蓝屏 第二阶段开始时要加载驱动,一是加载xp自身的驱动,如果有软盘,还会加载软盘中的驱动,加载完后一会进入黑屏(左上角有光标在闪),可能此时正在进  详情 回复 发表于 2016-9-16 11:26
149#是说的第二阶段的菜单,菜单中的winvblock.img (fd1) 没有I386  详情 回复 发表于 2016-9-16 09:36
yjqd 发表于 2016-9-15 22:55:37
本帖最后由 yjqd 于 2016-9-15 22:57 编辑
不点 发表于 2016-9-15 22:08
我不知道弄两个虚拟软盘和只弄一个虚拟软盘,两者之间究竟有何差别。

猜测一:系统有两个虚拟软盘,安 ...


这种菜单也成功了:
由于我在另一台电脑是回复的,我没抄成功的菜单回复,但实质是一样的

map (hd0) (hd1)
map (hd1) (hd0)

map --hook

map --mem (hd0,0)/boot/winvblock.img (fd1)    只有磁盘驱动
map --mem (md)0x6000+800 (fd0)

dd if=(fd1) of=(fd0) count=1

map --hook
chainloader (hd0,2)/ntldr

点评

只要你的 (fd1) 里面的 I386 能够用来安装,那就说明是在实模式下,未进入保护模式。 如果 (fd1) 里面的 I386 不能用来安装,而硬盘上的 I386 可以用来安装,那就说明安装程序切换到另保护模式,使得实模式下的 (  详情 回复 发表于 2016-9-16 00:07
yjqd 发表于 2016-9-15 22:23:40
不点 发表于 2016-9-15 22:08
我不知道弄两个虚拟软盘和只弄一个虚拟软盘,两者之间究竟有何差别。

猜测一:系统有两个虚拟软盘,安 ...

或许有更多的朋友来测试一下得到的答案更准确

也或许有的朋友早已知道是什么原因了
yjqd 发表于 2016-9-15 22:20:55
不点 发表于 2016-9-15 22:08
我不知道弄两个虚拟软盘和只弄一个虚拟软盘,两者之间究竟有何差别。

猜测一:系统有两个虚拟软盘,安 ...

时常有意外发生:
我刚学习grub4dos时,为了测试,一会在这个盘放grldr,一会在那个盘grldr,开始还记得删除其它,只保留一个grldr,后来有的就忘记删除了,以至后来测试时遇到明明自己改了菜单,为什么启动时还没变呢
yjqd 发表于 2016-9-15 22:15:53
不点 发表于 2016-9-15 21:59
我是问:只把 img 映射为 (fd0),不再多 map 一个 (fd1), 这也一样行,是不是?这里假定 winvblock 驱动 ...

我来理一下我们现在讨论的问题是什么:
首先是前面我回复你说dos安装大容量xp镜像,第二阶段如果只加载磁盘驱动,不加载 winvblock,能出现本机硬盘,但不能继续安装(那时的菜单只map了一个镜像,且是FD0),你大概提出了几个方案测试,目的是解决不加载 winvblock驱动也能继续安装

于是我测试了map两个 镜像,fd1 有磁盘驱动,fd0 空盘,得出的结果是能成功,且有磁盘驱动的镜像必须map成fd1

也就是说前面我只map 一个镜像时,且是fd0,不能成功
不点 发表于 2016-9-15 22:08:43
yjqd 发表于 2016-9-15 21:47
刚才又测试了,出现安装界面时不按F6,后面出现了本机硬盘,按确认安装,一会就开始复制文件了,根据现象 ...

我不知道弄两个虚拟软盘和只弄一个虚拟软盘,两者之间究竟有何差别。

猜测一:系统有两个虚拟软盘,安装程序会认为用户的驱动程序很大也很多,有 N 多软盘。于是,安装程序知道,必须把软盘的内容拷到硬盘上才安全。既然都拷到硬盘上了,所以,在保护模式下就不用访问软盘了,因此,安装就可以继续下去了。

猜测二:系统有两个软盘,这让安装程序不敢轻易切换到保护模式,而是一直留在 DOS/BIOS 的实模式。于是,所有的安装都很顺利。

究竟哪个才是真实情况,还需要你加以判断。

点评

这种菜单也成功了: 由于我在另一台电脑是回复的,我没抄成功的菜单回复,但实质是一样的 map (hd0) (hd1) map (hd1) (hd0) map --hook map --mem (hd0,0)/boot/winvblock.img (fd1) map --mem (md)0x60  详情 回复 发表于 2016-9-15 22:55
或许有更多的朋友来测试一下得到的答案更准确 也或许有的朋友早已知道是什么原因了  详情 回复 发表于 2016-9-15 22:23
时常有意外发生: 我刚学习grub4dos时,为了测试,一会在这个盘放grldr,一会在那个盘grldr,开始还记得删除其它,只保留一个grldr,后来有的就忘记删除了,以至后来测试时遇到明明自己改了菜单,为什么启动时还没  详情 回复 发表于 2016-9-15 22:20
yjqd 发表于 2016-9-15 22:03:57
不点 发表于 2016-9-15 21:37
成功是成功了,不过,其原因是啥,还是有些神秘。

请你对比一下,把

“换成
map --/winvblock.img (fd0)   含有硬盘驱动
这两种安装的结果一样吗?我的意思是,都能成功吗?

没太明白意思,只map fd0 不是前面已测试过了吗 不能成功

-------------------------------------------------------------------------------------------
“再做一个试验:彻底删除 img 里面的 winvblock 驱动文件,看看还能成功吗?我的意思是,假如 img 里面存在 winvblock 的文件,安装程序有可能 “神不知鬼不觉地”、“自动地”、“偷偷地” 加载它。如果彻底删除掉,那么就可以确定,安装程序无法加载 winvblock 了。那么就试试,在这种情况下,安装还能完成吗?”

这个问题,你说得正好:

我第二次测试的时候把里面的winvblock firadisk 都删除了,只剩下磁盘驱动,也是怀疑“偷偷地” 加载它,我也担心这种情况出现


但是,根据以往我手动加载的时候来看,只能加载指定的驱动,比如我只加载磁盘驱动时,不加载winvblock,那么不能继续安装,要同时加载两都才能继续安装

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

闽公网安备 35020302032614号

GMT+8, 2024-5-8 14:55

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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