请教高手:是谁来调用ntldr??它是怎么生成的?
今天研究移动硬盘启动PE,有个方法是:——————
先把移动硬盘接入别的正常使用的电脑。运行PARTITIONMAGIC 8.05,对移动硬盘进行分区。
在硬盘的最前面分出一块空间,建立主分区,激活
把pe盘中的setupldr.bin 放到移动硬盘活动主分区的根目录下,改名为ntldr,其它的镜像文件等也放根目录。
————————
我试了一下,成功。(不过我的硬盘是早已经分好区的,以前装了什么系统记不清楚了。可能是98,各分区格式化过,现装数据用)
可我就是想知道原理:到底是谁调用了ntldr???
我找了下有这么个介绍:
“MS_Webcast系列之Windows启动的幕后过程
1、系统加电,读取主引导扇区(MBR)
MBR中包含了读取分区表的代码
X86系统的分区表有四个条目
第一个标识为活动的分区为系统卷(System Volume)
MBR加载系统卷中的引导扇区
2、引导扇区(NT相关的):读取系统卷根目录并加载NTLDR
注:MRB和引导扇区都是在系统安装时写入的
通过默认的磁盘定位来进行读取,不需要文件系统干预
3、NTLDR(黑屏)
把系统从16位切换到32位,并开启内在分页(page) ……”
根据这个说法是引导扇区加载了ntldr。
那么这个引导扇区是怎么来的?据上面说是“在系统安装时写入的”
那么我的问题是如果我的移动硬盘从来没装过系统,那引导扇区还会有吗?如果没有那这个硬盘启动PE的方法就不成立了吗?
这个引导扇区除了安装系统时会写入,还有什么方法能写入?(分区、格式化能吗?)
如果我的移动硬盘以前是装过98的,用98或fdisk分的区,那这个引导扇区还会找ntldr吗(那时候还没有xp呢)?
具体怎么做的引导,才会找ntldr??
还请高手指点一二。 windows 2k, xp,2k3 格式化硬盘时会写入引导扇区引导ntldr的代码,每个分区都有,不论是不是主引导区。98,me 格式化硬盘时会写入引导扇区引导io.sys的代码 如果分区格式为NTFS
则自动就会产生NT52的启动扇区
该启动扇区具有从其分区上的NTLDR启动的功能
硬盘分MBR和PBR
PBR可以在格式化时损坏
MBR只有特定的操作才可以更改
例如安装XP过程中
或者dos下FDISK /MBR命令
或者用其他改写MBR的工具,例如grub4dos的bootlace,grubinst等
分区工具仅仅是分区操作,是不会更改MBR的
你的硬盘目前来讲还是微软的MBR
该mbr的功能是从活动分区的PBR启动
所以,只要你活动分区的PBR是nt52的,就会从ntldr启动
如果是nt60的,就会从bootmgr启动 多谢大侠指点!
看了你们的解释后,我的理解是:
1、ntldr是由PBR来调用的,而PBR是由格式化时改写的。就是不同系统格式化后的PBR不同。98、vista格式化的盘,不会去调用ntldr。
2、那么在98下安装xp,在没有格式化的情况下,一样启动了ntldr,是不是xp安装程序修改了PBR?
3、除了格式化,还有什么工具能转换修改PBR?比如说:我的硬盘是dos分区格式化的,它不能引导ntldr吧,我怎么能让它能转换成能引导ntldr的?
4、如何查看一块无系统硬盘的PBR状态?就是想知道它能引导ntldr还是bootmgr还是dos? 原帖由 肉老虎 于 2007-10-4 02:05 PM 发表 http://bbs.wuyou.net/images/common/back.gif
多谢大侠指点!
看了你们的解释后,我的理解是:
1、ntldr是由PBR来调用的,而PBR是由格式化时改写的。就是不同系统格式化后的PBR不同。98、vista格式化的盘,不会去调用ntldr。
2、那么在98下安装xp, ...
当然
XP安装程序不仅会修改MBR
而且会修改活动分区的PBR
修改PBR的方法也很多
例如想具有NT52的PBR
可以用windows下的bootsect程序来修改
bootsect /nt52 目标盘符
想具有vista的nt60的PBR
bootsect /nt60 目标盘符
dos下也有类似软件,但是不如在windows下方便
例如bootpart程序
想查看硬盘
需要使用到磁盘编辑工具
查看硬盘绝对第一扇区可以完整的看到MBR内容(mbr在第一扇区前446字节)
查看PBR可以转到该分区的第一扇区上,在PE下用WINHEX比较方便
DOS下用norton的disk editor来查看 非常感谢!学到知识了:D 还有个问题,就是第3方软件,如用pq、sfdisk等格式化分区,它们怎么处理PBR? 又学习了新的知识,谢谢!!!!!!!!!! 学了知识
长了学问
:victory: 经测试,那个引导扇区的内容是的确是格式化产生的。不同的格式化工具产生不同的引导内容。
测试(测试了fat32格式):
1、用98盘启动,将激活分区(下同)用sfdisk格式化成fat32格式,拷入PE启动文件,启动失败。
无顺序拷入98启动文件msdos.sys、io.sys、command.com,启动98成功。
用diskgen格式化该分区,拷入PE启动文件,启动pe失败。
经查看,这2种软件格式化成fat格式的引导内容均指向io.sys等文件。
2、用xp、pe将该分区快速格式化后,拷入PE启动文件,启动pe成功。
经查看,引导内容是指向ntldr的。
查看工具使用了diskgen,很方便。 贴纸很好,只是有一事不解,既然直接调用ntldr,那么就跟DOS无关了,我以前是以为先加载DOS内核,然后由DOS启动NTLDR,那么为什么和DOS无关,删除command.com后会进不了操作系统呢? 原帖由 2011madlax 于 2011-5-25 10:43 发表 http://bbs.wuyou.net/images/common/back.gif
贴纸很好,只是有一事不解,既然直接调用ntldr,那么就跟DOS无关了,我以前是以为先加载DOS内核,然后由DOS启动NTLDR,那么为什么和DOS无关,删除command.com后会进不了操作系统呢?
那你在XP系统下把C盘的IO。SYS。COMMAND。COM干掉。看看系统会不会启动不了。 是07年的帖子很老了,但是lz问的问题也是我想要知道的。我一直在找ntldr的答案,不知道百度了多少次终于找到了!!!
学了知识
长了学问 温故知新
简单点就是NTDETECT.COM 故地重游 要用xorboot制作移动硬盘启动,想知道pe的启动过程,在百度搜相关知识找到了这个老贴子,学了新知识了。
页:
[1]