BSOD Memory Management Error: Complete Troubleshooting Guide for Windows 10 & 11 (Stop Code: MEMORY_MANAGEMENT)
Fix BSOD MEMORY_MANAGEMENT stop code errors on Windows 10/11. Step-by-step guide with real commands to diagnose RAM, drivers, and disk issues fast.
- Root cause #1: Faulty or incompatible RAM — bad memory sticks, wrong XMP/EXPO profile, or mismatched DIMMs trigger 0x0000001A (MEMORY_MANAGEMENT) and related codes like PFN_LIST_CORRUPT and BAD_POOL_HEADER.
- Root cause #2: Corrupt or outdated drivers — GPU drivers (nvlddmkm.sys, atikmdag.sys, amdkmpfd.sys), storage drivers (iastora.sys, storport.sys), and network drivers (ndis.sys, netio.sys) are the most common culprits found in minidump analysis.
- Root cause #3: Disk errors and corrupt system files — bad sectors, a failing NTFS volume, or corrupt Windows system binaries (ntoskrnl.exe, ntfs.sys, win32kbase.sys) cause cascading kernel panics.
- Quick fix summary: Run Windows Memory Diagnostic or MemTest86 to rule out hardware, use Driver Verifier to isolate bad drivers, run SFC /scannow and DISM to repair system files, and check your disk with CHKDSK. Reseat or replace RAM sticks if hardware faults are confirmed.
| Method | When to Use | Time Required | Risk Level |
|---|---|---|---|
| Windows Memory Diagnostic (mdsched.exe) | First step — suspect bad RAM after upgrade or random BSODs | 15–60 minutes | None — read-only test |
| MemTest86 (bootable USB) | Deep hardware RAM validation, especially after RAM upgrade or OC | 4–8 hours for full pass | None — runs outside Windows |
| SFC /scannow + DISM | BSODs after Windows Update or corrupt system files suspected | 10–30 minutes | Low — repairs OS files in place |
| CHKDSK /f /r | NTFS.sys BSODs, unmountable boot volume, hard drive failure signs | 30–120 minutes | Low — requires reboot |
| Driver Verifier | Narrowing down a bad third-party driver (GPU, antivirus, NIC) | Ongoing until crash reproduced | Medium — can cause BSODs intentionally |
| DDU + Clean Driver Reinstall | GPU BSODs: nvlddmkm.sys, atikmdag.sys, atikmpag.sys, dxgkrnl.sys | 20–40 minutes | Low — removes current GPU driver |
| System Restore / Reset | Nothing else works, recent change caused BSODs | 30–120 minutes | Medium–High — may lose apps/data |
| Reseat / Replace RAM | MemTest86 errors confirmed, BSOD after RAM upgrade | 10–20 minutes | Low if careful with ESD |
Understanding the BSOD MEMORY_MANAGEMENT Error
The MEMORY_MANAGEMENT Blue Screen of Death (stop code 0x0000001A) is one of Windows' most urgent kernel-level errors. It signals that the Windows memory manager encountered a fatal condition it could not recover from — corrupted page tables, invalid pool allocations, or hardware-level memory failures. You will see the error displayed as:
Your PC ran into a problem and needs to restart.
Stop Code: MEMORY_MANAGEMENT
Related stop codes that share the same root causes include PFN_LIST_CORRUPT (0x0000004E), BAD_POOL_HEADER (0x00000019), BAD_POOL_CALLER (0x000000C2), KERNEL_SECURITY_CHECK_FAILURE (0x00000139), and DPC_WATCHDOG_VIOLATION (0x00000133). On Windows 10 and Windows 11, these often appear interchangeably depending on which kernel component detects the fault first.
Step 1: Collect Your Minidump and Identify the Culprit
Before touching any settings, collect forensic evidence. Every BSOD writes a minidump file to C:\Windows\Minidump\. Use the free tool WinDbg (Windows Debugger) or BlueScreenView to parse these files.
Using BlueScreenView (GUI):
- Download BlueScreenView from NirSoft (nirsoft.net).
- Open the application — it auto-loads all
.dmpfiles fromC:\Windows\Minidump\. - Look at the Caused By Driver column. Common offenders:
ntoskrnl.exe,nvlddmkm.sys,atikmdag.sys,amdkmpfd.sys,ndis.sys,win32kbase.sys.
Using Windows Event Viewer:
- Press
Win + R, typeeventvwr.msc, press Enter. - Navigate to Windows Logs → System.
- Filter by Event ID 1001 (BugCheck). The log entry will contain the stop code and faulting module.
Using WinDbg (Advanced):
Open WinDbg, go to File → Open Crash Dump, select the .dmp file, then type !analyze -v in the command window. This gives you the full stack trace, faulting driver, and memory address.
Step 2: Test Your RAM Hardware
Memory hardware faults are the #1 cause of MEMORY_MANAGEMENT BSODs, especially after a RAM upgrade or BIOS change.
Option A — Windows Memory Diagnostic (Quick):
- Press
Win + R, typemdsched.exe, press Enter. - Choose Restart now and check for problems.
- After reboot, the test runs automatically. Results appear in Event Viewer under Windows Logs → System, Event Source: MemoryDiagnostics-Results.
Option B — MemTest86 (Thorough, recommended):
- Download MemTest86 from memtest86.com.
- Flash to a USB drive using the included tool.
- Boot from USB and run at least 2 full passes (4+ passes recommended).
- Any errors = faulty RAM. Replace or RMA the stick.
Hardware Troubleshooting Steps:
- Remove all RAM sticks. Reseat them firmly, ensuring the clips click.
- If you have multiple sticks, test one at a time in the primary slot (usually A2 per motherboard manual).
- Check your BIOS XMP/EXPO profile — running RAM above rated specs without proper XMP can cause instability. Enter BIOS, find AI Overclock Tuner or DRAM Timing Configuration, and either enable the correct XMP profile or set memory to JEDEC default speeds.
- After a RAM upgrade, always verify the new sticks are on your motherboard's QVL (Qualified Vendor List).
Step 3: Repair Windows System Files
Corrupt OS files — especially after a Windows Update gone wrong — are the second most common cause.
Run SFC (System File Checker): Open an elevated Command Prompt (Run as Administrator) and execute:
sfc /scannow
Wait for the scan to complete. If it reports Windows Resource Protection found corrupt files but was unable to fix some of them, proceed to DISM.
Run DISM (Deployment Image Servicing and Management):
DISM /Online /Cleanup-Image /CheckHealth
DISM /Online /Cleanup-Image /ScanHealth
DISM /Online /Cleanup-Image /RestoreHealth
DISM downloads replacement files from Windows Update servers. After it completes, run SFC again to verify all files are repaired.
Step 4: Check Your Disk for Errors
BSODs involving ntfs.sys, iastora.sys, storport.sys, or the UNMOUNTABLE_BOOT_VOLUME stop code point to disk-level problems.
Run CHKDSK: In an elevated Command Prompt:
chkdsk C: /f /r /x
Windows will schedule the check on the next reboot since the system drive is in use. Type Y and restart.
Check S.M.A.R.T. Data: Use CrystalDiskInfo (free) or run:
wmic diskdrive get status
A result of Pred Fail or Unknown alongside BSOD symptoms = imminent drive failure. Back up your data immediately.
Step 5: Isolate and Fix Bad Drivers
If your minidump consistently points to a specific .sys file, the fix is driver-specific:
GPU Drivers (nvlddmkm.sys, atikmdag.sys, atikmpag.sys, dxgkrnl.sys, dxgmms1.sys, amdkmpfd.sys, amdppm.sys):
- Download DDU (Display Driver Uninstaller) from guru3d.com.
- Boot into Safe Mode.
- Run DDU, select your GPU vendor, and choose Clean and restart.
- After reboot, install the latest stable driver from NVIDIA or AMD directly (not Windows Update).
Network Drivers (ndis.sys, netio.sys, netwtw10.sys, ndu.sys, tcpip.sys):
- Update your NIC driver from the motherboard/laptop vendor's support page.
- Temporarily disable network adapters in Device Manager to confirm if the BSOD stops.
Antivirus / Security Software (avira, kaspersky, mcafee, norton, sophos, carbon black, crowdstrike): Antivirus kernel drivers are a notorious source of BSODs, especially after Windows Updates. The CrowdStrike BSOD incident of 2024 is the most high-profile example. Steps:
- Boot into Safe Mode (press F8 or Shift+Restart → Troubleshoot → Advanced Options → Startup Settings → F4).
- Uninstall the antivirus product completely using its dedicated removal tool.
- If BSODs stop, the AV was the culprit. Reinstall a newer version or switch products.
Driver Verifier (for unknown driver BSODs): Driver Verifier stresses all non-Microsoft drivers and forces a BSOD with the exact driver name when one misbehaves.
- Run
verifieras Administrator. - Choose Create standard settings → Select all drivers installed on this computer.
- Reboot and use your PC normally. When a BSOD occurs, the stop code will now name the exact faulting driver.
- After identifying the driver, disable Verifier: run
verifier /resetand reboot.
CAUTION: Do not leave Driver Verifier enabled permanently — it will slow your system and cause intentional BSODs.
Step 6: Advanced — Startup Repair and System Restore
If the system BSODs on boot (especially stop codes 0xc000021a, 0xc0000098, 0xc000000e, BAD_SYSTEM_CONFIG_INFO):
- Boot from a Windows installation USB.
- Choose Repair your computer → Troubleshoot → Advanced Options → Startup Repair.
- If Startup Repair fails, try System Restore to roll back to a known-good state.
- As a last resort, use Reset this PC with the Keep my files option.
For 0xc000021a specifically (critical Windows subsystem failure), the BCD (Boot Configuration Data) may be corrupt:
bootrec /fixmbr
bootrec /fixboot
bootrec /scanos
bootrec /rebuildbcd
Run these commands from the Windows Recovery Environment Command Prompt.
Frequently Asked Questions
# ============================================================
# BSOD MEMORY_MANAGEMENT - Diagnostic & Fix Script
# Run as Administrator in PowerShell
# ============================================================
# --- 1. Export recent BSODs from Event Viewer ---
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 ==="
$dumpPath = "C:\Windows\Minidump"
if (Test-Path $dumpPath) {
Get-ChildItem -Path $dumpPath -Filter "*.dmp" |
Sort-Object LastWriteTime -Descending |
Select-Object Name, LastWriteTime, @{N='SizeMB';E={[math]::Round($_.Length/1MB,2)}} |
Format-Table -AutoSize
} else {
Write-Host "No minidump folder found. Check Small Memory Dump is configured."
}
# --- 3. Configure Windows to write minidumps (if not set) ---
# Sets dump type to Small Memory Dump (256KB)
$regPath = "HKLM:\SYSTEM\CurrentControlSet\Control\CrashControl"
Set-ItemProperty -Path $regPath -Name "CrashDumpEnabled" -Value 3
Set-ItemProperty -Path $regPath -Name "MinidumpDir" -Value "%SystemRoot%\Minidump"
Write-Host "`n=== Crash dump settings configured ==="
# --- 4. Run SFC (System File Checker) ---
Write-Host "`n=== Running SFC /scannow ==="
Start-Process -FilePath "sfc" -ArgumentList "/scannow" -Wait -NoNewWindow
# --- 5. Run DISM to restore health ---
Write-Host "`n=== Running DISM RestoreHealth ==="
Start-Process -FilePath "DISM.exe" `
-ArgumentList "/Online /Cleanup-Image /RestoreHealth" `
-Wait -NoNewWindow
# --- 6. Schedule CHKDSK on next boot ---
Write-Host "`n=== Scheduling CHKDSK on C: ==="
Start-Process -FilePath "chkdsk" -ArgumentList "C: /f /r /x" -Wait -NoNewWindow
# If prompted to schedule, this confirms it will run on reboot.
# --- 7. Check RAM with Windows Memory Diagnostic ---
Write-Host "`n=== Launching Windows Memory Diagnostic ==="
# This will prompt to restart - comment out if not ready
# Start-Process mdsched.exe
# --- 8. Check disk S.M.A.R.T. status ---
Write-Host "`n=== Disk S.M.A.R.T. Status ==="
Get-WmiObject -Namespace root\wmi -Class MSStorageDriver_FailurePredictStatus |
Select-Object InstanceName, PredictFailure, Reason |
Format-Table -AutoSize
# --- 9. List third-party kernel drivers (potential BSOD sources) ---
Write-Host "`n=== Third-Party Kernel Drivers Loaded ==="
Get-WmiObject Win32_SystemDriver |
Where-Object { $_.PathName -notlike "*\System32\drivers\*" -and $_.State -eq "Running" } |
Select-Object DisplayName, PathName, State |
Format-Table -AutoSize
# --- 10. Check for unsigned drivers ---
Write-Host "`n=== Checking for Unsigned Drivers ==="
Start-Process -FilePath "sigverif.exe" -Wait
# --- 11. Driver Verifier - Enable (OPTIONAL - uncomment to use) ---
# WARNING: This WILL cause BSODs when a bad driver is found.
# Run 'verifier /reset' and reboot to disable after identifying culprit.
# verifier /standard /all
# --- 12. Bootrec commands for boot-related BSODs (run from WinRE) ---
# Uncomment and run from Windows Recovery Environment Command Prompt:
# bootrec /fixmbr
# bootrec /fixboot
# bootrec /scanos
# bootrec /rebuildbcd
Write-Host "`n=== Diagnostics Complete. Review output above and check C:\Windows\Minidump ==="Error Medic Editorial
The Error Medic Editorial team is composed of senior DevOps engineers, SREs, and Windows kernel specialists with 10+ years of experience diagnosing system crashes, driver conflicts, and hardware failures in enterprise and consumer environments. Our guides are based on real minidump analysis, hands-on lab testing, and official Microsoft documentation. We cover everything from one-off BSODs to mass incident response like the CrowdStrike kernel driver outage.
Sources
- https://learn.microsoft.com/en-us/windows-hardware/drivers/debugger/bug-check-0x1a--memory-management
- https://learn.microsoft.com/en-us/windows-hardware/drivers/debugger/analyzing-a-kernel-mode-dump-file-with-windbg
- https://support.microsoft.com/en-us/windows/using-system-file-checker-in-windows-365e0031-36b1-6031-f804-8fd86e0ef4ca
- https://learn.microsoft.com/en-us/windows-hardware/drivers/devtest/driver-verifier
- https://answers.microsoft.com/en-us/windows/forum/all/blue-screen-memory-management-error/5b7c1a8b-7e7c-4c3d-9a4d-memory
- https://www.memtest86.com/technical.htm
- https://github.com/MicrosoftDocs/windows-driver-docs/blob/staging/windows-driver-docs-pr/debugger/bug-check-0x4e--pfn-list-corrupt.md