无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
查看: 8038|回复: 16

请教高手:是谁来调用ntldr??它是怎么生成的?

[复制链接]
发表于 2007-10-4 00:23:17 | 显示全部楼层 |阅读模式
今天研究移动硬盘启动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??

还请高手指点一二。
发表于 2007-10-4 09:54:31 | 显示全部楼层
windows 2k, xp,2k3 格式化硬盘时会写入引导扇区引导ntldr的代码,每个分区都有,不论是不是主引导区。98,me 格式化硬盘时会写入引导扇区引导io.sys的代码
回复

使用道具 举报

发表于 2007-10-4 10:18:09 | 显示全部楼层
如果分区格式为NTFS
则自动就会产生NT52的启动扇区
该启动扇区具有从其分区上的NTLDR启动的功能

硬盘分MBR和PBR
PBR可以在格式化时损坏
MBR只有特定的操作才可以更改
例如安装XP过程中
或者dos下FDISK /MBR命令
或者用其他改写MBR的工具,例如grub4dos的bootlace,grubinst等

分区工具仅仅是分区操作,是不会更改MBR的

你的硬盘目前来讲还是微软的MBR
该mbr的功能是从活动分区的PBR启动
所以,只要你活动分区的PBR是nt52的,就会从ntldr启动
如果是nt60的,就会从bootmgr启动
回复

使用道具 举报

 楼主| 发表于 2007-10-4 14:05:01 | 显示全部楼层
多谢大侠指点!

看了你们的解释后,我的理解是:

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 18:32:17 | 显示全部楼层
原帖由 肉老虎 于 2007-10-4 02:05 PM 发表
多谢大侠指点!

看了你们的解释后,我的理解是:

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来查看
回复

使用道具 举报

 楼主| 发表于 2007-10-4 18:44:08 | 显示全部楼层
非常感谢!学到知识了:D
回复

使用道具 举报

 楼主| 发表于 2007-10-5 11:29:22 | 显示全部楼层
还有个问题,就是第3方软件,如用pq、sfdisk等格式化分区,它们怎么处理PBR?
回复

使用道具 举报

发表于 2007-10-6 02:16:50 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

发表于 2007-10-7 15:54:53 | 显示全部楼层
又学习了新的知识,谢谢!!!!!!!!!!
回复

使用道具 举报

发表于 2007-10-8 09:26:55 | 显示全部楼层
学了知识
长了学问
:victory:
回复

使用道具 举报

 楼主| 发表于 2007-10-8 17:53:06 | 显示全部楼层
经测试,那个引导扇区的内容是的确是格式化产生的。不同的格式化工具产生不同的引导内容。

测试(测试了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,很方便。
回复

使用道具 举报

发表于 2011-5-25 10:43:57 | 显示全部楼层
贴纸很好,只是有一事不解,既然直接调用ntldr,那么就跟DOS无关了,我以前是以为先加载DOS内核,然后由DOS启动NTLDR,那么为什么和DOS无关,删除command.com后会进不了操作系统呢?
回复

使用道具 举报

发表于 2011-5-25 21:42:57 | 显示全部楼层
原帖由 2011madlax 于 2011-5-25 10:43 发表
贴纸很好,只是有一事不解,既然直接调用ntldr,那么就跟DOS无关了,我以前是以为先加载DOS内核,然后由DOS启动NTLDR,那么为什么和DOS无关,删除command.com后会进不了操作系统呢?

那你在XP系统下把C盘的IO。SYS。COMMAND。COM干掉。看看系统会不会启动不了。
回复

使用道具 举报

发表于 2012-12-6 16:16:53 | 显示全部楼层
是07年的帖子很老了,但是lz问的问题也是我想要知道的。我一直在找ntldr的答案,不知道百度了多少次终于找到了!!!
学了知识
长了学问
回复

使用道具 举报

发表于 2012-12-6 19:09:27 | 显示全部楼层
温故知新
简单点就是NTDETECT.COM
回复

使用道具 举报

 楼主| 发表于 2018-2-8 16:25:46 | 显示全部楼层
故地重游
回复

使用道具 举报

发表于 2020-5-2 02:16:43 来自手机 | 显示全部楼层
要用xorboot制作移动硬盘启动,想知道pe的启动过程,在百度搜相关知识找到了这个老贴子,学了新知识了。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-4-19 07:57

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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