Error Medic

BSOD MEMORY_MANAGEMENT Windows 10: Stop Code Fix Guide (0x0000001A)

Fix BSOD MEMORY_MANAGEMENT (0x0000001A) on Windows 10. Step-by-step guide covering RAM tests, driver fixes, ntoskrnl.exe, nvlddmkm.sys, and more.

Last updated:
Last verified:
2,358 words
Key Takeaways
  • The MEMORY_MANAGEMENT BSOD (Stop Code 0x0000001A) is almost always caused by faulty RAM, corrupt drivers (ntoskrnl.exe, nvlddmkm.sys, fltmgr.sys), or a recent Windows 10 update that introduced a memory conflict.
  • Secondary root causes include corrupt system files, overclocked hardware with unstable memory timings, and third-party antivirus software hooking kernel memory incorrectly.
  • Quick fix path: Run Windows Memory Diagnostic or MemTest86 to rule out hardware failure, then run SFC /scannow and DISM to repair system files, roll back the latest Windows Update if the BSOD started after an update, and update or roll back GPU/NIC drivers if nvlddmkm.sys or fltmgr.sys appear in the crash dump.
Fix Approaches Compared
MethodWhen to UseTimeRisk
Windows Memory DiagnosticSuspect faulty RAM after any MEMORY_MANAGEMENT BSOD15-60 minNone
MemTest86 (bootable)Windows Memory Diagnostic passes but BSODs continue; deeper RAM test2-8 hrsNone
SFC /scannow + DISMSystem files corrupt; BSOD after Windows Update or crash loop10-20 minLow
Roll back Windows UpdateBSOD started immediately after a cumulative or feature update5-10 minLow
Update/Roll back GPU driver (nvlddmkm.sys)Crash dump references nvlddmkm.sys; gaming or GPU-intensive workloads5-15 minLow
Update/Roll back Filter Manager (fltmgr.sys)Crash dump references fltmgr.sys; antivirus or VPN software installed5-10 minLow
Disable XMP/DOCP in BIOSRAM is overclocked via XMP profile; instability under load5 minLow
Reseat or replace RAM sticksMemTest86 shows errors on specific DIMM slots10-30 minLow
Clean Windows 10 reinstallAll software fixes fail; hardware tests pass1-2 hrsMedium — data loss risk if drive not backed up

Understanding the MEMORY_MANAGEMENT BSOD (0x0000001A)

When Windows 10 encounters a severe memory subsystem violation it cannot recover from, it halts all execution and displays the Blue Screen of Death with the stop code MEMORY_MANAGEMENT and the hexadecimal value 0x0000001A. The full error string you will see on screen is:

Your PC ran into a problem and needs to restart.
Stop Code: MEMORY_MANAGEMENT

On older Windows 10 builds (pre-2004) you may also see the traditional format:

STOP: 0x0000001A (0x0000000000041790, 0xFFFF9A8B3F6A2000, 0x000000000000FFFF, 0x0000000000000000)

The four parameters in parentheses give more granular clues. The first parameter (e.g., 0x41790) identifies the specific memory management sub-failure. Common sub-codes include 0x41201 (page table corruption), 0x41284 (PFN list corruption — also surfacing as PFN_LIST_CORRUPT), and 0x41790 (invalid pool allocation). These are closely related to other stop codes you may encounter, including KERNEL_SECURITY_CHECK_FAILURE, UNEXPECTED_KERNEL_MODE_TRAP, and PFN_LIST_CORRUPT.


Step 1: Collect Crash Dump Information (Event Viewer + WinDbg)

Before applying any fix, identify which driver or component triggered the crash. Windows writes a minidump to C:\Windows\Minidump\ after each BSOD.

Using Windows Event Viewer:

  1. Press Win + X and open Event Viewer.
  2. Navigate to Windows Logs → System.
  3. Filter by Critical events and look for Event ID 41 (Kernel-Power) or 1001 (BugCheck).
  4. The BugCheck event shows the stop code and dump file path — note these values.

Using WinDbg (Recommended for developers): Install WinDbg from the Microsoft Store or Windows SDK. Open the latest .dmp file from C:\Windows\Minidump\ and run:

!analyze -v

Look for the IMAGE_NAME field in the output. If it shows ntoskrnl.exe, the crash is a core Windows kernel issue. If it shows nvlddmkm.sys, your NVIDIA driver is the culprit. If it shows fltmgr.sys, a file system filter driver (antivirus, VPN, or backup software) is involved.


Step 2: Run Windows Memory Diagnostic

