Windows系统引导过程以及多系统引导原理-

系统启动的两种引导方式

计算机系统引导方式主要有两种:一种是传统的BIOS模式,另一种是新型UEFI(全称统一的可扩展固件接口)模式。UEFI启动也可以看作是Bios的升级版。不同模式对应不同的磁盘分区类型,BIOS只可以识别MBR分区;而UEFI可同时识别MBR分区和GPT分区,所以在UEFI下可以启动不同磁盘类型中的操作系统。

BIOS芯片

  • BIOS+MBR引导过程

BIOS引导过程:开机自检>BIOS>MBR(主引导记录)–>DPT(磁盘分区表)>PBR(分区引导记录)> Bootmgr(引导管理器)/NTLDR>BCD(从vista开始的引导配置数据)/boot.ini(XP 引导配置文件)>Winload.exe>内核加载 >windows vista+/windows xp

  1. 开机自检,BIOS先要对CPU初始化,然后跳转到BIOS启动处进行POST自检,(此过程如有严重错误,则电脑会用不同的报警声音提醒),接下来采用读中断的方式加载各种硬件,完成硬件的初始化。
  2. 读入MBR(主引导记录),MBR主要功能是在分区表(DPT)中寻找可引导的活动分区(也叫激活主分区),并找到该分区的引导扇区(分区的第一个扇区)中的分区引导记录(PBR),载入PBR中的启动管理器(bootmgr.exe或NTLDR)。注意:MBR磁盘分区格式下,一个磁盘只允许有一个分区是活动的,因此启动文件(bootmgr、BCD)必须存放在活动的主分区内,这样才能找到系统载入程序。
  3. 启动管理器读取该分区boot文件夹里的启动配置文本BCD(或根目录下boot.ini),然后根据启动设置文件定位并加载二级引导载入程序winload.exe来加载OS内核。如果有多个系统,启动配置文件就会有多个启动项,相应的bootmgr也会提供选择菜单,然后则根据用户选择来决定加载哪个系统的Winload(多系统引导选择)。
  • UEFI+GPT 引导过程

UEFI引导过程:开机>UEFI>GPT分区表>ESP分区(也称EFI分区)>\efi\Microsoft\boot\bootmgfw.efi>efi\Microsoft\BCD>\Windows\system32\winload.efi。此过程没有MBR参与。

  1. 开机启动自检,执行UEFI初始化模块;
  2. UEFI执行后,会进行CPU、北桥、南桥及存储器初始化工作,当这部分设备就绪后,紧接着它就载入UEFI驱动执行环境(Driver Execution Environment,简称DXE)。当DXE被载入时,系统就可以加载硬件设备的UEFI驱动程序了。DXE使用了枚举的方式加载各种总线及设备驱动,UEFI驱动程序可以放置于系统的任何位置,只要保证它可以按顺序被正确枚举。借助这一点,我们可以把众多设备的驱动放置在磁盘的UEFI专用分区中(ESP分区),当系统正确加载这个磁盘后,这些驱动就可以被读取并应用了。在这个特性的作用下,即使新设备再多,UEFI也可以轻松地一一支持,由此克服了传统BIOS捉襟见肘的情形。UEFI能支持网络设备并轻松联网,原因就在于此。
  3. 从EFI分区找到启动管理器(\efi\Microsoft\boot\bootmgfw.efi)。
  4. 启动管理器导入EFI分区BCD文件(efi\Microsoft\BCD),然后根据其配置内容加载引导加载程序winload.efi(C:\Windows\system32\winload.efi)来加载OS内核。如果BCD中有多个配置项,则会让用户选择要启动的系统。如果有多个系统,启动设置文件就会有多个启动项,相应的bootmgr也会提供选择菜单,然后则根据用户选择来决定加载哪个系统的Winload(多系统引导原理)。

在GPT磁盘格式下,windows系统的启动文件和启动配置文件(bootmgfw.efi、BCD)是存放在一个不可见的FAT格式的分区里的(也叫ESP分区或EFI分区)。

多系统启动原理

多系统启动(以Windows系统为例)中,BIOS+MBR和UEFI+GPT的引导方法基本上是一样的,都是通过启动配置文件(BCD或boot.ini)来显示启动菜单,当用户选中其中某个启动项后,启动管理器会加载不同分区的Winload以启动此分区下的操作系统。

