windows 7 boot loader

windows 7 boot loaderFrom:http://blog.csdn.net/richion/archive/2009/08/05/4414189.aspxWindow7的核心版本号是NT6.1,和vistaNT6.0还是属于一个系列的,因此采用了一样的启动管理机制。对于双系统来说,正如98和xp共存的双系统一样,xp和7共存的算系统安装也是要有先后顺序的。因为windows的启动管

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

From: http://blog.csdn.net/richion/archive/2009/08/05/4414189.aspx

Window 7 的核心版本号是 NT6.1 ,和 vista NT6.0 还是属于一个系列的,因此采用了一样的启动管理机制。对于双系统来说,正如 98 和 xp 共存的双系统一样, xp 和 7 共存的算系统安装也是要有先后顺序的。因为 windows 的启动管理属于向下兼容, 7 的可以兼容 xp ,而 xp 不可以兼容 7. 所以要先装 xp 再装 7 才不会出问题。

 

先解释一下一些 windows 7 中跟引导有关系的文件和关键位置

Mbr&dpt : 硬盘主引导记录和分区表(分区表中包括四部分用来记载四个主分区的物理位置),位于硬盘的第一个扇区,不属于任何系统分区。
Bootmgr : windows nt6 系列的引导管理器,位于主激活分区内,属于系统隐藏文件
Boot.bak : boot.ini 的备份,双系统的时候会存在。
Bootsect.bak: bootsect.bak 是该活动分区的前 16 个扇区的备份文件,所以它的大小是 8KB, 就是 pbr 的备份。
PBR : 分区引导代码
/boot/[ 语言 ]/bootmgr.exe.mui: 在主分区 boot 目录下包括 24 个语言的 BOOTMGR.EXE.MUI ,用来和 bootmgr 组合形成启动菜单
/boot/bcd: 相当于 xp 时代的 boot.ini ,不过 bcd 是基于数据库的,不是基于文本的,也是为了安全性考虑吧。微软专门提供了一个修改 bcd 的程序 bcdeit 来修改相应的参数
/boot/bcd.log&bcd.log1&bcd.log2 : log 文件,具体干嘛的未知。
/boot/bootstat.dat : 引导时候用来记录引导状态的数据文件
/boot/ memtest.exe :内存测试工具
 

下面来解释一下 window 7 的启动原理。(正常流程 , 因为还有很多非正常的情况启动过程有些区别,就不再这里赘述了)

 

首先加电之后是 bios 程序启动, bios 自检完成之后,将 mbr 的代码读入内存,管理权交给 mbr , mbr 再读取 dpt ,从 dpt 找出硬盘的所有分区哪一个是激活的主分区。到这里为止,所以系统都是一样的。下面就有区别了。 Dpt 读完找到主分区之后然后找到这个主分区的 pbr , pbr 位于激活主分区的第一个扇区。安装不同操作系统的时候 pbr 是会被改变的, xp 的 pbr 写死的代码是去找 ntldr 。而 vista 和 7 的 pbr 里写进的就是去找 bootmgr 。

这个时候显示器上还没有显示引导管理器的界面。 Bootmgr 被找到之后管理权就交到了 bootmgr 。 Boot Manager 首先从 BCD 中读取 Boot Manager 菜单的语言版本信息,然后再调用 BOOTMGR 与相应语言的 BOOTMGR.EXE.MUI 组成相应语言的启动菜单,之后才会在显示器上显示引导管理器,也就是选择多操作系统的那个文字界面。最后,当你选择了相应的操作系统,这里当然是 7 (如果选择 xp, 会转入 xp 的启动流程,找到 xp 的 ntldr 然后启动), bootmgr 就去寻找系统分区(系统分区和主分区的概念不是一样的哦) windows/system32 下的 winload.exe 加载操作系统内核。剩下的事就是启动 windows7 了。

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/richion/archive/2009/08/05/4414189.aspx

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/182920.html原文链接:https://javaforall.net

(0)
上一篇 2022年10月12日 上午8:00
下一篇 2022年10月12日 上午8:00


相关推荐

  • java中string转date类型_cookie和session区别

    java中string转date类型_cookie和session区别注意事项格式描述字符串为”yyyy-MM-dd”特别提醒:月份描述字符串为大写的M。importjava.text.SimpleDateFormat;importjava.util.Date;publicDatedateFromString(StringdateStr){ SimpleDateFormatsimpleDateFormat=newSimp…

    2022年10月3日
    5
  • python环境安装系列-2-pycharm安装并配置anaconda的虚拟环境

    python环境安装系列-2-pycharm安装并配置anaconda的虚拟环境pycharm 安装并配置 anaconda 的虚拟环境 1 安装 anaconda2 查看版本 在 4 选择解释器路径时需要使用 3 安装 pycharm3 1 下载 pycharm4 配置 Pycharm 和 anaconda 关联 4 1 打开 Pycharm4 2 新建一个项目 点击 NewProject 自行选择位置 G PycharmProje pythonProjec 4 3 选择的解释器是之前 anaconda 的位置 1 安装 anaconda 见 anaconda 安装文章 https blog csdn n

    2026年3月27日
    3
  • 三角剖分浅析

    三角剖分浅析三角剖分技术在图形领域 尤其是在三维重建领域是非常非常重要的技术 就拿我现在正在从事的 3D 打印行业来说吧 如果复杂曲面的三角剖分能够得以解决 那么我们这个行当绝大部分看似复杂的软件问题 都能轻易解决 因为对于提取点云 不管是硬件还是软件 成本是低廉的 要说三角剖分 首先要从 Delaunay 说起 它是目前三角剖分理论的基础 很多三维的剖分优化准则实际上是对它的扩展 Delaunay 三角网法则

    2026年3月19日
    2
  • PC机如何使用trunk口类型连接

    PC机如何使用trunk口类型连接特殊环境下有客户要求 pc 机需要用 trunk 口类型连接方法如下 1 创建 vlan2 H3C vlan2 H3C vlan2 q2 配置 trunk 接口模式 H3C intg1 0 1 H3C GigabitEther 0 1 portlink typetrunk H3C GigabitEther 0 1 porttrunkpvi 注意必须要用 pvid 而不能用 permit H3C GigabitEther

    2026年3月17日
    2
  • webstorm 2021激活码(最新序列号破解)

    webstorm 2021激活码(最新序列号破解),https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月18日
    581
  • Java实现对List去重

    Java实现对List去重方式一,使用for循环遍历去除List中的重复元素代码如下 publicstaticvoidmain(String[]args){Test07test07=newTest07();System.out.println(test07.getList());}publicListgetList(){…

    2022年5月25日
    44

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号