Error Medic

BSOD MEMORY_MANAGEMENT (Stop Code 0x0000001A): Complete Fix Guide for Windows 10 & 11

Fix BSOD MEMORY_MANAGEMENT errors (0x0000001A) on Windows 10/11. Step-by-step diagnosis with MemTest86, SFC, DISM, and driver rollback commands.

Last updated:
Last verified:
2,497 words
Key Takeaways
  • Root cause 1: Faulty or incompatible RAM — physical memory errors are the #1 trigger for MEMORY_MANAGEMENT BSODs, especially after a RAM upgrade or hardware change.
  • Root cause 2: Corrupt or outdated drivers — GPU drivers (nvlddmkm.sys, atikmdag.sys, amdkmpfd.sys), storage drivers (iastora.sys), and network drivers (ndis.sys, netio.sys) frequently cause kernel memory violations.
  • Root cause 3: Corrupt Windows system files or a bad Windows Update — ntoskrnl.exe, ntkrnlmp.exe, and kernel components can become corrupted, especially after a failed update.
  • Root cause 4: Overclocked CPU or RAM running outside stable XMP/EXPO profiles, or failing storage (NTFS.sys, storport.sys BSODs) contributing to bad pool header and PFN list corrupt errors.
  • Quick fix summary: Run Windows Memory Diagnostic or MemTest86 to rule out bad RAM, then run SFC /scannow and DISM to repair system files, then update or roll back suspect drivers identified in Event Viewer or WinDbg minidump analysis.
BSOD Memory Management Fix Approaches Compared
MethodWhen to UseTime RequiredRisk Level
Windows Memory Diagnostic (built-in)First step after any MEMORY_MANAGEMENT BSOD30–60 minNone
MemTest86 (bootable USB)When built-in test passes but BSODs persist; after RAM upgrade2–8 hoursNone
SFC /scannow + DISMCorrupt system files suspected; after bad Windows Update15–30 minVery Low
Driver rollback / update via Device ManagerBSOD started after driver install or Windows Update10–20 minLow
DDU (Display Driver Uninstaller) + clean GPU driver installnvlddmkm.sys, atikmdag.sys, atikmpag.sys, dxgkrnl.sys BSODs20–40 minLow
Check Disk (chkdsk /f /r)NTFS.sys, storport.sys, iastora.sys, or hard drive failure BSODs1–4 hoursLow
XMP/EXPO profile disable in BIOSBSODs after RAM upgrade or overclocking5 minNone
Windows Startup Repair / In-place UpgradeFrequent BSODs, 0xc000021a, unmountable boot volume, cannot boot30–90 minMedium
Third-party BSOD repair software (e.g., Restoro)Non-technical users wanting automated fix20–60 minMedium — verify legitimacy
Clean Windows InstallAll else fails; persistent BSOD after hardware verified good2–4 hoursHigh (data loss risk)

Understanding the BSOD MEMORY_MANAGEMENT Error

The MEMORY_MANAGEMENT Blue Screen of Death (stop code 0x0000001A) indicates that Windows kernel has detected a severe corruption or violation in memory management subsystems. You will see a screen reading:

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

This error is closely related to a family of stop codes including BAD_POOL_CALLER (0x000000C2), BAD_POOL_HEADER (0x00000019), PFN_LIST_CORRUPT (0x0000004E), and PAGE_FAULT_IN_NONPAGED_AREA (0x00000050). All of these share the same root cause spectrum: physical memory faults, kernel driver bugs, or corrupted OS structures.

Common Variants and Related Stop Codes

Stop Code Name Common Cause
0x0000001A MEMORY_MANAGEMENT RAM fault, driver memory leak
0x0000001E KMODE_EXCEPTION_NOT_HANDLED Driver crash in kernel mode
0x0000003B SYSTEM_SERVICE_EXCEPTION Driver/system file corruption
0x0000007E SYSTEM_THREAD_EXCEPTION_NOT_HANDLED Driver incompatibility
0x000000D1 DRIVER_IRQL_NOT_LESS_OR_EQUAL Network/storage driver IRQ bug
0x000000F4 CRITICAL_OBJECT_TERMINATION Storage failure, process crash
0x00000116 VIDEO_TDR_FAILURE GPU driver failure (nvlddmkm.sys)
0x00000133 DPC_WATCHDOG_VIOLATION Driver timeout, SSD firmware bug
0x00000139 KERNEL_SECURITY_CHECK_FAILURE Stack corruption, rootkit
0xC000021A STATUS_SYSTEM_PROCESS_TERMINATED winlogon.exe / csrss.exe crash

Step 1: Collect the Crash Dump and Identify the Culprit

Before touching any settings, extract the crash information. Windows writes minidumps to C:\Windows\Minidump\ by default.

Using Event Viewer:

  1. Press Win + R, type eventvwr.msc, press Enter.
  2. Navigate to Windows Logs > System.
  3. Filter by Event ID 41 (Kernel-Power — unexpected reboot) and Event ID 1001 (BugCheck).
  4. The BugCheck event will list the stop code and the faulting module (e.g., ntoskrnl.exe, nvlddmkm.sys).

Using WinDbg (recommended for advanced users): Download WinDbg from the Microsoft Store or Windows SDK. Open the most recent .dmp file from C:\Windows\Minidump\ and run !analyze -v to get the full fault chain including the exact driver or module at fault.

Using WhoCrashed (free tool): A GUI alternative that reads minidumps and produces a plain-English report identifying the faulting driver — useful for non-engineers.


Step 2: Test Physical RAM

Physical memory errors cause the majority of MEMORY_MANAGEMENT BSODs, especially if the crash occurs while gaming, during large file operations, or after a RAM upgrade.

Option A — Windows Memory Diagnostic (quick):

  1. Press Win + R, type mdsched.exe, press Enter.
  2. Select Restart now and check for problems.
  3. The tool runs in two passes (~15 minutes). Results appear after reboot in Event Viewer under Windows Logs > System (search for MemoryDiagnostics-Results).

Option B — MemTest86 (thorough — strongly recommended):

  1. Download MemTest86 from memtest86.com and create a bootable USB.
  2. Boot from the USB and run at least 2 full passes (8+ passes for confidence).
  3. Any errors = replace or reseat RAM. Test one stick at a time to isolate the faulty module.

If you recently upgraded RAM:

  • Enter BIOS/UEFI and disable XMP or EXPO profile temporarily. Run at stock speeds to confirm stability.
  • Ensure the RAM is seated in the correct dual-channel slots (usually A2 and B2 — check your motherboard manual).
  • Verify the RAM is on your motherboard's QVL (Qualified Vendor List).

Step 3: Repair Windows System Files

Corrupt kernel files (ntoskrnl.exe, ntkrnlmp.exe, ntfs.sys) frequently cause MEMORY_MANAGEMENT crashes. Run these tools in an elevated Command Prompt:

:: Step 3a: System File Checker
sfc /scannow

:: Step 3b: DISM to repair the Windows image (requires internet or mounted ISO)
DISM /Online /Cleanup-Image /CheckHealth
DISM /Online /Cleanup-Image /ScanHealth
DISM /Online /Cleanup-Image /RestoreHealth

:: Step 3c: Check filesystem integrity on C: drive
chkdsk C: /f /r /x
:: Note: chkdsk will schedule on next reboot for the system drive

Restart after each tool and monitor for BSODs.


Step 4: Update, Rollback, or Remove Problem Drivers

The Event Viewer BugCheck or WinDbg analysis will name the faulting .sys file. Here is how to handle the most common offenders:

