Error Medic

SYSTEM_SERVICE_EXCEPTION Windows 11: How to Fix the Blue Screen (BSOD) Stop Code

Fix the SYSTEM_SERVICE_EXCEPTION BSOD on Windows 11 with proven steps: update drivers, run SFC/DISM, check RAM, and disable faulty services. Full guide.

Last updated:
Last verified:
2,019 words
Key Takeaways
  • The SYSTEM_SERVICE_EXCEPTION stop code (0x0000003B) is most often triggered by a corrupted, outdated, or incompatible kernel-mode driver — graphics, network, and antivirus drivers are the top offenders.
  • Corrupt Windows system files, faulty RAM, and conflicting third-party services (especially in VMware environments) are secondary root causes that produce the same blue screen.
  • Quick fix path: boot into Safe Mode, run 'sfc /scannow' and 'DISM /Online /Cleanup-Image /RestoreHealth', update or roll back your GPU and chipset drivers, then run Windows Memory Diagnostic to rule out hardware faults.
Fix Approaches Compared
MethodWhen to UseTimeRisk
Update/Roll Back DriverRecent driver or Windows update preceded the BSOD5–15 minLow
SFC + DISM RepairSystem files corrupted; error appears randomly15–30 minLow
Windows Memory DiagnosticBSOD happens under load or with different faulting modules30–60 minNone
Clean Boot / Disable ServicesThird-party software or antivirus suspected10–20 minLow
VMware Tools ReinstallBSOD occurs only inside a VMware VM on Windows 1110–20 minLow
System Restore / ResetAll other fixes failed; system is unstable30–120 minMedium
Minidump Analysis (WinDbg)Need to pinpoint the exact faulting driver or module20–40 minNone

Understanding the SYSTEM_SERVICE_EXCEPTION Error

When Windows 11 crashes with the stop code SYSTEM_SERVICE_EXCEPTION (bug check code 0x0000003B), the operating system has detected an exception — an unhandled error — while executing a routine in kernel-mode (privileged) code. Because kernel-mode code runs with full hardware access, any unhandled exception triggers an immediate system halt (blue screen) to prevent data corruption.

The full error message on screen typically reads:

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

In some cases Windows appends the faulting file name, e.g., SYSTEM_SERVICE_EXCEPTION (nvlddmkm.sys) for an NVIDIA driver or SYSTEM_SERVICE_EXCEPTION (win32k.sys) for a Windows graphics subsystem fault.


Step 1: Collect Information Before You Fix Anything

1a. Read the Minidump File

Every BSOD writes a minidump to C:\Windows\Minidump\. Open WinDbg (free from the Microsoft Store) or use the command-line tool !analyze to identify the faulting module:

  1. Install WinDbg Preview from the Microsoft Store.
  2. Open WinDbg → File → Open Crash Dump → browse to C:\Windows\Minidump\ and open the most recent .dmp file.
  3. In the command box, type: !analyze -v and press Enter.
  4. Look for the MODULE_NAME and IMAGE_NAME lines — these tell you exactly which driver or executable caused the crash.

1b. Check Event Viewer

  1. Press Win + XEvent Viewer.
  2. Expand Windows Logs → System.
  3. Filter by Critical and Error events around the timestamp of the crash.
  4. Look for source names like BugCheck, Kernel-Power, or a specific driver name.

Step 2: Boot Into Safe Mode

Many fixes require Safe Mode because it loads only essential drivers, eliminating conflicts.

  1. Press Win + ISystem → Recovery.
  2. Under Advanced startup, click Restart now.
  3. After reboot: Troubleshoot → Advanced options → Startup Settings → Restart.
  4. Press 4 or F4 for Safe Mode, or 5/F5 for Safe Mode with Networking.

If Windows won't boot at all, interrupt startup three times (hold the power button during the Windows logo) to trigger Automatic Repair, then navigate the same menus.


Step 3: Update or Roll Back Drivers

