NTLDR和Bootfont.bin的作用
来源:互联网 发布:子承父业 知乎 编辑:程序博客网 时间:2024/05/16 08:15
不是WIN2K也好WINXP还是WIN2003也好,正常启动都离不开几个重要的系统文件:
1、ntldr
2、NTDETECT
3、bootfont.bin
4、boot.ini
其中
一.预启动
首先计算机通电进行自检,并由BIOS(即基本输入输出系统)完成基本硬件配置,然后读取硬盘的MBR(主引导记录)检查硬盘分区表以确定引导分区,并将引导分区上的操作系统引导扇区调入内存中执行,此处即执行NTLDR(操作系统加载器)文件。
* Windows2000/XP支持多重启动。它在安装时会首先将已存在的其它操作系统引导扇区保存为BOOTSECT.DOS文件(位于活动分区根目录下),并修改系统引导扇区,以便系统启动时加载NTLDR文件,从而达到多重启动的目的。而Windows98则不具备这个功能,因此如果先装好 Windows2000/XP后再装Windows98会破坏掉Windows2000/XP的引导记录,导致2000/XP不能启动。
二.启动
1.首先进行出始化,NTLDR会把处理器从实模式转换为32位保护模式,根据实验它还包含“Windows系统选择菜单”和“Windows高级选项菜单”(就是按F8后那个)中显示的内容.
2.读取BOOT.INI文件。该文件位于活动分区根目录下,它的作用是使系统在启动过程中出现选择菜单,由用户选择希望启动的操作系统。如果选择启动 Windows2000/XP,NTLDR会继续引导进行以下过程;如果选择为非Windows2000/XP系统,NTLDR则会读取系统引导扇区副本 BOTSECT.DOS转入启动相应系统。
* 其中[BOOT LOADER]即操作系统加载器,指定系统选择菜单默认等待时间和默认引导的操作系统。可手工修改或在控制面板中修改,为了保险起见,建议在控制面板中修改。依次选择控制面板-〉系统-〉高级->启动和故障恢复,即可更改相关设置。(在WindowsXP中还有另一种方法,即运行msconfig (系统配置实用程序)。
[OPERATING SYSTEMS]段指定操作系统列表,由双引号括起来的部分就是列表所显示的内容,可任意修改,使其更加个性化。
* 形如MULTI(0)DISK(0)RDISK(0)PARTITION(1)格式的语句被称为ARC路径,它的格式为:
MULTI()——指定磁盘控制器(若为SCSI控制器,则此处应替换为SCSI())
DISK()——指定SCSI设备编号(对于MULTI该处值始终为0)
RDISK()——指定IDE设备编号(对于SCSI,此处被忽略)
PARTITION()——指定分区编号。除分区编号由1开始外,其余编号均从0开始。
参数/FASTDETECT表示禁用串行鼠标检测,是系统默认值。还有几个常见参数:MAXMEM——指定Windows2000/XP可用内存容量; BASEVIDEO——使用标准VGA显示驱动程序;NOGUIBOOT——启动过程中不显示图形屏幕;SOS——加载设备驱动程序时显示其名称。
* 在操作系统选择菜单中的中文字体由位于活动分区根目录下的BOOTFONT.BIN文件提供。
3.系统加载NTDETECT.COM文件。由它来检测机器硬件,如并行端口,显示适配器等等,并将收集到的硬件列表返回NTLDR用于以后在注册表中注册保存。
4.如果Windows2000/XP有多个硬件配置文件,此时会出现选择菜单,等待用户确定要使用的硬件配置文件,否则直接跳过此步,启用默认配置。
* 硬件配置文件是指保存计算机特定硬件配置的系统文件。可以创建多个不同的硬件配置文件以满足计算机在不同场合的应用。可以依次选择控制面板-〉系统->硬件-〉硬件配置文件作出修改。
三.装载内核
引导过程开始装载Windows2000/XP内核NTOSKRNL.EXE。这个文件位于Windows2000/XP安装文件夹下的SYSTEM32文件夹中。随后,硬件抽象层(HAL)被引导进程加载,完成本步骤。
* 硬件抽象层(HAL):隐藏特定平台的硬件接口细节,为操作系统提供虚拟硬件平台,使其具有硬件无关性,可在多种平台上进行移植。
四.初始化内核
内核完成初始化,NTLDR将控制权转交Windows2000/XP内核,后者开始装载并初始化设备驱动程序,以及启动WIN32子系统和WINDOWS2000/XP服务。
五.用户登录
开始登录进程。由WIN32子系统启动WINLOGON.EXE,并由它启动LOCAL SECURITY AUTHORITY(LSASS.EXE)显示登录对话框。用户登录后,WINDOWS2000/XP会继续配置网络设备和用户环境。最后,伴随着微软之声和我们熟悉的个性化桌面,WINDOWS2000/XP漫长的启动过程终于完成
1、ntldr
2、NTDETECT
3、bootfont.bin
4、boot.ini
其中
一.预启动
首先计算机通电进行自检,并由BIOS(即基本输入输出系统)完成基本硬件配置,然后读取硬盘的MBR(主引导记录)检查硬盘分区表以确定引导分区,并将引导分区上的操作系统引导扇区调入内存中执行,此处即执行NTLDR(操作系统加载器)文件。
* Windows2000/XP支持多重启动。它在安装时会首先将已存在的其它操作系统引导扇区保存为BOOTSECT.DOS文件(位于活动分区根目录下),并修改系统引导扇区,以便系统启动时加载NTLDR文件,从而达到多重启动的目的。而Windows98则不具备这个功能,因此如果先装好 Windows2000/XP后再装Windows98会破坏掉Windows2000/XP的引导记录,导致2000/XP不能启动。
二.启动
1.首先进行出始化,NTLDR会把处理器从实模式转换为32位保护模式,根据实验它还包含“Windows系统选择菜单”和“Windows高级选项菜单”(就是按F8后那个)中显示的内容.
2.读取BOOT.INI文件。该文件位于活动分区根目录下,它的作用是使系统在启动过程中出现选择菜单,由用户选择希望启动的操作系统。如果选择启动 Windows2000/XP,NTLDR会继续引导进行以下过程;如果选择为非Windows2000/XP系统,NTLDR则会读取系统引导扇区副本 BOTSECT.DOS转入启动相应系统。
* 其中[BOOT LOADER]即操作系统加载器,指定系统选择菜单默认等待时间和默认引导的操作系统。可手工修改或在控制面板中修改,为了保险起见,建议在控制面板中修改。依次选择控制面板-〉系统-〉高级->启动和故障恢复,即可更改相关设置。(在WindowsXP中还有另一种方法,即运行msconfig (系统配置实用程序)。
[OPERATING SYSTEMS]段指定操作系统列表,由双引号括起来的部分就是列表所显示的内容,可任意修改,使其更加个性化。
* 形如MULTI(0)DISK(0)RDISK(0)PARTITION(1)格式的语句被称为ARC路径,它的格式为:
MULTI()——指定磁盘控制器(若为SCSI控制器,则此处应替换为SCSI())
DISK()——指定SCSI设备编号(对于MULTI该处值始终为0)
RDISK()——指定IDE设备编号(对于SCSI,此处被忽略)
PARTITION()——指定分区编号。除分区编号由1开始外,其余编号均从0开始。
参数/FASTDETECT表示禁用串行鼠标检测,是系统默认值。还有几个常见参数:MAXMEM——指定Windows2000/XP可用内存容量; BASEVIDEO——使用标准VGA显示驱动程序;NOGUIBOOT——启动过程中不显示图形屏幕;SOS——加载设备驱动程序时显示其名称。
* 在操作系统选择菜单中的中文字体由位于活动分区根目录下的BOOTFONT.BIN文件提供。
3.系统加载NTDETECT.COM文件。由它来检测机器硬件,如并行端口,显示适配器等等,并将收集到的硬件列表返回NTLDR用于以后在注册表中注册保存。
4.如果Windows2000/XP有多个硬件配置文件,此时会出现选择菜单,等待用户确定要使用的硬件配置文件,否则直接跳过此步,启用默认配置。
* 硬件配置文件是指保存计算机特定硬件配置的系统文件。可以创建多个不同的硬件配置文件以满足计算机在不同场合的应用。可以依次选择控制面板-〉系统->硬件-〉硬件配置文件作出修改。
三.装载内核
引导过程开始装载Windows2000/XP内核NTOSKRNL.EXE。这个文件位于Windows2000/XP安装文件夹下的SYSTEM32文件夹中。随后,硬件抽象层(HAL)被引导进程加载,完成本步骤。
* 硬件抽象层(HAL):隐藏特定平台的硬件接口细节,为操作系统提供虚拟硬件平台,使其具有硬件无关性,可在多种平台上进行移植。
四.初始化内核
内核完成初始化,NTLDR将控制权转交Windows2000/XP内核,后者开始装载并初始化设备驱动程序,以及启动WIN32子系统和WINDOWS2000/XP服务。
五.用户登录
开始登录进程。由WIN32子系统启动WINLOGON.EXE,并由它启动LOCAL SECURITY AUTHORITY(LSASS.EXE)显示登录对话框。用户登录后,WINDOWS2000/XP会继续配置网络设备和用户环境。最后,伴随着微软之声和我们熟悉的个性化桌面,WINDOWS2000/XP漫长的启动过程终于完成
- NTLDR和Bootfont.bin的作用
- NTLDR和Bootfont.bin的作用
- 系统启动菜单变英文都是bootfont.bin惹的祸
- matlab bin()函数的作用和注意事项
- .NET里面Bin目录和Obj目录的作用
- jdk安装目录下lib和bin的作用
- #!/usr/bin/python的作用
- #!/usr/bin/python的作用
- #!/usr/bin/python的作用
- NTLDR的故事:用途和常见故障分析方法
- 丢失ntldr的解决方法
- NTLDR丢失的恢复
- NTLDR的原理
- linux 下 /bin /sbin 的区别 和一些主目录的作用
- bin,app_code,app_data 等文件夹的作用
- bin,app_code,app_data 等文件夹的作用
- bin,app_code,app_data 等文件夹的作用
- bin,app_code,app_data 等文件夹的作用
- C++/CLI中的for each
- UML建模—用例与需求
- Photoshop入门与进阶实例:3.5 透明晶格纹理效果
- JAVA试题
- 行动中开火 (转载)
- NTLDR和Bootfont.bin的作用
- 编译KVM
- C++/CLI中的Checked Iterators
- net 学习资源列表
- Photoshop入门与进阶实例:4.1 闪电
- 学海无涯,war3作舟
- 大脑喜欢“吃”什么
- 读取用户键盘输入的方法
- Ifconfig网络配置工具详解