标题: [讨论]发现一个MS-DOS 7.10的bug:不能访问FAT32分区
[打印本页]
作者: Climbing
时间: 2007-7-11 13:17
标题: [讨论]发现一个MS-DOS 7.10的bug:不能访问FAT32分区
事情是这样的:我在给硬盘分区时,经常会分出多个主分区(因为我一直喜欢将操作系统独立安装到某个主分区的方式,比多个操作系统共享主分区维护起来要简单),当然,总要保留一个扩展分区用于存放用户的数据(我的习惯是主分区安装操作系统及常用应用软件,而扩展分区的逻辑盘用来保存用户的数据和软件),在这些主分区中,我总是习惯使用FAT32文件系统,其中的某个主分区,我一般是为MS-DOS 7.10保留的,在上面我会放一些常用的DOS工具(例如ghost、pqmagic等)以用于系统维护,然后多分区启动菜单我习惯使用BootStar来管理(当然,现在用grub4dos也应该很不错,不过习惯是很难改变的,我还是一直使用BootStar),但这个分区上的DOS很容易出现启动故障:首先,DOS的引导扇区好像不是通用的,某个主分区只能使用特定的引导扇区(当然,我对DOS的引导扇区并不了解,不知道这样说对不对);其次,如果我在启动主操作系统时不用BootStar将这个DOS分区隐藏,那么可以使用BootStar自由的两个分区的操作系统之间切换,但一旦我在启动主操作系统分区时将DOS主分区隐藏了,再次从BootStar进入这个DOS主分区时就可能遭遇启动失败的情况(DOS的引导过程出现了问题,原因不明),这时候只能通过sys命令重新传送DOS系统才能修复这个启动错误,但这很麻烦。第三,很多时候,DOS不认这个DOS主分区,症状就是在XP下能够看到这个分区的所有内容,但进入DOS后,这个分区却是乱码或者根本不能访问(Invalid Media之类的提示),如果我在DOS下格式化这个分区,DOS可以访问了,但DOS下看到的内容和进入XP后看到的内容却不相同,真是奇哉怪也。
前天,我给同事的一台Sony VAIO笔记本重新安装系统,第一主分区是FAT32,安装XP Pro,第二主分区就是这个DOS分区,剩下的空间是扩展分区,由于我以前不断遭遇到DOS启动失败的情况,因此这次我就想改进这个DOS分区,尝试让它不再遇到启动失败的故障,办法当然就是不再使用不稳定的DOS引导扇区,怎么办呢?将引导扇区换成grub4dos的引导扇区(这个引导扇区是不会变化的),然后在用grubinst安装引导扇区到该DOS分区时使用-b命令指定一个特别的引导文件名(如myldr,也就是一个被我自定义了内置引导菜单的grldr),这样启动过程就变成了:grub4dos引导扇区 -> myldr -> MS-DOS 7.10,当然,myldr的内置菜单中使用这样的方式引导DOS:
title MS-DOS 7.10
find --set-root /myldr
chainloader /io.sys
真奇怪了,这样做能够正常引导起来DOS,但却提示输入command.com的路径,怎么会这样呢?
我突然发现,无论以何种方式引导到DOS状态,都无法看到DOS所在主分区的内容(内容是乱码),而在XP下这个分区的内容却可以正常显示,在grub4dos的命令行方式下用cat命令也可以正常访问这个DOS分区的所有内容,只有DOS自己访问不了它。
不知道经常使用DOS的各位有没有发现过这种问题,或者有没有什么好的解决办法,欢迎大家在这里提出来讨论。
作者: shanliang8008
时间: 2007-7-11 14:53
用XUSBOOT发现这个问题 不过用光盘安装(ISOEMU安装)没有发现过
还有一次用了不知道什么启动管理软件 XP不能安装 不能启动 最后格式硬盘 我估计是语言问题 或者MBR 用新版的 ERD软件估计可以删除 ,那个软件 可能是把自己放在 硬盘的最前端引导区 ,估计用PQ最新版把删除在重装XP可以搞定
[
Last edited by shanliang8008 on 2007-7-11 at 02:58 PM ]
作者: Climbing
时间: 2007-7-11 14:56
用光盘安装是什么意思?
作者: shanliang8008
时间: 2007-7-11 14:59
Quote: |
Originally posted by Climbing at 2007-7-11 02:56 PM:
用光盘安装是什么意思? |
|
就是主站那个光盘镜象
作者: Michael
时间: 2007-7-11 19:14
没看懂.
win9x 全系列对多主分区的支持都很烂.别叫它 bug 了,这是它的本性.
作者: Climbing
时间: 2007-7-12 09:08
我用多主分区很多年了,没有楼上说得这么严重吧?只是在某些机器上有问题,大部分机器基本上还算是正常的。
作者: 0451lym
时间: 2007-7-12 10:01
如果我猜的不错,你的是SATA硬盘!
作者: Climbing
时间: 2007-7-12 12:11
晕,跟SATA更不沾边了,你是否以为在DOS下访问SATA硬盘还需要加载驱动?
只要BIOS支持,DOS就支持,不需要加载什么驱动。
而且,我用的不是SATA硬盘。
作者: Michael
时间: 2007-7-12 19:57
呵呵,我也用主分区多年了,而且现在还一直在用,所以才有那样的话.不过我的dos所在主分区的引导扇是nt osloader.
作者: Climbing
时间: 2007-7-13 09:35
NT的引导扇区也不是那么稳健(这里想问一下,是不是所有的FAT32主分区的NT引导扇区都是相同的?),我明白你的意思,你是通过NT的启动菜单引导DOS的引导扇区(bootsect.dos)进而引导DOS,在顶楼我已经说明了,不同主分区的DOS的引导扇区是不同的(这个结论我要打个?号,感觉上是这样),这你又怎么处理?
正是因为有上面这些问题,所以我才想到使用grub4dos的引导扇区,因为它的引导扇区不会因为分区的变化而变化,然后通过grub4dos来引导DOS。
作者: DOSforever
时间: 2007-7-15 04:55
嘿嘿,没想到小磕的习惯和我差不多,我也是一直使用多个主分区,也习惯用 FAT 作文件系统。不过不都是一样的,一个是 FAT16 的,用于传统的 DOS ;一个是 FAT32 的,用于 Windows 9x,2000,XP;还有一个是 UNIX 分区 。我用的是 System Commander 做多系统引导管理的。由于你是两个 FAT32 主分区,我也没用过 BootStar 和 Grub4DOS,所以你的情况我没遇到过,只能猜测一下。
可能遭遇的启动失败有没有什么提示?可能遭遇。是不是说有时候有,有时候没有?
DOS 能否自身从已标识为隐藏的分区上启动?按理我想应该是可以,因为 MBR 把控制权交给 DBR 后, DBR 是不需要寻找分区的,只要从自己的分区加载 IO.SYS 就可以了。但究竟如何我也没试验过。
其次,既然你把这个分区隐藏了,那么 DOS 下应该就看不到这个分区了,那 sys 命令还认这个主分区的盘符吗?
XP 下可以正常看到 DOS 的隐藏分区,但我只做过 FAT16 的实验,即 16h ,对 FAT32 的如何不得而知,即 1Ch、1Bh 。MS-DOS 7.10 对各个隐藏分区的认识我也不清楚。
所以你说的这些奇怪现象我猜是不是很可能是由于你搞什么隐藏分区引起的,如果你不搞什么隐藏分区会不会不出现这些现象?可能遭遇,是不是搞隐藏分区就有,不搞隐藏分区就没有?
作者: Climbing
时间: 2007-7-27 08:55
标题: Re 小永:
你所提的问题都是一些常识性的问题,我怎么可能犯这种低级错误:例如让DOS从隐藏分区启动。
其实问题很简单:在有多个FAT32主分区的情况下(XP下这些分区都能正常访问),无论你以任何形式启动DOS 7.10(例如从软盘映像启动),都有可能出现DOS无法访问某个FAT32分区(一般是第一个以后的)的情况,我这里用了都有可能,是指这种情况并不会每台机器都出现,但出现的机率比较大。当前,前提就是这些分区不应该是隐藏的,因为我们都知道,DOS不可能访问隐藏分区。
作者: DOSforever
时间: 2007-7-27 17:52
但是从你的描述看我就是这么理解的,而且我也没有试验过
Quote: |
但一旦我在启动主操作系统分区时将DOS主分区隐藏了,再次从BootStar进入这个DOS主分区时就可能遭遇启动失败的情况……
这时候只能通过sys命令重新传送DOS系统才能修复这个启动错误 |
|
所以我问“既然你把这个分区隐藏了,那么 DOS 下应该就看不到这个分区了,那 sys 命令还认这个主分区的盘符吗?”
作者: Climbing
时间: 2007-7-28 22:54
晕,当然在sys之前要把这个分区反隐藏,这是默认的而且必须要做的操作,所以我就没有说出来,大家都是明白人,不用交待的这么详细吧?
作者: DOSforever
时间: 2007-7-29 14:34
呵呵,那可不一定