Windows系统启动引导过程相关推荐

  1. Windows NT引导过程源代码分析

    Windows 引导过程 Windows 内核中的各个组件和各种机制在起作用以前,必须首先被初始化.此初始化工作是在系统引导时完成的.当用户打开计算机的电源开关时,计算机便开始运行,但操作系统并不立即 ...

  2. windows 7 引导过程概述

    windows 7 引导过程概述 原文地址:http://blog.csdn.net/richion/article/details/4414189 Window 7 的核心版本号是 NT6.1 ,和 ...

  3. windows操作系统的引导过程描述

    一般情况系统的引导过程是这样的: 1.电源自检程序开始运行 2.主引导记录被装入内存,并且程序开始执行 3.活动分区的引导扇区被装入内存 4.NTLDR从引导扇区被装入并初始化 5.将处理器的实模式改 ...

  4. Windows操作系统引导过程

    Windows作为最流行的个人计算机操作系统,成为了我们学习.工作和生活的一部分.从计算机通电到Windows启动完成,这具体是怎样的过程?跟着小编一起去探索吧. Windows引导过程 Window ...

  5. linux引导过程简述6,CentOS 6系统启动引导过程讲解

    POST --> BootSequence(BIOS) --> BootLoader --> Kernel (ramdisk) --> rootfs --> /sbin/ ...

  6. Windows引导过程(BIOS,UEFI)

    通电后CPU首先执行的是主板引导程序,主板引导程序可分为BIOS和UEFI.BIOS是最早的方案,搭配MBR分区使用,BIOS逐渐被UEFI代替,UEFI一般搭配GPT分区使用,所以引导过程会有两种情 ...

  7. 计算机原理-OS-引导-内核引导过程详解

    本文翻译并且修改自:http://duartes.org/gustavo/blog/ 微信公众号:技术原理君 最新个人博客 shankusu.me 今天让我们深入内核,去看看操作系统是怎么启动的吧.由 ...

  8. uefiboot 文件_UEFI BIOS模式下Windows系统启动过程以及引导文件修复方法

    UEFI BIOS→ESP分区→\efi\Microsoft\boot\bootmgfw.efi→efi\Microsoft\Boot\BCD→\Windows\system32\winload.ef ...

  9. UEFI BIOS模式下Windows系统启动过程以及引导文件修复方法

    UEFI BIOS→ESP分区→\efi\Microsoft\boot\bootmgfw.efi→efi\Microsoft\Boot\BCD→\Windows\system32\winload.ef ...

最新文章

  1. Linux如何编译安装源码包软件
  2. hadoop(ha)hbase(双master)安装
  3. 华为防火墙查看日志命令_防火墙接入互联网方式,到底有哪些呢?5分钟学会防火墙入网...
  4. 计算机在外语专业中有哪些应用,CALL(3):计算机在外语教学中的应用
  5. java泛型和注解,泛型 · 注解和泛型 · 看云
  6. 基础知识—函数-函数概述
  7. 【 D3.js 入门系列 --- 7 】 理解 update, enter, exit 的使用
  8. 简书优秀IT专栏作者推荐
  9. android design library提供的TabLayout的用法
  10. php浮动广告,JavaScript实现漂浮广告代码的实例总结
  11. 主板检测卡c5_主板检测卡代码大全
  12. win7显示u盘efi分区_win7下找不到u盘efi分区
  13. html5 放风筝,北京最全的放风筝5大最佳地点,地广人稀,不用花钱
  14. Mac 修改移动硬盘图标,U盘图标
  15. matlab三点绘制三角形,matlab画三角形网格
  16. 简洁的圆形时钟数字时钟+指针时钟(1+X Web前端开发初级 例题)
  17. 优雅发送HTTP请求
  18. 高德Location
  19. 易捷行云荣登“2020行业信息化百强之云计算大数据20强榜单”
  20. 4.2-知识图谱在电商领域中的应用实践

热门文章

  1. 论文抄袭屡屡发生 深思论文查重必要性
  2. c++求解一个五位数里回文数的个数
  3. Docker中的网络详解
  4. 微软拼音输入法安装失败,弹窗提示:安装未完成
  5. [APP]Ubuntu快速安装微信(仅需1分钟)
  6. 实习笔记 —— Maven
  7. 豌豆淘浅谈社群经济,掌握社群流量就是掌握未来!
  8. 海森伯模型的严格对角化方法
  9. 关于iOS Widget(Locket Widget App)
  10. CRC-16 Modbus代码