# BOOT.INI中的开关都有些什么？

3696人阅读 评论(0)

3GB 这是SP3新引入的。这使得用户区和系统区分为3G比1G的比例。只有用户使用NT企业版，应用程序也支持3GB选项时，此选项才生效。
/BASEVIDEO 使用标准VGA方式启动。这种方式主要用于显示驱动程序失效时。
/BAUDRATE 指出用于调度的波特率，如果用户不设置，则使用默认的9600，而对于线缆modem则使用19200。
/BOOTLOG 使W2K将日志写入 %SystemRoot%/NTBTLOG.TXT
/BURNMEMORY= 使NT在已知的内存上少使用指定的兆数，如果/burnmemory=64，则有64M内存NT不使用。
/CRASHDEBUG 调度器在NT启动时启动，但只有在内核错误时才有用，如果系统经常会无故出错，这个选项就很有用了。
/DEBUG 在启动NT时调入调度器，它可以在任何时间激活，在错误可以再次出现时使用它比较合适。
/DEBUGPORT= comx 指定用于调度的端口，其它X就指端口号。
/FASTDETECT 对于W2K启动时它使系统不检查串行口和并行口。
/HAL=<hal> 允许用户不使用默认的HAL。
/INTAFFINITY 设置多处理器HAL(HALMPS.DLL)，使编号最大的处理器接收中断请求。如果不设置此选项，W2K会使所有处理器接收中断请求。
/KERNEL=<kernel> 与上面的功能相同，不过是针对SMP中的内核而言的。
/MAXMEM:n 指定NT可以使用的最大内存数，如果一个内存片损坏，这个开关就十分有用了。
/NODEBUG 不使用调试信息
/NOGUIBOOT 指定此选项会使W2K不加载VGA驱动程序，也就不会显示启动过程和失败时的兰屏信息。
/NOSERIALMICE=[COMx | COMx,y,z...] 在特定的COM中上禁止对串行鼠标的检测。如果用户有一个非鼠标设备接在COM口上，这个选项会十分有用。如果此开关未加参数，系统会禁止所有COM口。
/NUMPROC=n 只允许前N个系统处理器工作
/ONECPU 在多处理器中只使用一个处理器
/PCILOCK 不让NT为PCI设置分配IO/IRQ资源，而启用BIOS设置。
/SAFEBOOT: 安全启动，这个大家一定十分熟悉，W2K只启动HKLM/System/CurrentControlSet/Control/SafeBoot中的驱动 程序和服务，其后跟三个参数MINIMAL，NETWORK或DSREPAIR之一。MINIMAL和NETWORK在允许网络下启动系统。而 DSREPAIR要求系统从备份设备中调入活动目录的设置。还有一个选项是"(ALTERNATESHELL)"，它让系统调入由HKLM/System /CurrentControlSet/SafeBoot/AlternateShell指定的SHELL程序，而不使用默认的Explorer。
/SOS 在调入驱动程序名时显示它的名字，在因驱动问题而无法启动时使用比较好。
/WIN95 在装有三个系统DOS，Win9x和Windows NT的系统上，让NTLDR直接调用Win9x启动文件BOOTSECT.W40
/WIN95DOS 在装有三个系统DOS，Win9x和Windows NT的系统上，让NTLDR直接调用DOS启动文件BOOTSECT.DOS
/YEAR= 使用指定的年份，如果设置为/YEAR=2005，那现在的时间就是2005年，此选项仅对NT4 SP4和W2K生效

timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)/WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)/WINDOWS="Windows Server 2003"
/fastdetect

timeout: 超时持续时间(s)
default: 默认启动系统

[oprating systmems]:
multi(A): 适配器序数
disk(B): B总为0, 因为multi使用INT 13调用, 不使用disk参数
rdisk(C): C表示连接到适配器的磁盘的序数(从0开始)
partion(D): D表示分区序号(从1开始)