我玩计算机到现在的一个经验就是:不能凭想象得出结论。有时候以前的经验并不能保证我们对未经实践事务推断的正确性。就拿隐藏分区和你的多个主分区的识别问题来说吧,如果不是亲眼看到我还不知道 Windows XP 能直接识别隐藏的 FAT16 分区。如果不是你发这个帖子我还以为 MS-DOS 7.10 不存在对多个 FAT32 主分区有识别问题。
所以“
偶只喜欢回答那些标题和描述都很清晰的帖子!”呵呵
另外你的
Quote: |
但一旦我在启动主操作系统分区时将DOS主分区隐藏了,再次从BootStar进入这个DOS主分区时就可能遭遇启动失败的情况…… |
|
请问这时候——BootStar进入这个DOS主分区时,DOS 主分区是处于隐藏状态还是正常状态?
作者: Climbing
时间: 2007-7-30 12:07
按BootStar的启动设置来说,既然选择进入这个主分区,它当然应该是不隐藏的,而且是激活状态。但由于启动失败了,无从推测它这时候的状态是什么。
作者: Climbing
时间: 2007-7-30 12:09
但顶楼讨论的并不是这个问题,小永有意无意的将帖子的讨论引入了歧途。
顶楼讨论的问题是:在不使用BootStar及其它分区引导软件的情况下,DOS 7.10无法访问一个并不隐藏且在XP下可以正常访问的FAT32主分区。
作者: DOSforever
时间: 2007-7-30 16:47
Quote: |
Originally posted by Climbing at 2007-7-30 12:07:
按BootStar的启动设置来说,既然选择进入这个主分区,它当然应该是不隐藏的,而且是激活状态。 |
|
我想也是,因为我用 System Commander 也是这样的。
我想这时候状态就可以确定了,马上用软盘启动看一下,估计应该也是非隐藏、激活的状态。
作者: DOSforever
时间: 2007-7-30 17:01
Quote: |
Originally posted by Climbing at 2007-7-30 12:09:
但顶楼讨论的并不是这个问题,小永有意无意的将帖子的讨论引入了歧途。
顶楼讨论的问题是:在不使用BootStar及其它分区引导软件的情况下,DOS 7.10无法访问一个并不隐藏且在XP下可以正常访问的FAT32主分区。 |
|
实际上从你主贴的描述看我一开始也看得相当累,当然这不奇怪,因为类似的问题别人没经历过,而描述人自以为是描述得很清楚了。现在问题的关键算是清楚了点。
我之所以问隐不隐藏的问题因为你的情况我没遇到过,所以只能猜测是否可能是这方面引起的。
我忽然想起一个问题,你的这 MS-DOS 7.10 是 Win98 的还是小Wen做的 DOS 7.10 ?
另外说句题外话,小不小的你来叫还太嫩了点,如果不好意思叫声哥的话对我直呼其名就可以了,嘿——

