重学Windows(一):Boot Options
来源:互联网 发布:出国申请时间表 知乎 编辑:程序博客网 时间:2024/05/15 12:15
在Windows Vista出现之前,Windows的Boot Options是存储在Boot.ini文件(支持BIOS的机器)或者NVRAM (non-volative RAM,支持EFI的机器,通常是Itanium处理器的机器)中。
一个常见的Boot.ini文件格式如下:
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)/WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)/WINDOWS="Microsoft Windows XP Professional" /fastdetect
multi(0)disk(0)rdisk(0)partition(2)/WINNT="Microsoft Windows 2000 Professional" /fastdetect
Microsoft提供了一个命令行工具(BOOTCFG)来修改Boot.ini文件以及EFI NVRAM中的信息。该程序路径为:%Systemroot%/System32(Windows XP或Windows Server 2003)。当然,对Boot.ini文件,采用Notepad可能更快一点。要修改Boot.ini文件,可以先使用attrib -s -h -r Boot.ini来清楚其文件属性,修改完成再使用命令attrib +s +h +r Boot.ini加上属性。(s: System, h: Hidden, r: Readonly)。
另外一个有用的工具是MSCONFIG,其中也提供了一些常用的修改选项。
在Windows Vista及以后的操作系统中,Microsoft修改了Boot Options的选项,所有的信息被存储在一个Firmware-independent的系统,称为Boot Configuration Data (BCD),并提供了一个全新的命令行工具BCDEdit.exe,Boot.ini文件已经失去了原有的意义 。当然MSCONFIG命令同样可以使用。
Vista同样把Windows NT以来一直沿用的boot loader(ntldr.exe)替换为三个组件:Windows Boot Manager (Bootmgr.exe),Windows operating system loader (Winload.exe)以及Windows resume loader (Winresume.exe)。在这个新的体系中,Windows Boot Manager是一个通用的boot loader,而其他两个是分别针对正常启动和Resume启动进行了优化。Windows Boot Manager会显示boot menu以供用户选择,如果有多个操作系统的话,这个程序驻存在每个Windows 分区的根目录。
常用的几个BCDEDIT的参数(详细的命令,可以使用/?获取):
- 增加Boot Entry:使用copy命令,如:bcdedit /copy {current} /d "DebugEntry";或者create命令,如:bcdedit /create /d "My Windows Vista" /application osloader
- 更改Boot Entry顺序:使用displayorder命令,如:bcdedit /displayorder {49916baf-0e08-11db-9af4-000bdbd316a0} /addlast。其中/addlast为displayorder的可选项,共有三个可选项:/addlast, /addfirst和/remove。
- 更改Boot Entry的Friendly Name:使用set命令,如:bcdedit /set {current} description "Windows Vista NullModem"。
- 设置default启动项:使用default命令,如:bcdedit /default {cbd971bf-b7b8-4885-951a-fa03044f5d71}。如果想把默认启动项设置为Vista之前的版本(如Windows XP),可以用:bcdedit /default {ntldr}
- 设置timeout:使用timeout命令。
详细的BCDEDIT的参数属性:MSDN中的解释。
最后,在Vista运行BCDEDIT,记得首先设置一下Administrator的权限。
- 重学Windows(一):Boot Options
- 重学C++ (一)
- 重学java(一)
- 重学微积分(一)
- Boot INI Options Reference
- Boot time kernel options
- 一步一步学Spring Boot(一)
- 为了分析WebRTC, 重学Windows开发
- 重学OpenGL(一)----工具篇
- 重学Spring(一) 依赖注入
- 重学java笔记「一」
- 重学设计模式(一) -- 工厂模式
- (转载)Boot.ini options reference
- Changing Options in U-boot
- All boot options are tried.
- 重学c语言系列一(gcc编译过程)
- c++prime重学(一)基于第四版
- 重新教自己学算法之开篇(一)
- Asp.net 中查询XML节点文本
- Linux下交叉索引源码阅读工具简介
- linux日志管理
- Zju 2656 Travel Around Country解题报告
- 全人类最冷的42个笑话
- 重学Windows(一):Boot Options
- TC检查点
- ELF binary type "0" not known.解决办法
- 比较快的分页的sql语句
- Struts2之国际化
- 必须掌握的八个【cmd 命令行】
- Linux下源代码阅读工具lxr安装使用说明
- 启动linux时显示图片
- C++类库介绍