中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-06-26 08:17
中国DOS联盟论坛 » 其它操作系统综合讨论区 » [有分竟猜] DBR被清零,仍正常工作,为什么? 查看 1,736 回复 12
楼 主 [有分竟猜] DBR被清零,仍正常工作,为什么? 发表于 2007-04-14 07:37 ·  中国 广东 广州 教育网
铂金会员
★★★★
C++启程者
积分 5,154
发帖 1,827
注册 2003-07-18 00:00
22年会员
UID 7105
性别 男
状态 离线
刚才测试程序时发现有意思的现象:

纯DOS下:
备份DBR,清零DBR(第一分区,主盘, C:盘), 但显示文件仍然正常!
重启后,分区仍然工作正常!

(带着好奇,到了XP, 结果说未格式化! )
真是先进的不如落后的!

后来发现了原因,先不说,望大家猜猜...
才上的给你的帖子加分!
加油猜啊!
2 发表于 2007-04-14 11:38 ·  中国 湖南 岳阳 电信
新手上路
积分 6
发帖 3
注册 2007-04-14 10:49
19年会员
UID 85131
性别 男
状态 离线
dbr是什么?(不好意思)
3 发表于 2007-04-17 17:25 ·  中国 广西 百色田阳县 电信
新手上路
积分 16
发帖 8
注册 2006-09-16 00:40
19年会员
UID 62704
状态 离线
楼主说看,期待中....
4 发表于 2007-04-18 07:19 ·  中国 上海 黄浦区 电信
金牌会员
★★★★
积分 4,639
发帖 2,239
注册 2005-01-30 00:00
21年会员
UID 35785
性别 男
状态 离线
除了 DBR 中的 BPB 外,DOS 启动时自己会在内存中建立各个它所能识别分区的 BPB 参数,所以它可以不依赖 DBR 而访问分区。

这个帖子发在 Windows 讨论区不合适。

[ Last edited by DOSforever on 2007-4-18 at 07:20 AM ]
5 发表于 2007-04-18 11:41 ·  中国 广东 广州 教育网
铂金会员
★★★★
C++启程者
积分 5,154
发帖 1,827
注册 2003-07-18 00:00
22年会员
UID 7105
性别 男
状态 离线
除了 DBR 中的 BPB 外,DOS 启动时自己会在内存中建立各个它所能识别分区的 BPB 参数,所以它可以不依赖 DBR 而访问分区。


你说的可能是DOS启动好的DBR后,可以不依赖, 可是我说的是清零DBR,再重启以后进入DOS,访问此分区的文件仍然没问题!

放在这版块是因为, 此种情况在WIN就不能访问了....
6 发表于 2007-04-18 21:53 ·  中国 上海 黄浦区 电信
金牌会员
★★★★
积分 4,639
发帖 2,239
注册 2005-01-30 00:00
21年会员
UID 35785
性别 男
状态 离线
我说的就是先清 DBR ,然后再启动 DOS ,仍然可以正常访问此分区的文件。

如此看来你可能又发现了另一种机制。

此类较底层的问题还是发在 DOS 板块比较好。既然 Windows 不能访问了,那我们就不考虑它的问题了。
7 发表于 2007-04-18 22:23 ·  中国 广东 广州 教育网
铂金会员
★★★★
C++启程者
积分 5,154
发帖 1,827
注册 2003-07-18 00:00
22年会员
UID 7105
性别 男
状态 离线
除了 DBR 中的 BPB 外,DOS 启动时自己会在内存中建立各个它所能识别分区的 BPB 参数


问题是 没有了DBR的BPB, DOS根据什么在内存中建呢?
分区的信息只有在DBR中的BPB中, 其他地方是没有的!
没有了DBR 的BPB , DOS 根本就不会自己搜索整个分区的全部信息, 况且它连它自己多大都不知道,它怎么确定要搜索的范围? 如果它能这样做的话, 根本就不需要PQ/PARAGON 等等分区工具了...
8 发表于 2007-04-19 00:36 ·  中国 上海 黄浦区 电信
金牌会员
★★★★
积分 4,639
发帖 2,239
注册 2005-01-30 00:00
21年会员
UID 35785
性别 男
状态 离线
看来原因找到了,这只对 FAT32 有效。为了不影响其他人的猜测,我只说一个字——6

