|
大家知道,FORMAT是一款DOS中的高级格式化工具,它有一个重要的作用是能够在执行高级格式化的时候,写入此分区的DBR,在DBR中添加引导程序,DBR中的引导程序在不同版本的操作系统中是不同的。。。。(这些是讨论如下问题的前提)
在制作一个简单的启动盘时,它也可以发挥作用,可以这样,用FORMAT格式化一个空软盘,将任何版本的MS.DOS的IO.SYS、MSDOS.SYS与COMMAND.COM三个系统文件集资直接拷入,得到该版本的系统启动盘,这样就得到了一个简单的启动盘、、、
但是,大家想过没有,我们平时在格式化硬盘的时候,大多数用的不是FORMAT格式化工具,而是其它的格式化工具,像DISKMAN,它可以在分区过后,立即执行高级格式化,
这样格式化的分区,也能安装操作系统。
但是问题是:
用DISKMAN格式化的时候,难道也能写入DBR扇区的引导程序?
DISKMAN格式化的时候,只能指定格式化成某种格式,如FAT32,NTFS,但是没有说格式成某种操作系统的格式
但事实是用DISKMAN格式化过的分区,是既能安装WINDOWS XP,也能安装WINDOWS 7
但是WINDOWS XP和WINDOWS 7系统所在分区中的DBR主引导程序是不同的
那么为什么用DISKMAN格式化过的分区,既能安装WINDOWS XP,也能安装WINDOWS 7?
假设操作系统所在分区的DBR引导程序不是DISKMAN指定的,那么难道安装操作系统时,操作能写入DBR的引导程序吗?
如果能写入,那么是用什么程序写入的呢?如果不能写入,那么DBR中的引导程序是什么软件写入的?
如上的一些问题,欢迎大家的讨论,希望在大家的讨论中,能让这个问题明晰起来。。。。
(如能论坛中的各位高手及大侠能够加入到讨论中,我将感激不尽。。在此鞠躬致谢!)
文献中这样说:“DBR引导代码主要根据DBR中的BPB表定义的文件系统格式参数,来访问和搜索操作系统的启动文件,对于WINDOWS XP系统,就是查找到NTLDR,并将NTLDR装入内存,再把引导控制权移交给NTLDR,第四阶段的引导就开始了”
在这段的第一句中,BPB表定义的文件系统格式参数,是如何被定义的,是在格式化分区之后安装操作系统时,被操作系统所定义的吗?还是被FORMAT定义的?那么这个定义是如果进行的?
DBR是由5个部分组成的,其中有系统版本号和磁盘参数块,也即BPB,再就是DOS引导程序,DOS引导程序是引导XP系统的NTLDR,还是引导WIN7系统的BOOTMGR,是根据什么判断的呢?是根据系统版本号还是BPB参数块??
欢迎大家的讨论。。。
对于不同的操作系统,DBR中的DOS引导程序到底是不是一样的呢?
我个人觉得DOS引导程序可以是一样,如果它是一样的话,DOS引导程序照样可以根据系统DBR中的系统版本号和BPB参数来判断引导何种启动文件(NTLDR或者bootmgr)
但是有的文献中说,不同操作系统系统的DOS引导程序是不同的,那我就不懂了,如果说WINDOWS XP和WIN7的所在分区的引导程序不同,那么不同在哪里?又是哪个程序写入的DOS引导程序,才让它不同?
大家觉得呢?
清华大学的一个著名的数据恢复方面的教授说:“DBR是由5个部分组成的,1.跳转指令 2厂商标识和系统版本号 3.磁盘参数块BPB 4.DOS引导程序 5结束标志 DBR的结束标志与分区表的结束标志相同,也是55AA,占用两个字节。
以上5个部分共占用512个字节,正好是一个扇区,该扇区的内容除第5部分结束标志字固定不变外,其余4个部分都是不确定的,会根据操作系统的版本,安装的磁盘类型不同而变化”。
以上是教授的一段话,他说会根据操作系统的版本而变化,难道意思是说,操作系统可以改写DBR中的某些代码吗?
但是又有文献中说,DBR是由高级格式化工具FORMAT写入的
DBR中的引导程序去引导操作系统的启动文件,到底是靠FORMAT写入的引导程序,还是操作系统写入的引导程序(如果它能写的话)?
这个关系到底是怎样的啊??
大家来讨论吧,谢谢
不点大师,你快出马吧,我一直期待着你过来讨论,我一直都很佩服你在启动方面的研究和你在论坛中的文采
不点大师,如果你能指点一二,本人将感激不尽,一生难忘你的教诲!
[ 本帖最后由 dgxhls 于 2011-4-13 22:02 编辑 ] |
|