作者: Climbing
时间: 2007-7-30 19:21
微软官方从来没有出过什么ms-dos 7.10,所以当然是指Wengier做的7.10。
关于小永这个称呼,我是来而不往非礼也。小磕应该是你先叫起来的吧?至于哥不哥的我还没有说什么呢,不见得谁叫谁哥呢。从这个论坛的注册日期算起,你是小小兄弟,恐怕没资格跟老大这么说话吧?
作者: DOSforever
时间: 2007-7-30 20:01
一般来说我们把 Win98 下分离出来的 DOS 也叫 MS-DOS 7.10 , Wengier 做的 7.10 和它不完全一样,我印象中论坛好象有人用这个出现过问题,你换用 Win98 的 DOS 试试,看看否也出现这样的现象。
你岁数肯定没我大,再说你又那么可爱(这是主要的),所以我叫你一声小磕很正常。
至于想以先后注册来摆老资格……嘿嘿……我以前已经告诉过你了:
http://www.cn-dos.net/forum/viewthread.php?tid=15191
http://www.cn-dos.net/forum/viewthread.php?tid=27291
再说了,难道一个“新手上路”就真的是新手吗?一个“高级用户”就真的比“初级用户”要高级吗?嘿嘿
正因为来而不往非礼也,所以我这么喜欢你,你更要懂礼貌哟——
来,小磕,让俺亲一个

呵呵呵呵……别不好意思嘛——
作者: qzwqzw
时间: 2007-7-30 21:14
麻烦两位老大严肃点行不行
这里是技术区不是灌水区诶
我认你们俩做老大行不行?
我觉得Climbing的起始帖就已经开始把问题向夹缠不清的方向引导了
既是多主分区,又有隐藏非隐藏,还有BootStar加Grub4DOS
昨天本来已经稍微清晰了一些
现在又忘得差不多了
想搞清这个问题
我建议想办法将那个主FAT32分区单独隔离到测试机中
比如整盘镜像后删除其它可删除的分区
然后采用单一方式引导
要不BootStar
要不Grub4DOS
或者光盘Grub更好些
反正一个目的
就是让问题尽可能的简单化
不能被太多的外在因素干扰视线
我猜测那个主分区肯定与正常的FAT32分区有区别
XP能认不过是因为它检查的项目少而已
而DOS检查的项目多
而最有可能卡在某项校验上了
作者: qzwqzw
时间: 2007-7-30 21:28
另外提一点
印象中MS-DOS引导除了必须激活的主分区条件外
也似乎必须是第一主分区
至于BootStar等隐藏、去激活其他主分区的方式
应该就是为了欺骗dos的io.sys
让它误以为自己进入的只是一个以完全自己为主的环境
而这些欺骗方式用得多了,难免捅出篓子
------------------
至于grub4dos引导后不认command.com的问题
一个可能是不认文件系统
这除非是分区的结构有很大变化
另外一个可能就是grub4dos对dos做的pack不够完善
在某些特殊情况下没有把io.sys指向一个正确的解释器
作者: qzwqzw
时间: 2007-7-30 21:37
另外,关于xp与dos下分区表现不同的症状
我有类似的经历,不过有很大区别
我是在VMWare中虚拟双机共享盘阵起Windows集群
结果发现盘阵的内容在A机和B机中的表现总是完全独立
A机在盘阵上的新建、修改、删除等操作在B机上看不到
反之也是一样
我曾经试过在A机和B机手工创建两个接近盘阵大小的数据文件
结果都创建成功了
给人的感觉仿佛是在操作两块不同的硬盘一样
但实际上盘阵的镜像的确只有一个
所以你的问题排除了操作分区不同的低级错误后
就只剩下检查分区表链、分区表数据结构等底层方法了
另外还要看这种不同的成都究竟有多大?
是个别文件不同,还是看上去就想在操作两个分区?
[
Last edited by qzwqzw on 2007-7-30 at 09:39 PM ]
作者: Climbing
时间: 2007-7-30 23:55
说实在的,我对DOS的底层工作原理了解不多,例如,DOS如何看待第二个主分区,所以出现这种问题我也很难确定原因,但至少有一点儿是明白的,FAT32系统应该是很标准的文件系统,前述的第二个FAT32主分区在我的测试中,无论在XP还是在grub4dos下,都可以正常访问,但唯独DOS 7.10访问时会出现问题(访问不到),而且,最奇怪的是,并不是所有的第二个FAT32主分区DOS 7.10都不能访问,有些是能访问的,而另一些却无法访问。而我在顶楼的帖子中所反馈的情况(很多人认为比较复杂),只是将这个故障的详细环境和情况加以描述,绝非缠夹不清,这是标准的报告bug的方式,至少Wengier坛主本人几乎一眼就看清了问题的所在,但他也暂时找不到原因,现在我只能等第二次遇到这种问题再继续反馈了。
希望大家持续关注,有条件的也可以在真机或者虚拟机上试验一下。
另外,提醒大家注意,现在的dos 7.10的io.sys据我所知,至少有三个不同的版本:有小一些的用于启动软盘,有大一些的,比较适合用于硬盘,还有一个用于解硬盘逻辑锁的版本(这个我手里没有),当然,如果算上98DOS原版的io.sys,那么我们就可能遇到4个版本的io.sys,至于这些不同的io.sys之间到底有什么区别,连Wengier自己好象也不算十分清楚(至少我自己没有请教清楚)。但从现在的情况看,如果要追求最好的兼容性,最好使用原版的98中的io.sys,它的缺点就在于体积较大,含有98的启动logo图片。但Wengier说,他的7.10中的两个io.sys在基本功能上应该跟原版的io.sys完全一样,甚至功能上还有所增强。当然,Wengier没有说清楚他的io.sys是如何制作出来的,所以,也就无从理解其差别了。
从别的论坛的反馈来看,也有很多人在使用dos 7.10时遇到了跟顶楼相同的问题,有人建议使用纯正的98DOS,也有人说98的DOS天生就对多主分区支持不好,在使用多主分区时,最好将其它主分区隐藏。现在众说纷纭,我也有点儿晕了。总之,我希望就这个问题有一个完美的解决方案,或者有一个权威的解释,这就是我们大家所要讨论的目的,毕竟,很多的一键恢复系统都是建基于这种多FAT32主分区的基础之上,解决了这个问题,对DOS 7.10的使用和推广来说还是很有意义的。
Re 小永兄:
其实,你应该并不知道我有多大,我自己感觉自己也算是一个老人儿了(无论从岁数还是从事计算机的经历以及到这个论坛注册的时间),我上大学时,是从DOS 3.3(或者更老的版本,时间久远,记不得了)开始用起计算机的吧,当时还没有Windows呢,Linux也没有。但看你的口气,好象真的很有把握比我大的样子,但无论如何,我都觉得你不应该如此自信的。至于小永兄的称呼,就如同鲁迅先生称呼广平兄,似乎没有什么难理解的,戏谑玩笑而已,绝无不敬之意,得罪之处,万望海涵。
作者: DOSforever
时间: 2007-7-31 23:54
再看了一遍,归纳起来你的主要问题有以下几个:
1. 隐藏其中一个主分区时 BootStar 引导另一个主分区的启动问题
2. DOS 的引导扇区是否通用?
3. DOS 对多个主分区的识别问题
4. 在这种情况下 Grub 对 DOS 的引导问题
第一个问题,对于你所描述的
Quote: |
如果我在启动主操作系统时不用BootStar将这个DOS分区隐藏,那么可以使用BootStar自由的两个分区的操作系统之间切换,但一旦我在启动主操作系统分区时将DOS主分区隐藏了,再次从BootStar进入这个DOS主分区时就可能遭遇启动失败的情况 |
|
由于我没用过 BootStar ,所以对“我在启动主操作系统分区时将DOS主分区隐藏了”这句不是很理解。是指启动另一个主分区的同时就将 DOS 主分区隐藏了还是启动另一个主分区进入 OS 以后再将 DOS 主分区隐藏? System Commander 可以设定启动某个 OS 时将其它主分区置于隐藏状态,但如果切换到启动其它主分区的 OS 时自动又恢复为正常状态。不知 BootStar 是否也是这样相似的功能?所以我再想问一下“遭遇启动失败的情况”时有没有什么提示还是一片漆黑?(除 BootStar 已有的显示信息)
第二个问题,我认为 DOS 的引导扇区除 BPB 、Volume Label、Volume Serial Number 外是通用的。不过本人较懒,上述结论未经实践证明,纯属理论猜测。
第三个问题,我想请你抽空再看一下,有识别问题的机器扩展分区中的最后一个逻辑分区用的是不是 NTFS 或其它的文件系统?没识别问题的机器扩展分区中的最后一个逻辑分区用的是不是 FAT 文件系统?
第四个问题,没用过 Grub ,不敢乱说,还是请熟悉 Grub 的人来谈谈吧。
作者: DOSforever
时间: 2007-8-1 00:19
Quote: |
Originally posted by Climbing at 2007-7-30 23:55:
至少Wengier坛主本人几乎一眼就看清了问题的所在,但他也暂时找不到原因 |
|
小Wen啥时候也看了?看了怎么不说话?强烈反对有问题私下交流!尤其是技术问题。
Re 小磕:
其实,我应该知道你有多大,如果我没估计错的话89那会儿你应该在上初二吧,最多就是初三了,呵呵,我说的对不?如果你第一次接触计算机是上大学时,那我……你还……咳咳,不说了,这种比较没什么意思。并不是接触的越早就学的越多越深。象我,玩了这么些年,除了在这里瞎混,什么名堂也没玩出来。不象这里的孩子们,我看他们的学习劲头可真足阿!我来这里没多长时间就想起了当年赵忠祥评价新一代主持人时说的一句话:“努力了大半辈子才和他们打了个平手。”也想起了当年毛主席所说的话:“这个世界是我们的,也是你们的,但归根结底是你们的,你们就好象早上八、九点种的太阳。”
而我们……
作者: darkradx
时间: 2007-8-1 00:35
为什么要在非激活分区上启动DOS?
作者: Climbing
时间: 2007-8-1 01:25
Re darkradx:
不知道你从哪里看到的“在非激活分区上启动DOS”?根本不是这个问题。请你再仔细看一下顶楼及后面的回复。
Re 小永兄:
感谢你这么仔细的研究顶楼帖子反馈的情况(说实在的,写得是比较混乱,抱歉了)。
你归纳的几种情况大致描述了我顶楼帖子所反映的问题,但却脱离了重点,那就是:
Wengier的DOS 7.10不能访问一个正常的FAT32主分区(所谓的正常,是指在XP及GRUB4DOS下均访问正常,也就是说能够列表分区中的文件并显示其内容)。
由于在实际使用中牵涉到了BootStar及grub4dos,还有xp,所以主题就点儿混乱了,这是我的责任,不过我在这里澄清这个问题。
关于你对那几个归纳问题的看法,我一一答复如下:
1、BootStar应该是跟System Commander功能相类似的软件,至少在你所说的功能上基本相同(我个人也没有用过System Commander,无从比较)。也就是说,在BootStar的启动菜单设置中,你可以设置激活并启动某个主分区时,其它的分区是否可见(不可见的就是隐藏了)。当然,每个菜单有一套独立的设置。
2、DOS引导扇区是否通用的问题,你没有给出答案,继续求解。在我的印象中,不同主分区的DOS引导扇区在关键代码上应该是有区别的。也就是说,你不能将某一个主分区的DOS引导扇区原样的搬到同一硬盘上的另一主分区上用于引导另一主分区上的DOS,我想这个应该好测试。
3、这个需要我遇到问题后才能测试,暂时没有条件。不过想不明白,这个问题跟最后一个逻辑分区的文件系统有何关系?
4、grub4dos只不过是另一个功能更为强大的多分区启动管理软件,建议你用用,保证你用了之后会爱不释手。
题外话:关于我年龄的推测,你还是过于自信了,算了,不打哑谜了。我是74年生人,91年上大学,上大学之前没有接触过计算机,上大学时其实也没有学过DOS,只不过直接就在DOS下的Turbo Pascal环境中学Pascal编程,然后找了一本DOS大全补了一下DOS基础知识,课堂上是从来没有讲过的。至于写批处理,那是上班很多年以后的事情了,发现日常工作中很多系统维护工作都可以用批处理自动完成,因此对写批处理产生了浓厚的兴趣,一发不可收拾,在这个论坛也认识了很多批处理高手,如WillSort兄等,我的水平是不能望其项背的,我是一个实用主义者,我并不过分执著于纯DOS或者CMD或者什么第三方工具,对于我来说,只是不同工具而已,最终目的是干好工作,让它们为工作服务。
3、
作者: Climbing
时间: 2007-8-1 01:27
今天晚上给一台BlackBerry 7290手机刷ROM并激活上网收彩信,遇到了很多麻烦,搞得现在也不能睡觉,辛苦乎?命苦乎?
作者: DOSforever
时间: 2007-8-1 02:13
哈哈!小磕,你的年龄我不用猜,以前早就知道了,几月几号我都知道,当然你上学的年龄我估计错了,莫非你念书早了?一般7岁开始读书,小学6年,中学6年,20岁左右上大学。不管怎样你比我小是肯定的了,所以说,这小不小的你可没资格乱喊哟,当然咯,我喊你主要是因为你可爱嘛——再说了,别说和我一样大,就是比我大的人也没人在我面前老三老四。关于这一点,我在以前的帖子中已经回答过你了。
至于这第三个问题我先不说,可能和我知道的有关,可能无关,你先不要偷懒,把调查结果告诉我,嘿嘿。
关于 Grub 我也一直很有兴趣,可苦于习惯问题(就和你用 BootStar 一样,嘿嘿)和现在也没时间来慢慢研究所以就一直阁到着没用,今后有机会的话还是想用用的。
作者: Climbing
时间: 2007-8-1 02:28
难道你有什么特权?大就大吧,大不了就叫一声老兄,可惜,你好象还是一直对自己具体多大讳莫如深,不会是心虚吧?反正网络上这些东西都无法验证,凭良心办事好了。无论如何,我是不承认谁会在我面前有什么特权的。这是题外话。
关于第三个问题,有了结果我一定及时反馈到这里,其实,自己也可以试一下,安个虚拟机应该并不复杂。
作者: DOSforever
时间: 2007-8-1 03:24
你啊,嘴上说反对特权,其实心里官本位主义挺严重的,因为你一开始想到的就是特权,以为要有特权才为大,这恰恰是特权思想的表现。当然咯,你小磕可是个好同志,这我早就说过。我可不忍心骗你哟
http://www.cn-dos.net/forum/viewthread.php?tid=11779#pid118028
呵呵呵呵……
有虚拟机的话那就装吧
作者: wang6610
时间: 2007-8-1 09:26
两位越小越比年龄,年龄大小无所谓的,彼此相互尊重就可一了。呵呵。
作者: Climbing
时间: 2007-8-1 14:29
嘴架不打了,挺没意思的,这么大岁数了,好象非得争什么似的,让年轻人看笑话。
今天给小永兄汇报一个情况:
在一台联想的笔记本上,硬盘前面分了两个主分区,均为FAT32分区,第一个主分区安装XP,第二个主分区安装DOS 7.10,后面的空间为扩展分区,分成了两个逻辑分区,第二个30G的逻辑分区是NTFS文件系统,在这种情况下,如果第一个主分区是激活状态,那么从DOS 7.10软盘启动DOS,无法访问第二个主分区,说什么Invalid Media。然后我将第一个主分区隐藏,将第二个主分区激活并启动到该分区上的DOS,该分区正常,当然既然DOS启动了,说明这个分区访问没有问题。再然后,我将第二个逻辑分区删除并换成FAT32文件系统,这时候无论激活哪个主分区,第二个主分区DOS都能正常访问。这些反馈到底说明了什么问题呢?
在最后一个逻辑分区是NTFS且第二个主分区非激活的情况下,DOS不能正常访问第二个主分区,这应该是这次反馈所得出的结论吧?但原因呢?
由于是给别人装机器时拿别人的机器测试的,别人的机器已经搬走了,无法进一步详细测试,等下次机会。
作者: qzwqzw
时间: 2007-8-1 16:19
似乎抓住些什么东西了——
是不是说
“Invalid Media”其实指的并不是第二主分区
而是指最后一个未识别的NTFS逻辑分区
另外你软盘DOS启动后通过什么方式访问第二主分区?
Grub、分区软件或者其它访问分区的软件?
对了,既然Wengier这个资深人士给过意见
那么还是公开一下给我们做个参考也好
作者: Michael
时间: 2007-8-1 21:17
http://www.cn-dos.net/forum/viewthread.php?tid=15394&fpage=1
这个问题我都不指望它能解决了。毕竟DOS是好多年前的产品。
作者: alex0007
时间: 2007-8-2 02:34
有意思..在看技术贴的同时..还看至了两位70代的朋友聊家常..确实有意思.自我介绍..我也是70代的人..只不过我不是从事it方面的工作的..我的工作离不开win的gui的系统..不过.与DOSforever兄与Climbing相类似的是对dos是有一种莫名的感情.(估计70代的玩过电脑的都有相同感受吧)
正如前面一位朋友说的:解决问题是我们最终的目标..我个人觉得何必要一定多个主分区呢??有时习惯也会害了人..想自由启动各分区..我觉得还是应该研究一下grub..以前简单使用过..觉得功能还是不错的.何必要执行于使用BootStar或是system commander??
作者: Climbing
时间: 2007-8-2 14:42
人嘛,都有一个习惯性的问题。用惯了一个东西就不容易接受新事物了。
多主分区一般情况来说是必然的,因为这是最规范的安装多系统的方式。
多分区管理软件选择上,虽然我也看好grub4dos,但总感觉不如BootStar来得稳健,因为grub有一些东西是保存在硬盘上以文件形式存在的,这很容易被破坏掉。
作者: DOSforever
时间: 2007-8-3 03:03
Re: wang6610, Climbing and others
我们没什么不尊重,也没有打嘴架。大家有各自不同的看法说两句很正常。中国人的一个思维定势的误区就是追求表面的太平,即便有不同意见但为了“安定团结的大好局面”也不能说出来,而私下里呢,却相互拆台。当然,这种误区的根源在于“上面”,因为“领导”们要造成这样的一个“安定团结的大好局面”以便于维护其统治。看看我们的大小会议个个都是“排排坐,吃果果”,领导发发言,下面鼓鼓掌、举举手就可以了,而国外的议会激烈辩论从争吵到打架都有。所以,不要看到有些不“和谐”话就惊恐不安。有些人表面是一团和气,而私底下却勾心斗角,而我和小磕呢,尽管打了些所谓的嘴仗,但我还是蛮、蛮喜欢他的,呵呵呵呵……
其实呢,我倒不是争个什么,这兄不兄的我从来没在意过,也没想过这问题,倒是有些人,可以说是相当部分人整天什么老大啊挂在嘴上,到个什么地方“领导意识”倒挺强的,我对这种官本位意识深恶痛绝。不过对我个人来说兄不兄的无所谓,但小什么的我就比较光火了,我在21楼的链接中已经回答过这问题了。所以要说要说谁先叫的话还是小磕你先叫出来的,当初居然学着我叫小jone的样来叫我?呵呵呵呵……后来我一想现在给你起的这小名倒挺不错,可以说是音译,和意译的高度相结合,我说的对不?呵呵呵呵呵呵……
作者: DOSforever
时间: 2007-8-3 03:14
Quote: |
Originally posted by Climbing at 2007-8-1 14:29:
……
这些反馈到底说明了什么问题呢? |
|
说明了什么问题呢,说明了你和麦麦还有 pfox 发现了一个已知的 DOS 的bug!正如你的标题所言——“发现一个MS-DOS 7.10的bug”,但看来还不仅限于 MS-DOS 7.10 。这是 System Commander 用户手册中的一段说明:
Quote: |
Warning: DOS BUG: We have seen a minor bug in all versions of DOS that can affect some configurations. With two primary FAT partitions, and an extended partition (on any drive) that has the last logical drive as non-FAT, DOS cannot see the other primary partition. This DOS bug does not occur when no extended partition exists, or if the last logical partition in the extended partition is FAT. |
|
我以前看的时候有点印象,但由于我不用 NTFS ,所以看后也就没在意,今天看到你发的这帖子忽然有点想起来了。很抱歉,那时候麦麦发帖子的时候我没看见。呵呵
最后,谈谈我的体会。我想我们一定有过为了一件小事情而弄得精疲力竭的经历吧,可到最后答案往往就这么简单。真他妈的。更可气的是搞了半天原来这就是软件自身的一个bug,而不是我们的使用错误。呵呵呵呵。不过我们锲而不舍的研究精神还是值得赞赏的。
作者: DOSforever
时间: 2007-8-3 03:35
Quote: |
Originally posted by alex0007 at 2007-8-2 02:34:
有意思..在看技术贴的同时..还看至了两位70代的朋友聊家常..确实有意思.自我介绍..我也是70代的人..只不过我不是从事it方面的工作的..我的工作离不开win的gui的系统..不过.与DOSforever兄与Climbing相类似的是对dos是有一种莫名的感情.(估计70代的玩过电脑的都有相同感受吧) |
|
嗯!确实。从 DOS 过来的人永远都不会忘记那种感觉,那种自由自在,随心所欲的感觉。
Quote: |
正如前面一位朋友说的:解决问题是我们最终的目标..我个人觉得何必要一定多个主分区呢??有时习惯也会害了人..想自由启动各分区..我觉得还是应该研究一下grub..以前简单使用过..觉得功能还是不错的.何必要执行于使用BootStar或是system commander?? |
|
是否要用多个主分区那得看情况,不是一定要用也不是一定不要用,用不用根据需要来。关于各个多操作系统引导管理器我想它们都有各自的优缺点,我也在一直进行比较:
http://www.cn-dos.net/forum/viewthread.php?tid=19008
作者: DOSforever
时间: 2007-8-3 03:43
Quote: |
Originally posted by Climbing at 2007-8-2 14:42:
多分区管理软件选择上,虽然我也看好grub4dos,但总感觉不如BootStar来得稳健,因为grub有一些东西是保存在硬盘上以文件形式存在的,这很容易被破坏掉。 |
|
BootStar 所有的代码和数据都是安装到开头的几个隐藏扇区中的?不占用任何分区中以文件的形式存在?
作者: Climbing
时间: 2007-8-3 09:15
Quote: |
Originally posted by DOSforever at 2007-8-3 03:43:
BootStar 所有的代码和数据都是安装到开头的几个隐藏扇区中的?不占用任何分区中以文件的形式存在? |
|
是的,BootStar的安装和维护程序当然是以文件的形式存放于硬盘上的(分Windows和DOS两个版本),但一旦安装注册成功后,硬盘上的文件就没有意义了,它的所有启动代码和数据(甚至包括分区表的备份)都在0磁盘的0-63扇区中,至于具体哪几个扇区我也不是很清楚。
经过大道兄(从今天开始,正式将“小永兄”更名为“大道兄”,将小字去掉以示尊重,其实本来就没有什么不尊重,不过既然大道兄对小字敏感,我就入乡随俗了,至于“道”字的来历,与“磕”如出一辙,不过我实在想不明白这个”磕“字如何跟我贴切的。至于为什么不用“老道”,是因为老字并不贴切,而且有死的意思,不吉不吉)的哼哼教诲,我突然发现自己确实有些官本位思想,值得批判。先前的争论和打嘴仗,我个人以为还是玩笑的成分居多,其实大家在这里讨论技术,根本无所谓年龄身份经历等,大家都是平等的。当然,还是有菜鸟和老鸟之分,菜鸟要尊重老鸟,多多向老鸟学习,老鸟则要关心爱护菜鸟、新鸟,不要以老鸟老大自居。
大道兄所言非虚,很多时候,个人的经历并不足以确定一个软件的bug,只要集合集体的智慧才能求出问题的真象。现在,基本上这个问题已经有了一个明确的结论,也就是大道兄前面所提到的这个所有DOS都存在的BUG。那么,通过这番讨论,至少我们明确了一点:Wengier的MS-DOS 7.10没有问题,我们可以继续使用它。
既然知道了这个BUG,我们就可以有意识的去避免它,其实也很简单,如果有扩展分区的存在,在扩展分区最后保留一小块空间作一个FAT分区就ok了。
当然,这个结论还需要进一步验证。
作者: Climbing
时间: 2007-8-6 07:53
再报告一个新情况:
这两天给人安装一台新买的HP笔记本,80G的硬盘,前面两个主分区,大小均为4G,后面三个逻辑分区:10G FAT32,50G NTFS,2G FAT32。最后的2G本来是用来作为HPA分区的,后来发现HP的这台机器对HPA支持不佳,于是将最后的2G又变成了一个主分区(装一个DOS作为一键恢复分区),为了避免DOS对它访问不了,将50G的NTFS分区缩小了8M空间,用这8M空间在NTFS后面又建立了一个FAT分区。但结果仍然是让人失望的。无论启动哪个版本的DOS,都无法正常访问最后这个FAT32主分区(这里的不正常,不是invalid media,而是无法看到里面的文件和目录结构),而xp和grub4dos却可以正常访问。
新的结论:除了大道兄所提到的DOS的bug以外,DOS 还有更多的bug,基本上可以概括为“DOS对多主分区的支持有严重缺陷”,尤其在某些机型上。