Windows 11 PowerShell Trick - Speed Up Your Boot Time

Windows 11 PowerShell Trick - Speed Up Your Boot Time!

To speed up your boot time in Windows 11 using PowerShell, you can leverage specific commands to disable unnecessary startup services and optimize system performance. Below is a detailed step-by-step guide on how to use PowerShell effectively for this purpose:


1. Open PowerShell with Administrative Privileges

  • Press Windows + S to open the search bar.
  • Type “PowerShell,” then right-click on Windows PowerShell and select Run as Administrator.
  • Alternatively, press Windows + X and select Windows Terminal (Admin) if you are using the newer terminal interface.

2. List All Startup Applications

To identify which applications are set to run at startup, use the following command:

Get-CimInstance Win32_StartupCommand | Select-Object Name, Command, Location

This command will display a list of all startup programs along with their file paths and locations. Review this list carefully to determine which programs you want to disable.


3. Disable Unnecessary Startup Applications

Once you’ve identified unnecessary startup programs, you can disable them by removing their registry entries or disabling their scheduled tasks. Use the following command:

Disable-ScheduledTask -TaskName ""

Replace with the name of the task you wish to disable. To view all scheduled tasks, use:

Get-ScheduledTask | Where-Object {$_.State -eq "Ready"} | Select TaskName

For registry-based startup items, you can manually remove them using:

Remove-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Run" -Name ""

Replace with the name of the application.


4. Optimize Boot Configuration Data (BCD)

The Boot Configuration Data (BCD) contains settings that control how Windows starts up. You can optimize it by enabling fast boot or reducing timeout values:

  1. Check current BCD settings:
    bcdedit /enum
  2. Enable Fast Boot (if supported):
    powercfg /hibernate on
  3. Reduce boot menu timeout (default is 30 seconds; reduce it to 5 seconds):
    bcdedit /timeout 5

5. Disable Unnecessary Services

Some background services may slow down your boot time unnecessarily. Use PowerShell to identify and disable these services:

  1. List all running services:
    Get-Service | Where-Object {$_.Status -eq 'Running'} | Select DisplayName, StartType
  2. Disable a service by name:
    Set-Service -Name "" -StartupType Disabled
    Replace with the name of the service you want to disable.

Be cautious when disabling services—only disable non-essential ones like third-party software-related services.


6. Enable High Performance Power Plan

Ensure your system is set to a high-performance power plan for faster boot times:

  1. Check available power plans:
    powercfg /list
  2. Set High Performance as default (replace with the GUID of the High Performance plan):
    powercfg /setactive 

If no High Performance plan exists, create one using:

powercfg /duplicatescheme SCHEME_MINIMUM SCHEME_HIGH_PERFORMANCE 

7. Clear Temporary Files and Prefetch Data

Temporary files and prefetch data can slow down your system over time. Use these commands to clean them up:

  1. Clear temporary files:
    Remove-Item -Path "$env:Temp\*" -Recurse -Force
  2. Clear prefetch data (optional but effective for older systems):
     del C:\Windows\Prefetch\*.* /Q 
    Note: Run this command in Command Prompt (cmd) instead of PowerShell.

8. Measure Boot Time Improvements

After making these changes, measure your boot time improvements using Event Viewer or a custom script in PowerShell:

  1. View boot performance logs in Event Viewer under Diagnostics-Performance > Operational.
  2. Alternatively, use this script in PowerShell for quick results:
     Measure-Command {Restart-Computer}

This will restart your computer and measure how long it takes for Windows to reboot completely.

Post a Comment

Previous Post Next Post