Error Medic

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.

Last updated:
Last verified:
2,190 words
Key Takeaways
  • 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.
Fix Approaches Compared
MethodWhen to UseTimeRisk
SFC + DISM scanCorrupted system files suspected; Windows boots at least to Safe Mode15-45 minLow
Windows Memory DiagnosticRandom BSODs, MEMORY_MANAGEMENT stop code, system instability30-60 minLow
MemTest86 (bootable)Windows Memory Diagnostic passes but BSODs continue; deep RAM validation needed2-8 hoursLow
Driver rollback / updateBSOD started after a Windows Update or new hardware/driver install10-20 minLow-Medium
Check Minidump with WinDbgNeed exact faulting driver or module name before acting20-40 minLow
System RestoreBSOD started recently; a known-good restore point exists20-40 minMedium (may revert software)
Startup Repair via WinRESystem will not boot to Windows at all15-30 minLow-Medium
Clean Windows reinstallAll other fixes fail; hardware confirmed healthy2-4 hoursHigh (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 PCPropertiesAdvanced system settingsStartup and RecoverySettings → 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 .dmp file.
  • Run !analyze -v in 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 + XEvent ViewerWindows LogsSystem. 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):

  1. Force three consecutive failed boots (hold the power button during the Windows logo) to trigger Automatic Repair.
  2. Click Advanced optionsTroubleshootAdvanced optionsStartup SettingsRestart.
  3. 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):

  1. Download MemTest86 from https://www.memtest86.com/.
  2. Flash to a USB drive using the included image writer.
  3. Boot from USB and run at least two full passes.
  4. 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 + XDevice Manager.
  • Right-click the device → PropertiesDriver tab → Roll Back Driver.

Update a driver:

  • Right-click the device → Update driverSearch 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

bash
# ============================================================
# 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.
# ============================================================
E

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

Related Articles in Microsoft Windows Stop Code

Explore More windows Guides