【操作系统安装与引导】Windows引导详解

    本章将详细介绍操作系统引导,来为后面的操作系统安装学习奠定基础,不过这也是十分枯燥的一章,涉及的所有都是理论知识,掌握了这些理论知识,你能更好的玩好操作系统

    一.BIOS及UEFI引导概念

    BIOS:

      BIOS是英文"Basic Input Output System"的缩略词,直译过来后中文名称就是"基本输入输出系统"。在IBM PC兼容系统上,是一种业界标准的固件接口BIOS这个字眼是在1975年第一次由CP/M操作系统中出现。BIOS是个人电脑启动时加载的第一个软件。

       其实,它是一组固化到计算机内主板上一个ROM芯片上的程序,它保存着计算机最重要的基本输入输出的程序、开机后自检程序和系统自启动程序,它可从CMOS中读写系统设置的具体信息。 其主要功能是为计算机提供最底层的、最直接的硬件设置和控制。此外,BIOS还向作业系统提供一些系统参数。系统硬件的变化是由BIOS隐藏,程序使用BIOS功能而不是直接控制硬件。现代作业系统会忽略BIOS提供的抽象层并直接控制硬件组件。

       当今,此系统已成为一些病毒木马的目标。一旦此系统被破坏,其后果不堪设想。(百度百科)

       现在,BIOS已经被全新的UEFI所淘汰,从Windows8开始,微软操作系统已经普遍采用UEFI引导,下面将主要讲解UEFI

    EFI:

       EFI,可扩展固件接口英文名Extensible Firmware Interface 的缩写,是英特尔,一个主导个人电脑技术研发的公司推出的一种在未来的类PC的电脑系统中替代BIOS的升级方案

       注:EFI是以小型磁盘分区的形式存放在硬盘上的,并非在BIOS的FLASH里面

    UEFI:

        UEFI(统一可扩展固件接口)由 UEFI 论坛统一管理,UEFI 论坛是由芯片组供应商、硬件供应商、系统供应商、固件供应商和操作系统供应商联合组建的一个组织。该论坛负责维护可跨多种 UEFI PC 使用的规范、测试工具和参考实现。Microsoft 是该论坛的董事会成员,该论坛对所有个人和公司开放,加入该论坛无需支付任何费用。
UEFI 为个人计算机定义了下一代固件接口。基本输入和输出系统 (BIOS) 固件最初采用汇编语言进行编程,并使用中断来执行输入/输出操作,在出现之初即确定了 PC 生态系统的基本框架,但是随着计算技术的发展,“现代固件”定义应运而生,以满足下一代平板电脑和设备的需求。
UEFI 旨在定义一种标准通信方式,规范启动过程中操作系统与平台固件之间的通信。在 UEFI 出现之前,在启动过程中主要利用软件中断机制与硬件进行通信。现代 PC 可以在硬件和软件之间更快速、更高效地执行块输入/输出操作,在设计中使用 UEFI 可以发挥硬件的全部潜能。