• /basevideo 强制系统进入640x480/16色VGA模式
• /bootlog 将引导日志写入%SystemRoot%/Ntbtlog.txt中
• /fastdetect 不检查并行和串行端口, 让即插即用驱动程序完成这个任务
• /nodebug 禁用内核调试器, 可以加速引导过程, 但可能会导致蓝屏死机
• /noserialmice:comx 禁用对指定COM端口的鼠标端口检查

[any text]

timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)/WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)/WINDOWS="Windows Server 2003"
/fastdetect
[any text]
multi(0)disk(0)rdisk(1)partition(1)/WINDOWS="Windows 2000 Server"
Windows 2000 Server将不会显示在选择菜单上.

===================================================================================
Introduction
There are number of BOOT.INI switches that are useful for driver developers that wish to test their drivers under a variety of different system configurations without having to have a separate machine for every one. For example, limiting the amount of memory NT sees can be useful for stressing memory loads, and limiting the number of processors for testing scalability. I've compiled a complete list of the options that BOOT.INI currently supports. This list is reproduced in the Startup, Shutdown and Crashes chapter of Windows Internals, where you'll find more information about the boot process. Entries in red were introduced in Windows 2000 and those in blue introduced in Windows XP or Windows Server 2003.

Note: to see what options I system has booted with examine HKLM/System/CurrentControlSet/Control/SystemStartOptions.

/3GB
Increases the size of the user process address space from 2 GB to 3 GB (and therefore reduces the size of system space from 2 GB to 1 GB). Giving virtual-memory- intensive applications such as database servers a larger address space can improve their performance. For an application to take advantage of this feature, however, two additional conditions must be met: the system must be running Windows XP, Windows Server 2003, Windows NT 4 Enterprise Edition, Windows 2000 Advanced Server or Datacenter Server and the application .exe must be flagged as a 3-GB-aware application. Applies to 32-bit systems only.
/BASEVIDEO
Causes Windows to use the standard VGA display driver for GUI-mode operations.
/BAUDRATE=
Enables kernel-mode debugging and specifies an override for the default baud rate (19200) at which a remote kernel debugger host will connect. Example: /BAUDRATE=115200.
/BOOTLOG
Causes Windows to write a log of the boot to the file %SystemRoot%/Ntbtlog.txt.
/BOOTLOGO
Use this switch to have Windows XP or Windows Server 2003 display an installable splash screen instead of the standard splash screen. First, create a 16-color (any 16 colors) 640x480 bitmap and save it in the Windows directory with the name Boot.bmp. Then add "/bootlogo /noguiboot" to the boot.ini selection.
/BREAK
Causes the hardware abstraction layer (HAL) to stop at a breakpoint at HAL initialization. The first thing the Windows kernel does when it initializes is to initialize the HAL, so this breakpoint is the earliest one possible. The HAL will wait indefinitely at the breakpoint until a kernel-debugger connection is made. If the switch is used without the /DEBUG switch, the system will Blue Screen with a STOP code of 0x00000078 (PHASE0_ EXCEPTION).
/BURNMEMORY=
Specifies an amount of memory Windows can't use (similar to the /MAXMEM switch). The value is specified in megabytes. Example: /BURNMEMORY=128 would indicate that Windows can't use 128 MB of the total physical memory on the machine.
/CHANNEL=
Used on conjunction with /DEBUGPORT=1394 to specify the IEEE 1394 channel through which kernel debugging communications will flow. This can be any number between 0 and 62 and defaults to 0 if not set.
/CLKLVL
Causes the standard x86 multiprocessor HAL (Halmps.dll) to configure itself for a level-sensitive system clock rather then an edge-triggered clock. Level-sensitive and edge-triggered are terms used to describe hardware interrupt types.
/CMDCONS
Passed when booting with into the Recovery Console (described later in this chapter).
/CRASHDEBUG
Causes the kernel debugger to be loaded when the system boots, but to remain inactive unless a crash occurs. This allows the serial port that the kernel debugger would use to be available for use by the system until the system crashes (vs. /DEBUG, which causes the kernel debugger to use the serial port for the life of the system session).
/DEBUG
Enables kernel-mode debugging.
/DEBUGPORT=
Enables kernel-mode debugging and specifies an override for the default serial (usually COM2 on systems with at least two serial ports) to which a remote kernel-debugger host is connected. Windows XP and Windows Server 2003 also support debugging through accept IEEE 1394 ports. Examples: /DEBUGPORT=COM2, /DEBUGPORT=1394.
/EXECUTE
This option disables no-execute protection. See the /NOEXECUTE switch for more information.
/FASTDETECT
Default boot option for Windows. Replaces the Windows NT 4 switch /NOSERIALMICE. The reason the qualifier exists (vs. just having NTDETECT perform this operation by default) is so that NTDETECT can support booting Windows NT 4. Windows Plug and Play device drivers perform detection of parallel and serial devices, but Windows NT 4 expects NTDETECT to perform the detection. Thus, specifying /FASTDETECT causes NTDETECT to skip parallel and serial device enumeration (actions that are not required when booting Windows), whereas omitting the switch causes NTDETECT to perform this enumeration (which is required for booting Windows NT 4).
/INTAFFINITY
Directs the standard x86 multiprocessor HAL (Halmps.dll) to set interrupt affinities such that only the highest numbered processor will receive interrupts. Without the switch, the HAL defaults to its normal behavior of letting all processors receive interrupts.
/KERNEL=
/HAL=
Enable you to override Ntldr's default filename for the kernel image (Ntoskrnl.exe) and/or the HAL (Hal.dll). These options are useful for alternating between a checked kernel environment and a free (retail) kernel environment or even to manually select a different HAL. If you want to boot a checked environment that consists solely of the checked kernel and HAL, which is typically all that is needed to test drivers, follow these steps on a system installed with the free build:
Copy the checked versions of the kernel images from the checked build CD to your /Windows/System32 directory, giving the images different names than the default. For example, if you're on a uniprocessor, copy Ntoskrnl.exe to Ntoschk.exe and Ntkrnlpa.exe to Ntoschkpa.exe. If you're on a multiprocessor, copy Ntkrnlmp.exe to Ntoschk.exe and Ntkrpamp.exe to Ntoschkpa.exe. The kernel filename must be an 8.3-style short name.
Copy the checked version of the appropriate HAL needed for your system from /I386/Driver.cab on the checked build CD to your /Windows/System32 directory, naming it Halchk.dll. To determine which HAL to copy, open /Windows/Repair/Setup.log and search for Hal.dll; you'll find a line like /WINDOWS/system32/ hal.dll="halacpi.dll","1d8a1". The name immediately to the right of the equals sign is the name of the HAL you should copy. The HAL filename must be an 8.3-style short name.
Make a copy of the default line in the system's Boot.ini file.
In the string description of the boot selection, add something that indicates that the new selection will be for a checked build environment (for example, “Windows XP Professional Checked”).
Add the following to the end of the new selection's line: /KERNEL=NTOSCHK.EXE /HAL= HALCHK.DLL
Now when the selection menu appears during the boot process you can select the new entry to boot a checked environment or select the entry you were using to boot the free build.
/LASTKNOWNGOOD
Causes the system to boot as if the LastKnownGood boot option was selected.
/MAXMEM=
Limits Windows to ignore (not use) physical memory beyond the amount indicated. The number is interpreted in megabytes. Example: /MAXMEM=32 would limit the system to using the first 32 MB of physical memory even if more were present.
/MAXPROCSPERCLUSTER=
For the standard x86 multiprocessor HAL (Halmps.dll), forces cluster-mode Advanced Programmable Interrupt Controller (APIC) addressing (not supported on systems with an 82489DX external APIC interrupt controller).
/MININT
This option is used by Windows PE (Preinstallation Environment) and causes the Configuration Manager to load the Registry SYSTEM hive as a volatile hive such that changes made to it in memory are not saved back to the hive image.
/NODEBUG
Prevents kernel-mode debugging from being initialized. Overrides the specification of any of the three debug-related switches, /DEBUG, /DEBUGPORT, and /BAUDRATE.
/NOEXECUTE
This option is only available on 32-bit versions of Windows when running on processors supporting no-execute protection. It enables no-execute protection (also known as Data Execution Protection - DEP), which results in the Memory Manager marking pages containing data as no-execute so that they cannot be executed as code. This can be useful for preventing malicious code from exploiting buffer overflow bugs with unexpected program input in order to execute arbitrary code. No-execute protection is always enabled on 64-bit versions of Windows on processors that support no-execute protection. There are several options you can specify with this switch:
/NOEXECUTE=OPTIN Enables DEP for core system images and those specified in the DEP configuration dialog.
/NOEXECUTE=OPTOUT Enables DEP for all images except those specified in the DEP configuration dialog.
/NOEXECUTE=ALWAYSON Enables DEP on all images.
/NOEXECUTE=ALWAYSOFF Disables DEP.
/NOGUIBOOT
Instructs Windows not to initialize the VGA video driver responsible for presenting bitmapped graphics during the boot process. The driver is used to display boot progress information, so disabling it will disable the ability of Windows to show this information.
/NOLOWMEM
Requires that the /PAE switch be present and that the system have more than 4 GB of physical memory. If these conditions are met, the PAE-enabled version of the Windows kernel, Ntkrnlpa.exe, won't use the first 4 GB of physical memory. Instead, it will load all applications and device drivers, and allocate all memory pools, from above that boundary. This switch is useful only to test device driver compatibility with large memory systems.
/NOPAE
Forces Ntldr to load the non-Physical Address Extension (PAE) version of the Windows kernel, even if the system is detected as supporting x86 PAEs and has more than 4 GB of physical memory.
/NOSERIALMICE=[COMx | COMx,y,z...]
Obsolete Windows NT 4 qualifier—replaced by the absence of the /FASTDETECT switch. Disables serial mouse detection of the specified COM ports. This switch was used if you had a device other than a mouse attached to a serial port during the startup sequence. Using /NOSERIALMICE without specifying a COM port disables serial mouse detection on all COM ports. See Microsoft Knowledge Base article Q131976 for more information.
/NUMPROC=
Specifies the number of CPUs that can be used on a multiprocessor system. Example: /NUMPROC=2 on a four-way system will prevent Windows from using two of the four processors.
/ONECPU
Causes Windows to use only one CPU on a multiprocessor system.
/PAE
Causes Ntldr to load Ntkrnlpa.exe, which is the version of the x86 kernel that is able to take advantage of x86 PAEs. The PAE version of the kernel presents 64-bit physical addresses to device drivers, so this switch is helpful for testing device driver support for large memory systems.
/PCILOCK
Stops Windows from dynamically assigning IO/IRQ resources to PCI devices and leaves the devices configured by the BIOS. See Microsoft Knowledge Base article Q148501 for more information.
/RDPATH=
Specifies the path to a System Disk Image (SDI) file, which can be on the network, that the system will use to boot from. Often used in conjunction with the /RDIMAGEOFFSET= flag to indicate to NTLDR where in the file the system image starts.
/REDIRECT
Introduced with Windows XP. Used to cause Windows to enable Emergency Management Services (EMS) that reports boot information and accepts system management commands through a serial port. Specify serial port and baudrate used in conjunction with EMS with redirect= and redirectbaudrate= lines in the [boot loader] section of the Boot.ini file.
/SAFEBOOT:
Specifies options for a safe boot. You should never have to specify this option manually, since Ntldr specifies it for you when you use the F8 menu to perform a safe boot. (A safe boot is a boot in which Windows only loads drivers and services that are specified by name or group under the Minimal or Network registry keys under HKLM/SYSTEM/CurrentControlSet/Control/SafeBoot.) Following the colon in the option you must specify one of three additional switches: MINIMAL, NETWORK, or DSREPAIR. The MINIMAL and NETWORK flags correspond to safe boot with no network and safe boot with network support, respectively. The DSREPAIR (Directory Services Repair) switch causes Windows to boot into a mode in which it restores the Active Directory directory service from a backup medium you present. An additional option you can append is (ALTERNATESHELL), which tells Windows to use the program specified by the HKLM/SYSTEM/CurrentControlSet/ SafeBoot/AlternateShell value as the graphical shell rather than to use the default, which is Windows Explorer.
/SCSIORDINAL:
Directs Windows to the SCSI ID of the controller. (Adding a new SCSI device to a system with an on-board SCSI controller can cause the controller's SCSI ID to change.) See Microsoft Knowledge Base article Q103625 for more information.
/SDIBOOT=
Used in Windows XP Embedded systems to have Windows boot from a RAM disk image stored in the specified System Disk Image (SDI) file.
/SOS
Causes Windows to list the device drivers marked to load at boot time and then to display the system version number (including the build number), amount of physical memory, and number of processors.
/TIMERES=
Sets the resolution of the system timer on the standard x86 multiprocessor HAL (Halmps.dll). The argument is a number interpreted in hundreds of nanoseconds, but the rate is set to the closest resolution the HAL supports that isn't larger than the one requested. The HAL supports the following resolutions:

Hundreds of nanoseconds Milliseconds (ms)
9766 0.98
19532 2.00
39063 3.90
78125 7.80

The default resolution is 7.8 ms. The system timer resolution affects the resolution of waitable timers. Example: /TIMERES=21000 would set the timer to a resolution of 2.0 ms.
/USERVA=
This switch is only supported on Windows XP and Windows Server 2003. Like the /3GB switch, this switch gives applications a larger address space. Specify the amount in MB between 2048 and 3072. This switch has the same application requirements as the /3GB switch and requires that the /3GB switch be present. Applies to 32-bit systems only.
/WIN95
Directs Ntldr to boot the Consumer Windows boot sector stored in Bootsect.w40. This switch is pertinent only on a triple-boot system that has MS-DOS, Consumer Windows, and Windows installed. See Microsoft Knowledge Base article Q157992 for more information.
/WIN95DOS
Directs Ntldr to boot the MS-DOS boot sector stored in Bootsect.dos. This switch is pertinent only on a triple-boot system that has MS-DOS, Consumer Windows, and Windows installed. See Microsoft Knowledge Base article Q157992 for more information.
/YEAR=
Instructs the Windows core time function to ignore the year that the computer's real-time clock reports and instead use the one indicated. Thus, the year used in the switch affects every piece of software on the system, including the Windows kernel. Example: /YEAR=2001. (This switch was created to assist in Y2K testing.)
Thanks to Jonas Fischer for pointing out the PCILOCK and NOSERIALMICE switches. Thanks to Rob Green for information on the FASTDETECT switch.

### /basevideo

/basevideo 开关通过使用与所有视频适配器都兼容的视频驱动程序来强制系统进入标准 640x480 16 色 VGA 模式。该开关允许您在选择了错误的视频分辨率或刷新频率时加载系统。请将该开关与 /sos 开关一起使用。如果安装了新的视频驱动程序，而该驱动程序工作不正常，则可使用该参数来启动操作系统。然后您可以删除、更新或回滚到有问题的视频驱动程序。

### /sos

/sos 开关在设备驱动程序被加载时显示其名称。默认情况下，Windows Loader 屏幕仅显示进度点。可将该开关与 /basevideo 开关一起使用以确定引发故障的驱动程序。

### /safeboot:parameter

 • minimal • network • safeboot:minimal(alternateshell)
/safeboot:parameter 参数可与其他 Boot.ini 参数结合使用。下面的示例给出了当从启动恢复菜单中选择不同的“安全模式”选项时实际使用的参数。
 • 带网络连接的安全模式/safeboot:minimal /sos /bootlog /noguiboot • 带网络连接的安全模式/safeboot:network /sos /bootlog /noguiboot • 带命令行提示的安全模式/safeboot:minimal(alternateshell) /sos /bootlog /noguiboot

### /redirect

 • 在“[boot loader]”部分中，添加下列所需语句之一： redirect=COMx 在该语句中，用下列 COM 端口号之一替换 x： 1234 redirect=USEBIOSSETTINGS 该语句允许由计算机的 BIOS 来确定 EMS 所使用的 COM 端口。 • 在“[boot loader]”部分中，添加下面的可选语句： redirectbaudrate=baudrate 用下列数值之一替换 baudrate： 96001920057600115200 在默认情况下，EMS 使用 9600 Kbps 波特率设置。 • 在“[operating systems]”部分中，在想要配置使用 EMS 的操作系统条目中添加 /redirect 选项。下面的示例演示了这些开关的使用： [boot loader]timeout=30default=multi(0)disk(0)rdisk(0)partition(1)/WINDOWSredirect=COM1redirectbaudrate=19200[operating systems]multi(0)disk(0)rdisk(0)partition(1)/WINDOWS="Windows Server 2003, Enterprise" /fastdetectmulti(0)disk(0)rdisk(0)partition(1)/WINDOWS="Windows Server 2003, EMS" /fastdetect /redirect

### /channel

/debug 开关和 /debugport 开关一起使用该开关来配置 Windows 通过 Institute of Electrical and Electronics Engineers, Inc. (IEEE) 1394 端口发送调试信息。要支持通过 1394 端口进行调试，参与的两台计算机都必须运行 Microsoft Windows XP 或更高版本。1394 端口具有编号从 0 到 62 的最多 63 个独立的通信通道。不同的硬件实现在一个总线中支持不同数目的通道。Windows XP 上还有最多 4 台目标计算机的限制。但是该限制在 Windows Server 2003 中已取消。要执行调试功能，请在运行调试程序的计算机（即主机）上和需要调试的计算机（即目标计算机）上选择一个要使用的公用通道号。可使用从 1 到 62 之间的任何编号。

#### 配置目标计算机

 1 编辑 Boot.ini 文件，在配置调试功能的操作系统条目中添加 /CHANNEL=x 选项。用想要使用的通道号替换 x。例如，将 Boot.ini 文件的“[operating systems]”部分配置成与以下类似的设置： [boot loader]timeout=30default=multi(0)disk(0)rdisk(0)partition(1)/WINDOWS[operating systems]multi(0)disk(0)rdisk(0)partition(1)/WINDOWS="Windows Server 2003, Enterprise" /fastdetect /debug /debugport=1394 /CHANNEL=3 2 将 1394 电缆插入任一 1394 端口中。 3 禁用目标计算机上的 1394 主控制器。为此，请打开“设备管理器”，右键单击该设备，然后单击“禁用”。 4 重新启动计算机。

#### 配置主机

 1 将 1394 电缆插入任一 1394 端口中。 2 安装内核调试程序二进制文件。 3 打开一个命令提示窗口。输入以下每条命令后按 Enter 键。 set_NT_DEBUG_BUS=1394set_NT_DEBUG_1394_CHANNEL=xkd -k 4 移至安装有内核调试程序的文件夹，输入以下命令： kd.exe

0
0

* 以上用户言论只代表其个人观点，不代表CSDN网站的观点或立场
个人资料
• 访问：122696次
• 积分：1274
• 等级：
• 排名：千里之外
• 原创：13篇
• 转载：26篇
• 译文：0篇
• 评论：31条
文章分类
阅读排行
Linux/Unix
mysql
我的BLOGS