When you boot up a Windows PC or laptop, a number of different system processes kick into action. They generate the user interface you’ll use to sign in and begin working, but they’ll also be responsible for various under-the-hood actions that you won’t even be aware of, like communicating with other network devices.

Unfortunately, system processes like ntoskrnl.exe and csrss.exe can sometimes cause problems on your PC. Ntoskrnl.exe, in particular, is a major component of the Windows operating system, making it difficult to troubleshoot issues. If ntoskrnl.exe is causing high CPU usage and you’re looking to fix it, here’s what you’ll need to do.

Table of Contents

    What Is Ntoskrnl.exe?

    The ntoskrnl.exe system process, also known as the Windows NT operating system kernel executable (or System in Windows Task Manager), is arguably one of the most important processes that Windows has. 

    A kernel is code that provides the link between hardware and software. When an operating system like Windows loads, the Windows kernel (ntoskrnl.exe) is used to send instructions to components like your CPU to perform tasks and actions. Without the ntoskrnl.exe system process, your Windows PC just wouldn’t work.

    It has responsibility for providing software with access to attached components and peripherals, managing loaded software processes to ensure they interact with hardware correctly (and securely), and controlling how much memory is used (and remains available) on your PC, among other things.

    While other system components can be disabled, you wouldn’t be able to disable ntosknrl.exe in a Windows installation. If it is ever forced to stop, Windows will return an ntoskrnl.exe BSOD error, and you’ll need to restart your PC. 

    Why Does Ntoskrnl.exe Cause High CPU Issues?

    Unfortunately, there isn’t a clear answer as to why ntoskrnl.exe can cause high CPU usage in Windows Task Manager. The causes behind this issue can differ from PC to PC.

    This is because ntoskrnl.exe is responsible for a lot of Windows system actions, or has a part in making other system actions happen via other processes. Another Windows service, installed app, corrupted system files, or attached peripheral could all cause the Windows ntoskrnl.exe system process (and your CPU) extra strain.

    The best way to try and resolve this issue is by checking your Windows system files, scanning for malware or viruses, and updating your PC. You can also run Windows in “clean boot” mode to see if another app or installed service is causing the issue.

    As ntoskrnl.exe is partly responsible for memory management in Windows 10, you may find that another app or service interfacing with it is using more system resources, which is incorrectly reported as belonging to the ntoskrnl.exe process.

    Check and Repair Windows System Files

    Windows works well when all of its required system files are in place. If some of those files are corrupted, missing, or can’t be accessed, then your Windows 10 installation may start to become unstable, with ntoskrnl.exe BSODs and errors becoming more likely.

    One possible way to fix this is by running the chkdsk and sfc command-line tools using the Windows PowerShell.

    1. To run Windows PowerShell, right-click the Start menu and select the Windows PowerShell (Admin) option.
    1. In the PowerShell terminal window, type sfc /scannow to check the integrity of Windows system files. This should find and automatically fix any missing or corrupted files, but you may need to hit Y to accept any changes.
    1. Once sfc has finished, type chkdsk /r to schedule a boot scan to check your hard drive’s file system. You’ll need to confirm by hitting Y on your keyboard, then reboot your PC to run the scan.

    These tools will check your installation and hard drive for missing or corrupt files. If ntoskrnl.exe issues continue, you’ll need to try one of the additional steps listed below.

    Installing Windows System and Driver Updates

    Windows system updates come with fixes and upgrades that can help resolve more common issues that users report online, including BSOD errors and high CPU usage.

    Making sure your PC is up-to-date by installing any available system and driver updates can sometimes resolve these issues. You can do this from the Windows Settings menu.

    1. To launch Windows Settings, right-click the Start menu and select the Settings option. In the Settings menu, select Update & Security > Windows Update > Download (or Download and Install) if updates are ready to install. Otherwise, select Check for Updates instead. This will automatically begin to download and install any available system and driver updates.

    If you’ve recently installed a new PC component or peripheral, you may want to check the manufacturer website for driver updates. This is particularly true for graphics cards, as manufacturers like NVIDIA regularly release brand-new drivers before they’re added to Windows Update.

    Check for Viruses and Malware

    Thanks to Microsoft Defender (previously Windows Defender), it’s never been easier to remove stubborn malware from a Windows 10 PC.

    1. To start, open Windows Settings (right-click the Start menu and select Settings). From there, select Update & Security > Open Windows Security.
    1. In the Windows Security window, select Virus & Threat Protection > Scan Options, then select the Microsoft Defender Offline Scan option. This will prepare a boot scan of your PC for malware. Select the Scan Now button to reboot your PC and begin the scanning process.

    Windows will reboot and begin to scan your drives for malware. If it detects any, you’ll be asked whether you want to remove or quarantine it. 

    Troubleshoot Installed Apps and Services Using a Windows Clean Boot

    Windows 10 isn’t free from errors or bugs, but if your PC is up-to-date, and your system files are intact, then another app or installed service could be behind any potential ntoskrnl.exe issues.

    To check this, you can run a clean boot, which will run Windows without third-party apps and services.

    1. To reboot Windows into a clean boot mode, right-click the Start menu and select the Run option (or press the Windows key + R on your keyboard). In the Run command box, type msconfig, then select OK to launch it.
    1. In the General tab of the  System Configuration window, select the Selective startup option, then uncheck the Load system services and Load startup items options. This will ensure that only Microsoft-issued services will load when you next reboot. Press OK to confirm, then reboot your PC.
    1. Once you’ve rebooted into a clean boot version of Windows, check your CPU usage. If the problem is fixed, this would indicate that one of the non-Microsoft services shown in the Services tab of the System Configuration window is behind the problem.

    If that’s the case, you’ll need to investigate each service in turn to determine which may be causing a high CPU usage. You can then disable any problematic apps or services permanently if you find a culprit.

    Resolving Ntoskrnl.exe Issues

    If the methods above don’t work, and if you’re seeing high CPU usage for ntoskrnl.exe regularly, then you may need to consider other fixes. This is especially true if you’re seeing a ntoskrnl.exe BSOD error pop up, which could indicate an issue with your PC that can only be resolved by wiping and reinstalling Windows.

    If a drastic option like reinstalling Windows still doesn’t resolve the problem, then a hardware problem can’t be ruled out. Upgrading your PC by replacing essential components, such as your RAM or CPU, can be enough to get things working again, but you may find that replacing your PC entirely is the only option.