System Configuration MSConfig is a system utility designed to troubleshoot the Microsoft Windows startup process. It can disable or re-enable software, device drivers or Windows services that run at startup, and it can change boot parameters.

MSConfig is easy to use and helps you troubleshoot a lot of Windows 8, 8.1 and 10 boot problems. You can easily modify how the system boots (boot files), the system services, and the startup files on either a temporary or a permanent basis. This makes MSConfig an extremely useful troubleshooting utility. It can be used to speed up your Boot times and to streamline what loads where and when as your system starts up.

Note: There have been a number of changes made between the Windows 8 and 8.1 Update operating system and the Windows 10 operating system. MSConfig however is NOT one of them. Please follow this guide for both operating systems.

Boot Issues - These are issues where the system is either having trouble loading correctly, is taking a long time to boot or is giving errors onscreen as it starts up. It can even be a combination of the three. First we identify the issue, narrow down the cause and then change it to resolve the problem.

The General tab

The MSConfig General tab gives you some basic options for starting your PC. The default choice for the utility is Normal Startup. The other two options for starting the computer are Diagnostic Startup and Selective Startup.

Diagnostic Startup -

This starts Windows with basic services and drivers only. With this mode, you can determine if a basic Window file is the problem. This type of startup gives you a minimum environment for troubleshooting.

Selective Startup -

This allows you to choose which programs and services you want to open and which ones you want to keep from opening at startup.

If you think one of the launch programs is causing a problem at startup then you can deselect the Load Startup Items to prevent any startup program from launching. This is too general to help you determine which program is causing the problem, but it will help you narrow down the issue to a certain area.

Configuration Issues - These are issues where new commands have been set or old ones modified and it has had an adverse affect on the system. This can usually be resolved by finding the wrong or modified command/setting and either changing it to one which will work or reverting it back to the original state.

Boot options using the Boot tab

This tab gives you many options for starting up the computer. The top portion of the window contains the Boot file that the computer is currently using. If there are multiple boot partitions on the system, you will see each listed here. You can change the timeout value for the boot menu and you can clearly see what commands the boot manager is using, to see if there are any issues.

Two of the three buttons provided in this window are for editing purposes and are greyed out by default. There are 2 options down the side of the page:

Make all boot settings permanent -

Changes made in System Configuration are not tracked. If you want to make changes later, you will have to do so manually. Use this feature with caution!

Note: Selecting Normal Startup in the General tab WILL NOT work if this feature is selected. With this setting enabled, you must manually revert any and all changes that you've made.

Timeout field -

Using MSConfig can cause the operating system selection screen to display for thirty seconds. As a result, thirty seconds is added to the overall startup time. To prevent the operating selection screen from appearing for thirty seconds on startup, change the timeout line in the Timeout field to zero.

The only button that isn't greyed out under the Boot tab, is the Advanced Options. Clicking the Advanced Options button brings up the Boot Advanced Options dialog box. In most cases you probably won't need to use these options, but they can come in handy. Such as if you suspect that a boot issue is being caused by having multiple processors, you can limit the number of processors used to boot the system by selecting the Number of Processors check box and specifying a number.

Note: I wouldn't advise using this option unless you fully understand what each action should do and what effect you can expect to see.

Boot option choices

The most valuable functions on the Boot tab are the boot options. You can use these choices for a variety of troubleshooting.

On startup, opens the Windows graphical user interface in safe mode running only critical system services. Networking is enabled.

No GUI boot -

Does not display the Windows Welcome screen when starting.

Boot log -

Stores all information from the startup process in the file %SystemRoot%Ntbtlog.txt.

Base video -

On startup, opens the Windows graphical user interface in minimal VGA mode. This loads standard VGA drivers instead of display drivers specific to the video hardware on the computer.

OS boot information -

Shows driver names as drivers are being loaded during the startup process.

Advanced>Number of processors -

Limits the number of processors used on a multiprocessor system. If the check box is selected, the system boots using only the number of processors in the drop-down list.

Advanced>Maximum memory -

Specifies the maximum amount of physical memory used by the operating system to simulate a low memory configuration. The value in the text box is megabytes (MB).

Advanced>PCI Lock -

Prevents Windows from reallocating I/O and IRQ resources on the PCI bus. The I/O and memory resources set by the BIOS are preserved.

Advanced>Debug -

Enables kernel-mode debugging for device driver development.

Advanced>Global debug settings -

Specifies the debugger connection settings on this computer for a kernel debugger to communicate with a debugger host. The debugger connection between the host and target computers can be Serial, IEEE 1394, or USB 2.0.

Advanced>Debug port -

Specifies using Serial as the connection type and the serial port. The default port is COM 1.

Advanced>Baud rate -

Specifies the baud rate to use when Debug port is selected and the debug connection type is Serial. This setting is optional. Valid values for baud are 9600, 19,200, 38,400, 57,600, and 115,200. The default baud rate is 115,200 bps.

Advanced>Channel -

Specifies using 1394 as the debug connection type and specifies the channel number to use. The value for channel must be a decimal integer between 0 and 62, inclusive, and must match the channel number used by the host computer. The channel specified does not depend on the physical 1394 port chosen on the adapter. The default value for channel is 0.

Advanced>USB target name -

Specifies a string value to use when the debug type is USB. This string can be any value.

Conflict Issues - These are issues such as drivers, services or updates that have loaded and have changed another file or are trying to use the same resources as an existing file or device. To troubleshoot these issues we try and disable different files and services temporarily until we identify the conflict at which time we can either load another file that does the same job or update and reinstall both files.

Working with the Services tab

Note: At any point during troubleshooting the services using MSConfig, you can always return to the default settings by selecting Normal Startup.

The MSConfig Services tab lists integrated Windows services and programs that start when Windows 8, 8.1 and 10 starts. Or are run periodically by the Windows operating system itself. You will need to be careful when disabling services as many are critical to the computer's operation. Enable or disable programs or services from starting by checking or disabling the checkbox next to the program name. This is really useful when you're troubleshooting service-related problems.

Most services in Windows 8, 8.1 and 10 have been designed by Microsoft themselves. To make it easier to find third party services, you can click the Hide All Microsoft Services button.

Note: Selecting Disable all won't disable some secure Microsoft services required for the operating system to start.

Troubleshooting using the Startup tab

This tab used to allow you to prevent items in your startup folder from starting when you log in. You now get a clickable link to the Windows 8, 8.1 and 10 Task Manager which controls this function now.

The Startup tab of the Task Manager shows a list of the current software applications that open automatically after Windows opens and shows the status of each one. Disable individual software applications by highlighting the application and clicking Disable.

Note: Disabling applications that normally run at startup might result in related applications starting more slowly or not running as expected.

Note: It is important to know what a service does, before you make a decision to disable it permanently. You can always run a search in Bing or Google for the service. That would supply an explanation of what that service does for your machine. Alternatively you can go to one of the various third party pages and see if you can match your service against one of their lists.

Using the Tools tab.

The Tools tab lists diagnostic tools and other advanced tools you can run to improve computer performance. Before opening a tool, read the description next to the name of the tool to better understand the function it provides. To open a tool, select the name of the tool from the list and click the Launch button. These are tools that are built into the operating system like event viewer and such, but they are all gathered in one place under this tab.

Once any changes have been made you will be asked to restart as soon as you close the MSConfig utility. On restart you check if the changes made had any effect. If they have you can keep them and continue to narrow the issue down. If they don't, revert back to the defaults and try again with different changes.

Note: If this doesn't resolve your issue, then you can contact your local Technical Support for further troubleshooting. Please be aware any troubleshooting on out of warranty machines will be chargeable.