Re: GOGO
你说的这个现象我以前遇到过,至于当时的 DBR 怎么会被清零的忘了,只记得在 DOS 下查看 DBR 全是0,而访问却能正常访问,我也觉得奇怪。看了下 DOS 自己有关于 BPB 参数的报告,于是就以为 DOS 自己也能根据分区的信息生成 BPB 参数,尽管和实际的有差别,但还能用。现在看来不是如此,至于 DOS 在没有 DBR 信息的情况下自己是怎么产生 BPB 参数的我也不清楚。呵呵

另外,有个概念我认为你搞混了,DOS 自己是不知道分区信息的,确实需要先有分区工具分区,然后它才认,但是有分区和能访问这个分区是两回事,承认这个分区要有分区表,但访问这个分区要有 BDR (中的 BPB )。
本帖最近评分记录 (共 1 条) 点击查看详情
评分人分数时间
GOTOmsdos +10 2007-04-19 02:33
9 发表于 2007-04-19 02:32 ·  中国 广东 广州 教育网
铂金会员
★★★★
C++启程者
积分 5,154
发帖 1,827
注册 2003-07-18 00:00
22年会员
UID 7105
性别 男
状态 离线
6

恩, 你猜中了! 加分.

有个概念我认为你搞混了,DOS 自己是不知道分区信息的


DOS 自己是不知道分区信息的, 这句话就是说,DOS系统(或它的程序,命令)
一定要依据磁盘分区的DBR的BPB来运作(当然,启动后<可能>只需要仅仅读取一次),没有它, 它就不能对分区操作,
<不管在分区表中有没有这个分区!>
换句话说, DOS自己是没有搜索分区信息的功能的 .

所以,这句话没有错啊. 这句话的重点是DOS(访问分区的原理,对DBR的依赖)
你说的区分<有分区>和<分区能否被访问>,这个当然是知道的,其重点是分区访问除了有这个分区外,还需要分区格式,即: DBR, FAT 等等,这些是通过格式化工具完成,这样才具备能被访问的基本条件,最终条件是要有个操作系统来访问(可以是DOS,WIN, LINUX 等等,或者是启动盘...),其重点是分区(能被访问的条件)

尽管有紧密联系,但它们的主题不同,都有各自的含义.

[ Last edited by GOTOmsdos on 2007-4-19 at 02:39 AM ]
本帖最近评分记录 (共 1 条) 点击查看详情
评分人分数时间
DOSforever +1 2007-04-19 03:06
10 发表于 2007-04-19 03:06 ·  中国 上海 黄浦区 电信
金牌会员
★★★★
积分 4,639
发帖 2,239
注册 2005-01-30 00:00
21年会员
UID 35785
性别 男
状态 离线
呵呵,其实我倒是应该感谢你。不然的话我还会一直以为下去。关于 FAT32 的这个特性一开始我还以为是手动恢复时让你用的,没想到 DOS 可以自动使用,而 Windows 特别是 NT 系列的看来确实越来越笨了。哈哈(9x 还没试过,既然 7.1 认了那它也应该认吧)

我也应该为你加分,但考虑到你的分数已经够多了,所以就加1分意思意思吧,呵呵。
11 发表于 2007-04-19 03:32 ·  中国 广东 广州 教育网
铂金会员
★★★★
C++启程者
积分 5,154
发帖 1,827
注册 2003-07-18 00:00
22年会员
UID 7105
性别 男
状态 离线
恩, 互相学习吧...
12 发表于 2007-04-19 04:53 ·  中国 上海 黄浦区 电信
金牌会员
★★★★
积分 4,639
发帖 2,239
注册 2005-01-30 00:00
21年会员
UID 35785
性别 男
状态 离线
Originally posted by sinoliu at 2007-4-14 11:38:
dbr是什么?(不好意思)

“DOS 分区”引导记录的简称——DOS Boot Record
13 发表于 2010-02-01 20:51 ·  中国 辽宁 鞍山 联通
新手上路
积分 5
发帖 2
注册 2007-04-02 20:04
19年会员
UID 83732
性别 男
状态 离线
是不是DOS自动访问了位于第6扇区的DBR备份.
但如果位于6扇的DBR也坏了,
那是不是在DOS下也无法访问了。

或者反着理解,一旦DOS都无法访问此分区,就是此分区的DBR备份也坏了。
论坛跳转: