How to Fix Microsoft Windows Stop Codes (BSOD): Complete Troubleshooting Guide Including Memory Management Errors
Fix Windows Stop Code BSODs including MEMORY_MANAGEMENT errors. Step-by-step diagnostics with real commands to resolve blue screen crashes fast.
- Windows Stop Codes (Blue Screen of Death) are triggered by critical kernel-level failures; the stop code displayed (e.g., 0x0000001A for MEMORY_MANAGEMENT) identifies the exact subsystem that failed.
- The most common root causes are faulty or incompatible RAM, corrupted system files, outdated or broken device drivers, overheating hardware, and malware that corrupts kernel memory.
- Quick fix summary: Boot into Safe Mode, run 'sfc /scannow' and 'DISM /Online /Cleanup-Image /RestoreHealth' to repair system files, run Windows Memory Diagnostic or MemTest86 to test RAM, update or roll back suspect drivers, and check Event Viewer for the faulting module name to pinpoint the exact cause.
| Method | When to Use | Time | Risk |
|---|---|---|---|
| SFC + DISM scan | Corrupted system files suspected; Windows boots at least to Safe Mode | 15-45 min | Low |
| Windows Memory Diagnostic | Random BSODs, MEMORY_MANAGEMENT stop code, system instability | 30-60 min | Low |
| MemTest86 (bootable) | Windows Memory Diagnostic passes but BSODs continue; deep RAM validation needed | 2-8 hours | Low |
| Driver rollback / update | BSOD started after a Windows Update or new hardware/driver install | 10-20 min | Low-Medium |
| Check Minidump with WinDbg | Need exact faulting driver or module name before acting | 20-40 min | Low |
| System Restore | BSOD started recently; a known-good restore point exists | 20-40 min | Medium (may revert software) |
| Startup Repair via WinRE | System will not boot to Windows at all | 15-30 min | Low-Medium |
| Clean Windows reinstall | All other fixes fail; hardware confirmed healthy | 2-4 hours | High (data loss risk) |
Understanding Windows Stop Codes
A Windows Stop Code — colloquially called a Blue Screen of Death (BSOD) — appears when the Windows kernel encounters a fatal error it cannot recover from. Microsoft's official stop code reference lives at https://www.microsoft.com/windows/stop-code (redirects to the Windows support documentation), and every stop code maps to a specific bug check constant and hexadecimal value.
When your PC crashes, you will see a screen similar to:
Your PC ran into a problem and needs to restart.
We're just collecting some error info, and then we'll restart for you.
Stop code: MEMORY_MANAGEMENT
Other common stop codes include:
- CRITICAL_PROCESS_DIED (0x000000EF)
- SYSTEM_THREAD_EXCEPTION_NOT_HANDLED (0x0000007E)
- IRQL_NOT_LESS_OR_EQUAL (0x0000000A)
- PAGE_FAULT_IN_NONPAGED_AREA (0x00000050)
- MEMORY_MANAGEMENT (0x0000001A)
- KERNEL_SECURITY_CHECK_FAILURE (0x00000139)
- DPC_WATCHDOG_VIOLATION (0x00000133)
Each stop code points to a specific Windows kernel subsystem. Understanding which subsystem failed narrows your diagnostic path significantly.
Step 1: Record the Stop Code and Collect Minidump Data
Before attempting any fix, gather data so you know what you are actually fixing.
1.1 Note the exact stop code displayed on the blue screen. If the system reboots too quickly, disable automatic restart:
- Right-click This PC → Properties → Advanced system settings → Startup and Recovery → Settings → uncheck Automatically restart.
1.2 Locate minidump files:
Windows writes crash dumps to C:\Windows\Minidump\. Each .dmp file corresponds to one BSOD event.
1.3 Analyze the dump with WinDbg: Download WinDbg from the Microsoft Store or via the Windows SDK. Open a minidump:
- File → Open Crash Dump → select the
.dmpfile. - Run
!analyze -vin the command window.
Look for the faulting module line, for example:
Faulting module: nvlddmkm.sys (NVIDIA display driver)
This immediately tells you which driver or component caused the crash.
1.4 Check Event Viewer:
Press Win + X → Event Viewer → Windows Logs → System. Filter for Critical events around the time of the crash. Look for Event ID 41 (Kernel-Power) or 1001 (BugCheck).
Step 2: Boot into Safe Mode (if Windows Won't Start Normally)
If Windows fails to boot, you need access to the Windows Recovery Environment (WinRE):
- Force three consecutive failed boots (hold the power button during the Windows logo) to trigger Automatic Repair.
- Click Advanced options → Troubleshoot → Advanced options → Startup Settings → Restart.
- Press 4 or F4 to boot into Safe Mode, or 5/F5 for Safe Mode with Networking.
Safe Mode loads only essential drivers, which isolates driver-related BSODs immediately — if the system is stable in Safe Mode, a third-party driver is almost certainly the culprit.
Step 3: Repair Corrupted System Files
Open Command Prompt as Administrator and run:
sfc /scannow
This scans and repairs corrupted protected system files. If SFC reports it could not repair files, run DISM:
DISM /Online /Cleanup-Image /CheckHealth
DISM /Online /Cleanup-Image /ScanHealth
DISM /Online /Cleanup-Image /RestoreHealth
After DISM completes, run sfc /scannow again. Restart and test.
Step 4: Test RAM (Critical for MEMORY_MANAGEMENT Stop Code)
The MEMORY_MANAGEMENT stop code (0x0000001A) almost always points to defective RAM, driver corruption of memory, or a failing memory controller.
Option A — Windows Memory Diagnostic (built-in):
Press Win + R, type mdsched.exe, and choose Restart now and check for problems. The tool runs on next boot and logs results to Event Viewer under Windows Logs → System, source: MemoryDiagnostics-Results.
Option B — MemTest86 (more thorough):
- Download MemTest86 from https://www.memtest86.com/.
- Flash to a USB drive using the included image writer.
- Boot from USB and run at least two full passes.
- Any errors = faulty RAM. Replace the stick(s).
Isolating a bad stick: If you have multiple RAM modules, remove all but one, run the system, and rotate sticks until you identify the faulty module.
Step 5: Update, Roll Back, or Uninstall Problem Drivers
Drivers are the #1 cause of Windows BSODs. The faulting module name from WinDbg (Step 1.3) will point you directly to the driver.
Roll back a driver:
- Press
Win + X→ Device Manager. - Right-click the device → Properties → Driver tab → Roll Back Driver.
Update a driver:
- Right-click the device → Update driver → Search automatically.
- Or download directly from the manufacturer's website (GPU: NVIDIA/AMD, chipset: Intel/AMD, NIC: Realtek/Intel).
Uninstall a problematic driver cleanly:
- For GPU drivers, use Display Driver Uninstaller (DDU) in Safe Mode before reinstalling.
Step 6: Check for Overheating
Thermal throttling and sudden shutdowns can manifest as stop codes. Download HWMonitor or Core Temp to check temperatures:
- CPU: should stay below 85°C under load.
- GPU: should stay below 90°C under load.
If temperatures are high: clean dust from heatsinks and fans, reapply thermal paste on the CPU, ensure case airflow is adequate.
Step 7: Run CHKDSK for Disk Errors
A failing SSD or HDD can cause stop codes related to paged I/O:
chkdsk C: /f /r /x
Schedule on next reboot when prompted. CHKDSK will repair file system errors and attempt recovery of bad sectors.
Step 8: System Restore or Startup Repair
If the BSOD started after a specific change:
- System Restore: Control Panel → Recovery → Open System Restore → choose a restore point before the BSOD started.
- Startup Repair: WinRE → Troubleshoot → Advanced options → Startup Repair. Automatically fixes common boot and BCD issues.
Step 9: Reset or Reinstall Windows (Last Resort)
If all else fails and hardware is confirmed healthy:
- Reset this PC: Settings → System → Recovery → Reset this PC → choose Keep my files or Remove everything.
- Clean install: Use the Media Creation Tool from https://www.microsoft.com/software-download/windows11 to create bootable USB media and perform a fresh installation.
Always back up your data before this step.
Frequently Asked Questions
# ============================================================
# Windows Stop Code Diagnostic & Fix Script
# Run all commands in an elevated Command Prompt (Run as Admin)
# ============================================================
# --- STEP 1: Collect recent BSOD stop codes from Event Viewer ---
wevtutil qe System /q:"*[System[(EventID=1001)]]" /f:text /c:10
# --- STEP 2: List minidump files (analyze with WinDbg) ---
dir C:\Windows\Minidump\ /o-d
# --- STEP 3: Repair corrupted system files ---
sfc /scannow
# --- STEP 4: DISM image repair (run if SFC reports errors) ---
DISM /Online /Cleanup-Image /CheckHealth
DISM /Online /Cleanup-Image /ScanHealth
DISM /Online /Cleanup-Image /RestoreHealth
# --- STEP 5: Re-run SFC after DISM ---
sfc /scannow
# --- STEP 6: Schedule CHKDSK on next reboot ---
chkdsk C: /f /r /x
# Type Y when prompted to schedule on next restart
# --- STEP 7: Launch Windows Memory Diagnostic ---
mdsched.exe
# Choose "Restart now and check for problems"
# --- STEP 8: Check disk health via SMART (PowerShell) ---
Get-PhysicalDisk | Select-Object FriendlyName, OperationalStatus, HealthStatus, Size
# --- STEP 9: List installed drivers sorted by date (find recent drivers) ---
driverquery /fo csv /v | sort
# --- STEP 10: Export full driver list with dates to CSV for review ---
Get-WmiObject Win32_PnPSignedDriver | Select-Object DeviceName, DriverVersion, DriverDate, Manufacturer | Export-Csv -Path $env:USERPROFILE\Desktop\drivers.csv -NoTypeInformation
# --- STEP 11: Check for pending Windows Updates (PowerShell) ---
Get-WindowsUpdate
# Note: requires PSWindowsUpdate module -- install with:
# Install-Module PSWindowsUpdate -Force
# --- STEP 12: Check system temperature log using WMI ---
Get-WmiObject MSAcpi_ThermalZoneTemperature -Namespace root/wmi | Select-Object -ExpandProperty CurrentTemperature | ForEach-Object { ($_ - 2732) / 10 }
# --- STEP 13: Check page file configuration ---
Get-WmiObject Win32_PageFileSetting | Select-Object Name, InitialSize, MaximumSize
# --- STEP 14: Delete and recreate page file (fix MEMORY_MANAGEMENT) ---
# Run in PowerShell as Admin:
# $pageFile = Get-WmiObject Win32_PageFileSetting
# $pageFile.Delete()
# Set-WMIInstance -Class Win32_PageFileSetting -Arguments @{Name='C:\pagefile.sys'; InitialSize=0; MaximumSize=0}
# Restart-Computer
# --- STEP 15: Uninstall a specific Windows Update by KB number ---
# Replace KB5034441 with the problematic KB number
wusa /uninstall /kb:5034441 /quiet /norestart
# --- STEP 16: View BugCheck parameters from last crash (PowerShell) ---
Get-EventLog -LogName System -Source 'Microsoft-Windows-WER-SystemErrorReporting' -Newest 5 | Select-Object TimeGenerated, Message
# ============================================================
# After completing diagnostics, restart and monitor for BSODs.
# Use WhoCrashed (free tool) for a plain-English crash analysis.
# ============================================================Error Medic Editorial
The Error Medic Editorial team consists of senior DevOps engineers, SREs, and Windows system administrators with 10+ years of experience diagnosing kernel crashes, memory faults, and system-level failures across enterprise and consumer Windows environments. Our guides are built from real incident postmortems, Microsoft documentation, and hands-on lab testing — not recycled forum posts.
Sources
- https://learn.microsoft.com/en-us/windows-hardware/drivers/debugger/bug-check-code-reference2
- https://support.microsoft.com/en-us/windows/windows-stop-errors-troubleshooting-windows-stop-errors-a15a0255-9b43-4b7b-a5e3-2f6b2958e9e9
- https://learn.microsoft.com/en-us/windows-hardware/drivers/debugger/using-windbg-to-analyze-a-crash-dump
- https://learn.microsoft.com/en-us/windows/client-management/windows-version-search
- https://stackoverflow.com/questions/10785819/how-to-read-windows-minidump-files-programmatically
- https://www.memtest86.com/technical.htm