The most common cause of SYSTEM_SERVICE_EXCEPTION is a bad driver. The top suspects are:

  • GPU drivers (nvlddmkm.sys for NVIDIA, amdkmdag.sys for AMD, igdkmd64.sys for Intel)
  • Network adapter drivers (e1d68x64.sys, rt640x64.sys)
  • Antivirus/security kernel filters (MpKsl*.sys, klif.sys)

Roll Back a Driver

  1. Press Win + XDevice Manager.
  2. Right-click the suspect device → Properties → Driver tab.
  3. Click Roll Back Driver if the option is available (grayed out means no previous version is stored).

Update a Driver

  1. In Device Manager, right-click the device → Update driver → Search automatically.
  2. For GPU drivers, always download directly from the manufacturer:
  3. Use DDU (Display Driver Uninstaller) in Safe Mode for a clean GPU driver reinstall when normal updates fail.

Step 4: Repair System Files with SFC and DISM

Corrupt Windows system files — especially win32k.sys or ntoskrnl.exe — are a frequent trigger. Run these commands in an elevated Command Prompt (right-click Start → Terminal (Admin)):

:: Step 1: Scan and repair protected system files
sfc /scannow

:: Step 2: If SFC reports corruption it cannot fix, repair the Windows image first
DISM /Online /Cleanup-Image /CheckHealth
DISM /Online /Cleanup-Image /ScanHealth
DISM /Online /Cleanup-Image /RestoreHealth

:: Step 3: Re-run SFC after DISM completes
sfc /scannow

Restart after the commands complete. SFC results are logged to C:\Windows\Logs\CBS\CBS.log.


Step 5: Test RAM with Windows Memory Diagnostic

Faulty RAM can cause random SYSTEM_SERVICE_EXCEPTION crashes that look driver-related.

  1. Press Win + R → type mdsched.exe → Enter.
  2. Choose Restart now and check for problems.
  3. After reboot, the test runs automatically (Standard mode takes ~10 minutes).
  4. For deeper testing, press F1 during the scan and switch to Extended mode.
  5. Results appear after Windows restarts, and are also logged in Event Viewer → Windows Logs → System (Source: MemoryDiagnostics-Results).

If errors are found, reseat your RAM sticks, test each stick individually, or replace faulty modules.


Step 6: Perform a Clean Boot to Isolate Third-Party Services

  1. Press Win + Rmsconfig → Enter.
  2. On the Services tab, check Hide all Microsoft services → click Disable all.
  3. On the Startup tab, click Open Task Manager and disable all startup entries.
  4. Click OK and restart.

If the BSOD stops, re-enable services in batches of 5–10, restarting after each batch, until you isolate the culprit. Common culprits include antivirus software, VPN clients, and RGB lighting controllers.


Step 7: Fix SYSTEM_SERVICE_EXCEPTION in VMware (Windows 11 Guest)

If the BSOD occurs in a VMware Workstation or ESXi virtual machine running Windows 11, the cause is almost always:

  • Outdated or missing VMware Tools — the para-virtualized drivers conflict with Windows 11's kernel.
  • Hyper-V conflict — VMware and Hyper-V cannot run simultaneously on the same host.
  • 3D acceleration settings — enabling hardware 3D acceleration with an incompatible graphics driver.

Fix for VMware:

  1. Inside the VM: VM menu → Install VMware Tools (or reinstall if already installed).
  2. Disable 3D acceleration: VM Settings → Display → uncheck Accelerate 3D graphics.
  3. On the Windows 11 host, disable Hyper-V if running VMware Workstation:
    bcdedit /set hypervisorlaunchtype off
    
    Restart the host after running this command.
  4. Ensure the VM's hardware compatibility level is set to Workstation 16.x or later for Windows 11 support.

Step 8: Update Windows 11

Microsoft regularly releases patches that fix kernel-mode driver bugs. Press Win + IWindows Update → Check for updates. Install all available updates including optional driver updates listed under Advanced options → Optional updates.


Step 9: System Restore or Reset as Last Resort

If all else fails:

System Restore:

  1. Press Win + Rrstrui.exe.
  2. Choose a restore point dated before the crashes began.

Reset Windows 11:

  1. Win + ISystem → Recovery → Reset this PC.
  2. Choose Keep my files to preserve personal data but reinstall Windows and drivers.

Frequently Asked Questions

powershell
# ============================================================
# Windows 11 SYSTEM_SERVICE_EXCEPTION Diagnostic Script
# Run in an elevated PowerShell (Run as Administrator)
# ============================================================

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

# 2. Check Windows Event Log for recent BugCheck events
Write-Host "`n--- Recent BugCheck Events (last 10) ---" -ForegroundColor Cyan
Get-WinEvent -LogName System -MaxEvents 500 -ErrorAction SilentlyContinue |
    Where-Object { $_.Id -eq 1001 -and $_.ProviderName -eq 'Microsoft-Windows-WER-SystemErrorReporting' } |
    Select-Object -First 10 TimeCreated, Message |
    Format-List

# 3. Run System File Checker
Write-Host "`n--- Running SFC (this may take 10-15 minutes) ---" -ForegroundColor Cyan
sfc /scannow

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

# 5. List all third-party kernel drivers (non-Microsoft)
Write-Host "`n--- Third-Party Kernel Drivers ---" -ForegroundColor Cyan
Get-WmiObject Win32_SystemDriver | Where-Object { $_.PathName -notmatch 'system32\\drivers' -or
    (Get-Item $_.PathName -ErrorAction SilentlyContinue | Select-Object -ExpandProperty VersionInfo).CompanyName -notmatch 'Microsoft' } |
    Select-Object Name, State, PathName | Format-Table -AutoSize

# 6. Check RAM for errors via Windows Memory Diagnostic scheduling
Write-Host "`n--- Scheduling Memory Diagnostic (runs on next reboot) ---" -ForegroundColor Cyan
$confirm = Read-Host "Schedule Windows Memory Diagnostic on next reboot? (Y/N)"
if ($confirm -eq 'Y') {
    Start-Process mdsched.exe
}

# 7. Display drivers recently updated (last 30 days) -- potential rollback candidates
Write-Host "`n--- Drivers Updated in Last 30 Days ---" -ForegroundColor Cyan
$since = (Get-Date).AddDays(-30)
Get-WmiObject Win32_PnPSignedDriver |
    Where-Object { $_.DriverDate -ne $null -and [datetime]::ParseExact($_.DriverDate.Substring(0,8),'yyyyMMdd',$null) -ge $since } |
    Select-Object DeviceName, DriverVersion, DriverDate, Manufacturer |
    Sort-Object DriverDate -Descending |
    Format-Table -AutoSize

# 8. Check for VMware environment and VMware Tools version
Write-Host "`n--- VMware Detection ---" -ForegroundColor Cyan
$vmware = Get-WmiObject Win32_ComputerSystem | Select-Object -ExpandProperty Model
if ($vmware -match 'VMware') {
    Write-Host "Running inside VMware VM: $vmware" -ForegroundColor Yellow
    $tools = Get-WmiObject Win32_Product | Where-Object { $_.Name -match 'VMware Tools' }
    if ($tools) {
        Write-Host "VMware Tools Version: $($tools.Version)" -ForegroundColor Green
    } else {
        Write-Host "VMware Tools NOT detected — install immediately!" -ForegroundColor Red
    }
} else {
    Write-Host "Not running in VMware." -ForegroundColor Green
}

Write-Host "`n--- Diagnostic Complete. Review output above and check C:\Windows\Logs\CBS\CBS.log for SFC details. ---" -ForegroundColor Cyan
E

Error Medic Editorial

The Error Medic Editorial team is composed of senior DevOps engineers, SREs, and Windows systems administrators with 10+ years of experience diagnosing kernel panics, blue screens, and OS-level failures across enterprise and consumer environments. Every troubleshooting guide is validated against real crash dumps and tested on live systems before publication.

Sources

Related Articles in Windows 11 System Service Exception

Explore More windows Guides