This is always the first hardware check.

  1. Press Win + R, type mdsched.exe, and press Enter.
  2. Choose Restart now and check for problems.
  3. Windows reboots into the diagnostic tool and runs two passes of tests.
  4. After completion, log back in and open Event Viewer → Windows Logs → System, filter for source MemoryDiagnostics-Results.
  5. If errors are found, proceed to MemTest86 to identify the specific bad DIMM.

Step 3: Run MemTest86 for Extended RAM Testing

Windows Memory Diagnostic uses a limited test set. MemTest86 is the gold standard.

  1. Download MemTest86 from https://www.memtest86.com/ and create a bootable USB.
  2. Boot from the USB and let it run for a minimum of 4 passes (overnight is ideal).
  3. Any errors reported (marked with red FAIL) indicate defective RAM.
  4. Test individual sticks: remove all but one DIMM, run the test, then rotate sticks to isolate the faulty module.
  5. If a bad DIMM is found, replace it. Also test the motherboard slot itself with a known-good module.

Pro tip: If your RAM is running an XMP or DOCP profile for higher speeds (e.g., DDR4-3600 on a board rated for DDR4-3200), disable XMP in BIOS and test at JEDEC defaults. Many MEMORY_MANAGEMENT BSODs on gaming PCs are caused by unstable XMP timings.


Step 4: Repair System Files with SFC and DISM

Corrupt Windows system files — especially those in the memory manager (ntoskrnl.exe, hal.dll) — cause this BSOD. This is particularly common after a failed Windows Update.

Run these commands in an elevated PowerShell or Command Prompt:

# Step 4a: Scan and repair protected system files
sfc /scannow

# Step 4b: If SFC reports errors it cannot fix, repair the component store
DISM /Online /Cleanup-Image /CheckHealth
DISM /Online /Cleanup-Image /ScanHealth
DISM /Online /Cleanup-Image /RestoreHealth

# Step 4c: Run SFC again after DISM completes
sfc /scannow

Restart after these complete. If SFC reports Windows Resource Protection found corrupt files and successfully repaired them, this was likely your fix.


Step 5: Address Driver-Specific BSODs

ntoskrnl.exe (bsod caused by ntoskrnl exe windows 10): While ntoskrnl.exe appearing in the crash dump often points to a third-party driver that corrupted kernel memory rather than Windows itself being broken, you should:

  • Update all drivers, especially chipset, storage (NVMe), and network drivers.
  • Use DDU (Display Driver Uninstaller) in Safe Mode to cleanly remove GPU drivers, then reinstall the latest WHQL version from NVIDIA/AMD.
  • Check for BIOS/UEFI firmware updates from your motherboard manufacturer.

nvlddmkm.sys (bsod nvlddmkm sys windows 10): This is the NVIDIA kernel-mode driver. Fix steps:

  1. Boot into Safe Mode (Settings → Update & Security → Recovery → Advanced Startup → Troubleshoot → Advanced Options → Startup Settings).
  2. Download DDU from https://www.guru3d.com/files-details/display-driver-uninstaller-download.html
  3. Run DDU in Safe Mode — select GPU, choose "Clean and restart".
  4. Install the latest WHQL NVIDIA driver from https://www.nvidia.com/Download/index.aspx
  5. If BSODs persist with the latest driver, roll back to the previous stable version.

fltmgr.sys (bsod fltmgr sys windows 10): This is the Windows Filter Manager, used by antivirus, VPN, and backup software. Temporarily disable or uninstall third-party security software and test. Common culprits include Malwarebytes, ESET, Bitdefender kernel drivers, and Cisco AnyConnect. Update or reinstall the offending software.


Step 6: Roll Back a Problem Windows Update

If the BSOD started after a Windows Update (common around Patch Tuesday), uninstall the update:

  1. Go to Settings → Update & Security → Windows Update → View Update History → Uninstall Updates.
  2. Sort by Installed On date, find the most recent cumulative update (e.g., KB5025221), and uninstall it.
  3. Restart and monitor for 24-48 hours.
  4. To temporarily prevent the update from reinstalling, use the Show or Hide Updates troubleshooter from Microsoft.

Alternatively, use System Restore if a restore point exists from before the update:

rstrui.exe

Step 7: Check Virtual Memory / Page File Settings

Corrupt or improperly sized page files can trigger memory management BSODs.

  1. Right-click This PC → Properties → Advanced system settings → Advanced tab → Performance Settings → Advanced → Virtual Memory → Change.
  2. Uncheck Automatically manage paging file size for all drives.
  3. Select the system drive (C:), choose No paging file, click Set, then restart.
  4. After restart, go back and select System managed size, click Set, then restart again.

This rebuilds the page file from scratch, clearing any corruption.


Step 8: BSOD Recovery When Windows Won't Boot