GPU Drivers (nvlddmkm.sys / atikmdag.sys / atikmpag.sys / amdkmpfd.sys / dxgkrnl.sys):

  1. Download Display Driver Uninstaller (DDU) from guru3d.com.
  2. Boot into Safe Mode (Win + Rmsconfig → Boot tab → Safe boot).
  3. Run DDU and select Clean and Restart.
  4. Download the latest WHQL-certified driver from nvidia.com or amd.com and perform a clean install (check the "Perform a clean installation" checkbox in the NVIDIA installer).

Network Drivers (ndis.sys / netio.sys / ndu.sys / netwtw10.sys):

  • Update network adapter drivers from the manufacturer's website (Intel, Realtek, Killer).
  • Disable the Network Data Usage (ndu.sys) service if it is listed as the faulting module: sc config ndu start= disabled

Storage Drivers (iastora.sys / storport.sys):

  • Update Intel RST (Rapid Storage Technology) drivers from intel.com.
  • If using NVMe: update NVMe firmware using the drive manufacturer's tool.

Security Software (avira, kaspersky, mcafee, norton, sophos, carbon black, crowdstrike):

  • Third-party antivirus kernel drivers are a well-documented BSOD cause, especially after Windows updates.
  • Temporarily uninstall the AV using the vendor's dedicated removal tool and test stability.
  • The CrowdStrike BSOD incident (July 2024, csagent.sys, stop code 0x50 / PAGE_FAULT_IN_NONPAGED_AREA) is a high-profile example of this pattern.

Step 5: Check for Bad Windows Updates

If BSODs began immediately after a Windows Update:

  1. Open Settings > Windows Update > Update History > Uninstall Updates.
  2. Remove the most recent cumulative update.
  3. Alternatively, use DISM to revert: DISM /Online /Get-Packages to identify the package, then DISM /Online /Remove-Package /PackageName:<name>.
  4. Pause Windows Updates temporarily while investigating.

Step 6: Advanced — Check for Hardware Issues Beyond RAM

  • CPU stability: If you have overclocked your CPU, revert to stock settings in BIOS. Run Prime95 stress test with Small FFTs for 30 minutes to expose instability.
  • PSU: An underpowered or failing PSU causes random BSODs across all categories. Check PSU wattage vs. system load and test with a known-good unit if possible.
  • GPU VRAM: Run OCCT GPU VRAM test or VRAM Test to detect faulty GPU memory (common cause of 0x00000116 / VIDEO_TDR_FAILURE and dxgmms1.sys / dxgmms2.sys crashes).
  • Storage health: Use CrystalDiskInfo to check SMART status. Reallocated sectors, pending sectors, or uncorrectable errors indicate a failing drive.

Step 7: Last Resort — Startup Repair or In-place Upgrade

If the system cannot boot reliably (0xC000021A, unmountable boot volume, BSOD on startup):

  1. Boot from Windows installation media (USB).
  2. Select Repair your computer > Troubleshoot > Startup Repair.
  3. If that fails, perform an In-place Upgrade Repair: boot to USB, run setup.exe, choose Upgrade this PC now, and select Keep personal files and apps. This reinstalls Windows while preserving data.

For 0xC000021A specifically, also try:

:: From WinRE Command Prompt
bcdedit /set {default} safeboot minimal
:: Reboot into Safe Mode, then remove recently installed software/drivers
bcdedit /deletevalue {default} safeboot

Frequently Asked Questions

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

# --- 1. Read last BSOD stop code from Event Log ---
Write-Host "=== Last BugCheck Events ==" -ForegroundColor Cyan
Get-WinEvent -LogName System -MaxEvents 500 | Where-Object { $_.Id -eq 1001 -and $_.ProviderName -eq 'Microsoft-Windows-WER-SystemErrorReporting' } | Select-Object TimeCreated, Message | Format-List

