windows 7 引导过程概述
来源:互联网 发布:人体解剖软件 编辑:程序博客网 时间:2024/06/04 18:54
Window 7的核心版本号是NT6.1,和vista NT6.0还是属于一个系列的,因此采用了一样的启动管理机制。对于双系统来说,正如98和xp共存的双系统一样,xp和7共存的算系统安装也是要有先后顺序的。因为windows的启动管理属于向下兼容,7的可以兼容xp,而xp不可以兼容7.所以要先装xp再装7才不会出问题。
先解释一下一些windows7中跟引导有关系的文件和关键位置
- 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:内存测试工具
下面来解释一下window7的启动原理。(正常流程,因为还有很多非正常的情况启动过程有些区别,就不再这里赘述了)
首先加电之后是bios程序启动,bios自检完成之后,将mbr的代码读入内存,管理权交给mbr,mbr再读取dpt,从dpt找出硬盘的所有分区哪一个是激活的主分区。到这里为止,所以系统都是一样的。下面就有区别了。Dpt读完找到主分区之后然后找到这个主分区的pbr,pbr位于激活主分区的第一个扇区。安装不同操作系统的时候pbr是会被改变的,xp的pbr写死的代码是去找ntldr。而vista和7的pbr里写进的就是去找bootmgr。
这个时候显示器上还没有显示引导管理器的界面。Bootmgr被找到之后管理权就交到了bootmgr。Boot Manager 首先从 BCD 中读取 BootManager 菜单的语言版本信息,然后再调用 BOOTMGR 与相应语言的BOOTMGR.EXE.MUI 组成相应语言的启动菜单,之后才会在显示器上显示引导管理器,也就是选择多操作系统的那个文字界面。最后,当你选择了相应的操作系统,这里当然是7(如果选择xp,会转入xp的启动流程,找到xp的ntldr然后启动),bootmgr就去寻找系统分区(系统分区和主分区的概念不是一样的哦)windows/system32下的winload.exe加载操作系统内核。剩下的事就是启动windows7了。
- windows 7 引导过程概述
- windows 7 引导过程概述
- windows 7 引导过程概述
- windows 7 引导过程概述
- Linux引导过程概述
- WINDOWS NT引导过程
- UEFI下Windows引导过程
- Linux0.11内核引导启动过程概述
- Windows启动过程概述
- Windows NT引导过程源代码分析
- Windows启动过程分析-预引导
- Windows Vista系统启动过程概述
- Windows XP系统启动过程概述
- Mac 系统引导过程概述 & BootCamp 的秘密
- Windows XP Professional计算机启动过程概述
- Windows XP Professional计算机启动过程概述
- Windows XP Professional计算机启动过程概述
- Windows XP Professional计算机启动过程概述
- 从牢骚开始
- 重启IIS的iisreset命令详解
- ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
- 嵌入式C语言OO编程方法
- iBATIS动态查询的实现浅析
- windows 7 引导过程概述
- 批处理中的字符串处理详解
- 武汉玛歌堡服饰有限公司,你可别太接近了,是个大骗子
- 武汉玛歌堡服饰有限公司,骗子……
- IBatis 怎样直接执行SQL语句
- iBATIS实现的一个例子
- 批处理 正则表达式(findstr) 整理
- JavaScript 实现字符串加密和解密
- 选择Hibernate还是iBATIS