If Windows 10 is stuck in a BSOD boot loop:

  1. Force three hard resets (hold power button) to trigger Automatic Repair / WinRE.
  2. Go to Troubleshoot → Advanced Options → System Restore to revert to a working state.
  3. Or use Startup Repair which attempts automatic fixes.
  4. If no restore point exists, use Command Prompt in WinRE and run:
    sfc /scannow /offbootdir=C:\ /offwindir=C:\Windows
    
  5. As a last resort, use Reset this PC → Keep my files to reinstall Windows without losing personal data.

Frequently Asked Questions

powershell
# ============================================================
# Windows 10 MEMORY_MANAGEMENT BSOD Diagnostic & Fix Script
# Run as Administrator in PowerShell
# ============================================================

# --- 1. Check for recent BSODs in Event Log ---
Write-Host "=== Recent BSOD Events ==="
Get-WinEvent -FilterHashtable @{LogName='System'; Id=1001} -MaxEvents 10 |
  Select-Object TimeCreated, Message | Format-List

# --- 2. List minidump files ---
Write-Host "`n=== Minidump Files ==="
Get-ChildItem -Path "C:\Windows\Minidump\" -Filter "*.dmp" -ErrorAction SilentlyContinue |
  Sort-Object LastWriteTime -Descending | Select-Object Name, LastWriteTime, Length

# --- 3. Check RAM slots and capacity ---
Write-Host "`n=== Installed RAM ==="
Get-WmiObject Win32_PhysicalMemory |
  Select-Object BankLabel, DeviceLocator, Capacity, Speed, Manufacturer, PartNumber |
  Format-Table -AutoSize

# --- 4. SFC scan ---
Write-Host "`n=== Running SFC (this may take 10-15 minutes) ==="
sfc /scannow

# --- 5. DISM health check and repair ---
Write-Host "`n=== Running DISM Health Check ==="
DISM /Online /Cleanup-Image /CheckHealth
Write-Host "`n=== Running DISM RestoreHealth ==="
DISM /Online /Cleanup-Image /RestoreHealth

# --- 6. Check for problematic drivers (non-Microsoft signed) ---
Write-Host "`n=== Non-Microsoft Kernel Drivers ==="
Get-WmiObject Win32_SystemDriver |
  Where-Object { $_.State -eq 'Running' } |
  ForEach-Object {
    $path = $_.PathName -replace '\\??\\', ''
    $sig = Get-AuthenticodeSignature $path -ErrorAction SilentlyContinue
    if ($sig.SignerCertificate.Subject -notmatch 'Microsoft') {
      [PSCustomObject]@{
        Name    = $_.Name
        Path    = $path
        Signer  = $sig.SignerCertificate.Subject
        Status  = $sig.Status
      }
    }
  } | Format-Table -AutoSize

# --- 7. Check page file configuration ---
Write-Host "`n=== Page File Settings ==="
Get-WmiObject Win32_PageFileSetting | Select-Object Name, InitialSize, MaximumSize

# --- 8. List recent Windows Updates (last 10) ---
Write-Host "`n=== Recent Windows Updates ==="
Get-HotFix | Sort-Object InstalledOn -Descending | Select-Object -First 10 |
  Select-Object HotFixID, InstalledOn, Description | Format-Table -AutoSize

# --- 9. Schedule Windows Memory Diagnostic ---
Write-Host "`n=== Scheduling Windows Memory Diagnostic on Next Reboot ==="
$result = Start-Process -FilePath "mdsched.exe" -ArgumentList "" -PassThru
Write-Host "Memory Diagnostic will run on next system restart."

# --- 10. Export system info for review ---
Write-Host "`n=== Exporting System Info to C:\bsod_report.txt ==="
$report = @"
[System Info]
$(Get-ComputerInfo | Select-Object WindowsProductName, WindowsVersion, OsBuildNumber, CsProcessors, CsTotalPhysicalMemory | Out-String)

[Installed Drivers - Running]
$(Get-WmiObject Win32_SystemDriver | Where-Object State -eq 'Running' | Select-Object Name, PathName | Out-String)
"@
$report | Out-File -FilePath "C:\bsod_report.txt" -Encoding UTF8
Write-Host "Report saved to C:\bsod_report.txt"

Write-Host "`n=== Diagnostic Complete. Review output above and C:\bsod_report.txt ==="
E

Error Medic Editorial

The Error Medic Editorial team is composed of senior DevOps engineers, SREs, and Windows system administrators with 10+ years of experience diagnosing hardware and OS-level failures across enterprise and consumer environments. We specialize in translating cryptic stop codes into actionable, step-by-step remediation guides backed by official Microsoft documentation and real-world debugging sessions.

Sources

Related Articles in Windows 10 Bsod

Explore More windows Guides