# --- 2. List minidump files with timestamps ---
Write-Host "`n=== Minidump Files ===" -ForegroundColor Cyan
Get-ChildItem -Path "C:\Windows\Minidump\" -Filter "*.dmp" -ErrorAction SilentlyContinue | Sort-Object LastWriteTime -Descending | Select-Object Name, LastWriteTime, @{N='SizeMB';E={[math]::Round($_.Length/1MB,2)}}

# --- 3. Run System File Checker ---
Write-Host "`n=== Running SFC /scannow ===" -ForegroundColor Cyan
sfc /scannow

# --- 4. Run DISM to repair Windows image ---
Write-Host "`n=== Running DISM RestoreHealth ===" -ForegroundColor Cyan
DISM /Online /Cleanup-Image /RestoreHealth

# --- 5. Check RAM with Windows Memory Diagnostic (schedules on reboot) ---
# Uncomment to schedule:
# mdsched.exe

# --- 6. Schedule chkdsk on C: drive ---
Write-Host "`n=== Scheduling chkdsk on C: (runs at next reboot) ===" -ForegroundColor Cyan
echo Y | chkdsk C: /f /r /x

# --- 7. List recently installed drivers (last 30 days) ---
Write-Host "`n=== Recently Installed Drivers (last 30 days) ===" -ForegroundColor Cyan
$cutoff = (Get-Date).AddDays(-30)
Get-WmiObject Win32_PnPSignedDriver | Where-Object { $_.DriverDate -gt $cutoff -and $_.DriverName -ne $null } | Select-Object DeviceName, DriverName, DriverVersion, DriverDate | Format-Table -AutoSize

# --- 8. Check for problematic third-party kernel drivers (common BSOD culprits) ---
Write-Host "`n=== Checking for Known Problematic Drivers ===" -ForegroundColor Cyan
$suspects = @('ndu.sys','nvlddmkm.sys','atikmdag.sys','atikmpag.sys','amdkmpfd.sys','netio.sys','csagent.sys','avipbb.sys','klif.sys')
foreach ($drv in $suspects) {
    $found = Get-ChildItem -Path 'C:\Windows\System32\drivers\' -Filter $drv -ErrorAction SilentlyContinue
    if ($found) { Write-Host "[FOUND] $drv — $($found.FullName)" -ForegroundColor Yellow }
}

# --- 9. Disable ndu.sys if it is the faulting module (common Windows 10/11 BSOD) ---
# Uncomment only if ndu.sys is identified as the cause:
# sc.exe config ndu start= disabled

# --- 10. Export System Info for offline analysis ---
Write-Host "`n=== Exporting System Info to Desktop ===" -ForegroundColor Cyan
msinfo32 /report "$env:USERPROFILE\Desktop\SystemInfo.txt"
Write-Host "System info saved to Desktop\SystemInfo.txt" -ForegroundColor Green

# --- 11. GPU Driver Version Check ---
Write-Host "`n=== GPU Driver Information ===" -ForegroundColor Cyan
Get-WmiObject Win32_VideoController | Select-Object Name, DriverVersion, DriverDate | Format-Table -AutoSize

# --- 12. RAM Configuration Check ---
Write-Host "`n=== Installed RAM Modules ===" -ForegroundColor Cyan
Get-WmiObject Win32_PhysicalMemory | Select-Object BankLabel, DeviceLocator, Capacity, Speed, Manufacturer, PartNumber | Format-Table -AutoSize

Write-Host "`n=== Diagnostic Complete. Review output above and check Desktop for SystemInfo.txt ===" -ForegroundColor Green
Write-Host "Next steps: Run MemTest86 from bootable USB for full RAM validation." -ForegroundColor Yellow
E

Error Medic Editorial

The Error Medic Editorial team consists of senior DevOps engineers, Windows SREs, and systems administrators with 10+ years of experience diagnosing kernel-level crashes, memory faults, and driver conflicts across enterprise and consumer Windows environments. Our guides are built from real incident postmortems, Microsoft documentation, and community-validated troubleshooting workflows.

Sources

Related Articles in Other Bsod

Explore More windows Guides