UEFI 支持模块化固件设计,硬件设计师和系统设计师在为要求更高的现代计算环境设计固件时,具有更高的灵活性。由于输入/输出受到软件中断的限制,UEFI 提出了基于事件的概念,并采用不依赖于体系结构的编码标准。

    UEFI与EFI的区别:

        UEFI的全称是Unified Extensible Firmware Interface,中文名字是统一的可扩展固件接口。它定义了一种在操作系统和平台固件之间的接口标准,这种接口是用于使操作系统从预启动的操作环境(如:在系统启动之后,但是操作系统开始运作之前),加载到一种操作系统上,这类操作系统可以是Windows,或者是Linux。UEFI将提供一个明确的在操作系统与开机时启动固定于硬件中的软件平台之间的接口规范。

  尽管UEFI与EFI(Extensible Firmware Interface)的叫法不同,但是UEFI却不是EFI的全面改革,而是它的发展和完善。自从2000年12月12日正式发布EFI1.02之后,EFI一直作为代替传统的Bios固件接口的先进标准而存在。英特尔公司一直拥有EFI的版权,直到2007年,英特尔公司将EFI标准的改进和完善工作全权交给UEFI论坛(一个非营利性的合作贸易组织,其委员会的委员包括AMD,美国安迈,苹果,戴尔,惠普,IBM,超微,因特尔,联想,微软,凤凰科技十一个公司)管理。为了强调这一点,才将EFI改名为UEFI,以此来区别这个固件接口标准是由UEFI论坛发布的,而不是英特尔公司。既然UEFI是EFI的改良版,理所当然的,它跟EFI肯定存在不同之处。在UEFI论坛的成员公司的大力支持和促进下,UEFI针对EFI中的UGA协议,SCSI传输,USB主件控制还有I/O设备方面都作出了改进。而且还添加了网络应用程序接口,X64绑定,服务绑定等新的内容。更重要的一点,由于UEFI是由UEFI论坛的所有成员公司共同商讨确定的,所以它能兼容更多的硬件,具有更广泛的通用性。

    二.MBR与GPT

    MBR:

        MBR的意思是“主引导记录”,是IBM公司早年间提出的。它是存在于磁盘驱动器开始部分的一个特殊的启动扇区。这个扇区包含了已安装的操作系统系统信息,并用一小段代码来启动系统。如果你安装了Windows,其启动信息就放在这一段代码中——如果MBR的信息损坏或误删就不能正常启动Windows,这时候你就需要找一个引导修复软件工具来修复它就可以了。Linux系统中MBR通常会是GRUB加载器。MBR。当一台电脑启动时,它会先启动主板自带的BIOS系统,bios加载MBR,MBR再启动Windows,这就是mbr的启动过程。

    GPT:

       GPT的意思是GUID Partition Table,即“全局唯一标识磁盘分区表”。他是另外一种更加先进新颖的磁盘组织方式,一种使用UEFI启动的磁盘组织方式。最开始是为了更好的兼容性,后来因为其更大的支持内存(mbr分区最多支持2T的磁盘),更多的兼容而被广泛使用,特别是苹果的MAC系统全部使用gpt分区。gpt不在有分区的概念,所有CDEF盘都在一段信息中存储。可以简单的理解为更先进但是使用不够广泛的技术。因为兼容问题,gpt其实在引导的最开始部分也有一段mbr引导,也叫做“保护引导”,为了防止设备不支持uefi

    两者比较:

        mbr最多支持2T,而gpt理论上是无限制的。mbr最多支持四个主分区,gpt没有限制。如果你想跑多系统,mbr最多4个而gpt没有限制。

    MSR分区:

        MSR分区即 Microsoft 保留 (MSR) 分区。是每个 GUID 分区表 (GPT) 磁盘都要求的分区。
        系统组件可以将 MSR 分区的部分分配到新的分区以供它们使用。例如,将基本 GPT 磁盘转换为动态磁盘后,系统分配的 MSR 分区将被用作“逻辑磁盘管理器”(LDM) 元数据分区。
       MSR 分区的大小会因 GPT 磁盘的大小不同而发生变化。对于小于 16 GB 的磁盘,MSR 分区为 32 MB。对于大于 16 GB 的磁盘,MSR 分区为 128 MB。MSR 分区在“磁盘管理”中不可见,用户也无法在 MSR 分区上存储或删除数据。

      用WIN8系统安装版分区时,系统自动划分出“分区1、2、3”,它们是Win8的特有分区。其中300MB为恢复区,100MB为系统分区,128MB为MSR分区。

    三.BIOS和UEFI的引导方式

    传统BIOS引导:开机-->BIOS启动MBR-->MBR启动激活分区PBR-->启动bootmgr-->读取BCD-->启动对应的系统

    详细解释:①电脑开机,BIOS找到第一个硬盘 ②MBR在硬盘开头几百k以内,BIOS启动到硬盘上的MBR(主引导记录) ③PBR在分区开头的几百k以内,MBR启动当前磁盘激活分区的PBR(分区引导记录) ④VISTA以上的PBR启动当前分区上的BOOTMGR,找不到则启动NTLDR ⑤读取当前分区根目录下\boot\BCD文件 ⑥启动BCD里对应菜单的系统。

             【操作系统安装与引导】Windows引导详解_第1张图片

    UEFI引导:开机-->BIOS启动FAT分区上的启动文件-->读取BCD-->启动对应的系统

    详细解释:①电脑开机,BIOS找到第一个硬盘 ②BIOS搜索到FAT/FAT32分区上的\EFI\BOOT\BOOTx64.efi(计算机默认引导)\efi\Microsoft\boot\bootmgrfw.efi(Windows默认引导),BIOS内会有个EFPROM,如果有多个efi文件,会记录efi文件的启动顺序。这个顺序可以在BIOS里修改,也可以用工具修改,EFI文件一般在ESP分区下,分区格式只能是FAT16或FAT32 ③读取\efi\Microsoft\boot\BCD ④启动BCD里对应菜单的系统


     四.传统BIOS引导中MBR和PBR作用

     MBR(Master Boot Record 主引导记录):磁盘开头几kb数据,一般只有0.5kb,主要内容是分区表以及一小段引导程序。特别的,对于Windows引导程序的作用,就是找到第一个激活分区,启动它的PBR。

     PBR(Partition Boot Record 分区引导记录):每个分区都有,分区开头几kb数据,一般也是0.5kb,内容一般是分区参数以及一小段引导程序。特别的,对于Windows nt6的分区引导记录,程序核心内容就是搜索当前分区下bootmgr,如果没有,则搜索ntldr,然后启动它。

以上就是本次教程全部的内容,下期的博客将为大家讲解CSM模块对Windows系统安装的影响。谢谢!     


你可能感兴趣的:(【操作系统安装与引导】Windows引导详解)