「完璧なものは何もない」という格言は、バグがユーザーエクスペリエンスを損なう可能性があり、それを損なうソフトウェア開発にも当てはまります。残念ながら、PCがブルースクリーンオブデス(BSOD)エラー(Blue Screen of Death (BSOD) error)でクラッシュした場合、重大なPC障害が発生しており、通常(常にではありませんが)、一部のコードのバグが原因です。
表示される最も珍しいBSODエラーの1つは、「ポインタによる参照」BSOD(reference_by_pointer)です。このBSODの原因を突き止めるのは難しいですが、通常は簡単に修正できる問題を示しています。したがって、reference_by_pointer BSODエラーのトラブルシューティングを行う場合は、このガイドが役立ちます。
Windows 10でポインターによる参照BSODエラーの原因は何ですか?(What Causes a Reference By Pointer BSOD Error in Windows 10?)
ポインタによる参照BSODエラー(reference_by_pointerまたは0x00000018エラーとも呼ばれます)は、通常、システムファイルまたはデバイスドライバの問題を示しています。
システムリソースの優先順位付けを支援するために、Windowsは、実行中の要素(開いているウィンドウなど)を、要素が他の場所で参照(または使用)される回数を識別する番号を持つ「オブジェクト」として内部的に参照します。
この値は、オブジェクトが削除されるまで減少し、実行中の他のサービスのためにシステムメモリを解放します。
reference_by_pointerメッセージが表示されると、Windowsは実行中のオブジェクトの誤った参照カウントを認識しています。これは重大なセキュリティ問題になる可能性があるため、Windowsは(Windows)BSODを停止して表示し、システムを強制的に再起動して、プロセス内のすべてのアクティブなメモリをクリアします。
ただし、ほとんどの場合、これは通常、バグのあるソフトウェアが原因で発生します。ハードウェア(Hardware)ドライバが最も一般的な原因であり、グラフィックカードやネットワークデバイスなどの他のコンポーネントがメッセージを引き起こすことがよくあります。ただし、システムファイルの破損やハードウェアの障害など、他の問題が原因である可能性もあります。
他のことを試す前に、BSODメモリダンプファイル(check your BSOD memory dump files)で詳細を確認する必要があります。ドライバーファイル(.sysファイル拡張子付き)やシステムプロセス( ntosknrl.exe(ntosknrl.exe)など)など、ポインターBSODによる参照の原因の背後にある重要な手がかりが見つかります。
考えられる原因(ドライバーの誤動作など)を特定したら、以下の手順に従って問題を解決できます。
トラブルシューティングのためにセーフモードに切り替えます(Switch to Safe Mode for Troubleshooting)
BSODに続いて、PCは強制的に再起動されます。reference_by_pointer BSOD(BSOD)ループでスタックしている場合(再起動するたびに別のBSODメッセージが発生する) 、トラブルシューティングプロセスを開始するためにセーフモードで起動する(boot into Safe Mode)必要があります。
セーフモードは、正しく機能するために必要な最も基本的なドライバーとシステムプロセスのセットでWindowsを実行し、別のBSODのリスクを冒すことなくドライバーの問題をトラブルシューティングできるようにし(Mode)ます(BSOD)。
問題を修正する他の試みを開始する前に、セーフモードを使用してBSODダンプファイルを(Mode)分析(BSOD)することもできます。
- セーフモードで起動するには、 (Mode)Windowsの起動シーケンスを少なくとも3回中断する必要があります。これを行うには、PCの電源を入れ、 Windows(Windows)ロゴが表示されるまで待ちます。PCのリセットボタンを押して(またはPCの電源ボタンを押し続けて)強制的に再起動してから、これを少なくとも2回繰り返します。
- Windowsは、自動修復(Automatic Repair)モードで起動し、起動に3回失敗した後、起動ループを解決しようとします。(resolve a boot loop)[自動修復( Automatic Repair )]メニューが表示されたら、[Advanced Options > Troubleshoot > Advanced options > Startup Settings > Restart を選択して、起動オプションにアクセスします。
- しばらくして(そしてすばやく再起動して)、キーボードの数字キーを使用して、お好みのセーフモード起動オプションを選択します。(Mode)たとえば、標準のセーフモードの場合は4、ネットワーク機能が有効になっているセーフモードの(Safe Mode)場合は5(, 5)、コマンドプロンプト端末(command prompt terminal)のみが表示されているセーフモードの場合は6を選択します。
Windowsは、選択したセーフモード(Safe Mode)オプションを使用して起動を続行します。その後、以下に概説するトラブルシューティング手順を続行できます。
システムファイルとデバイスドライバーを更新する(Update System Files and Device Drivers)
Windowsまたはデバイスドライバーのバグにより、 reference_by_pointerBSOD(BSOD)が発生する可能性があります。この問題を解決するには、WindowsUpdateシステムを使用してシステムファイルとドライバーが最新であることを確認する必要があります(Windows Update)。
- 開始するには、[スタート(Start)]メニューを右クリックし、 [設定(Settings)]を選択して[ Windowsの設定]を開きます。
- [設定]メニューで、[更新とセキュリティ(Update & Security )] > [WindowsUpdate]を選択します(Windows Update)。Windowsは更新を自動的にチェックする必要がありますが、そうでない場合は、[更新のチェック]を(Check for Updates)選択します。手動でインストールできる更新がある場合は、[更新のインストール]を(Install Updates)選択します。
- Windowsがシステムの新しい更新プログラムをダウンロードしてインストールするための時間を確保します。これが完了したら、PCを再起動して新しい更新プログラムとドライバーをロードし、プロセスを完了します。これをすばやく行うには、 [スタート(Start)]メニューを右クリックし、 [シャットダウン]または[サインアウト(Shut down or sign out )] >[再起動(Restart)]を選択します。
最近インストールしたドライバまたはシステムアップデートをロールバックする(Roll Back a Recently Installed Driver or System Update)
システムアップデートは厳格なテストプロセスを経ていますが、バグや問題が発生する可能性があります。
システムファイルまたはデバイスドライバーを最近更新した後でのみreference_by_pointerBSODエラーが表示される場合は、バグのあるファイルセットが導入されている可能性があります。(BSOD)ありがたいことに、Windowsでは、Windowsでドライバーをロールバックし、(roll back a driver on Windows)問題の原因となっている最近のWindowsUpdateをアンインストールできます。(uninstall any recent Windows updates)
デバイスドライバーをロールバックする方法(How to Roll Back a Device Driver)
- 最近インストールしたデバイスドライバをロールバックするには、[スタート(Start)]メニューを右クリックして、[デバイスマネージャ(Device Manager)]を選択します。
- [デバイスマネージャー](Device Manager )ウィンドウで、最近更新されたドライバーがインストールされているデバイスを見つけます。デバイスを右クリックして、[(Right-click)プロパティ(Properties)]を選択します。
- [プロパティ(Properties)]ウィンドウの[ドライバー]タブで、[ドライバーのロールバック(Driver)]オプション(Roll Back Driver )を選択します。これにより、最近インストールされたドライバーが削除され、以前に使用されたバージョンが復元されます。[ドライバーのロールバック](Roll Back Driver)を選択した後、画面上の追加の指示に従ってプロセスを完了します。
- ドライバをロールバックしたら、PCを再起動して、[スタート(Start)]メニューを右クリックし、[シャットダウン]または[サインアウト(Shut down or sign out )] >[再起動(Restart)]を選択してプロセスを完了します。
システムアップデートを削除する方法(How to Remove a System Update)
- 最新のシステムアップデートをアンインストールするには、[スタート(Start)]メニューを右クリックし、[設定(Settings)]を選択します。
- [設定](Settings )メニューで、[更新とセキュリティ(Update & Security )] > [更新履歴の表示](View update history ) > [更新のアンインストール(Uninstall updates)]を選択します。
- 古いスタイルのコントロールパネル(Control Panel)メニューが表示されます。更新を日付で並べ替えるには、[インストール(Installed On)先]カテゴリのタイトルを選択して並べ替えます。削除する更新を見つけて、[アンインストール](Uninstall)を選択して削除します。[アンインストール(Uninstall)]オプションが使用できない場合、システムアップデートは必須であると見なされ、削除できません。
- 画面(Follow)上の追加の指示に従って、更新を削除します。アンインストールしたら、[スタート(Start)]メニューを右クリックし、[シャットダウン]または[サインアウト(Shut down or sign out )] >[再起動(Restart)]を選択してPCを再起動します。
システムファイルにエラーがないか確認してください(Check Your System Files for Errors)
Windowsファイルは絶えず変更されており、設定とファイルは定期的に更新されます。残念ながら、Windowsのインストールは、(Windows)マルウェアの感染(malware infections)からハードドライブセクターの障害まで、より壊滅的な変化に直面することがあります。
Windowsのインストールが何らかの理由で失敗し、このBSODエラーが発生していると思われる場合は、 SFCおよびDISMツールを使用してエラーを確認できます。
- これらのツールを実行するには、新しいWindowsPowerShellウィンドウを開く必要があります。これを行うには、[スタート(Start)]メニューを右クリック(Right-click)し、 [ Windows PowerShell(管理者)(Windows PowerShell (Admin)) ]を選択します。
- PowerShellウィンドウで、dism.exe /online /cleanup-image /restorehealthEnterを選択します。これにより、 Windows(Windows)システムイメージ(インストールファイルのリセットに使用)の整合性の問題がチェックされます。欠落または破損したファイルがある場合、DISMがそれらを置き換えます。
- DISMツールが完了したら、sfc sfc /scannowシステムファイルチェッカー(System File Checker)ツールを使用してWindowsインストールのエラーをスキャンします。それらを検出すると、DISMで生成された新しいシステムイメージファイルを使用してそれらを置き換えようとし、インストールが正しく機能していることを確認します。
SFCツールが(SFC)Windowsインストールファイルのスキャンを終了したら、PCを再起動します。ファイルを更新または修復できない場合は、新規インストールでWindows 10をリセットするなど、より抜本的なオプションを検討する必要があります。(resetting Windows 10)
ハードウェアをテストします(必要に応じて交換します)(Test Your Hardware (and Replace If Required))
破損(Corrupt)したファイルやバグのあるファイルは、システムを不安定にするだけではありません。たとえば、ハードウェアが過熱している、過負荷である、または単なる障害である場合、ポインタBSODによる参照などのシステムエラーは、完全なPC障害の前の次のステップです。
熱が問題になる場合は、PCをクリーン(clean out your PC)アップし、問題を解決するために冷却をアップグレードすることを検討する必要があります。次のステップは、CPUストレステスト(CPU stress tests)とメモリテストツールを使用してハードウェアを徹底的にテスト(memory testing tools)し、ハードドライブにエラーがないかどうか(checking your hard drive for errors)を確認することです。
ハードウェアに問題がある場合、唯一の答えはハードウェアを交換することです。個々のコンポーネント(マザーボードやCPUなど)を交換することはできますが、PCが古すぎて修復できない場合は、完全なアップグレードを検討する必要があります。代わりに、PCを完全に新しいビルド済みPCに交換するか、新しいPCをビルドします。(building your new PC)。
WindowsでのBSODエラーからの回復(Recovering from BSOD Errors on Windows)
ポインタによる参照BSODエラーは通常、心配する必要はありませんが、定期的なシステムメンテナンスが行われていないと、PCに重大な問題がある可能性があります。PCがクラッシュしたときにファイルが失われないように、重要なファイルは他の場所にバックアップしておいてください(keep your important files backed up elsewhere)。また(Make)、システムの復元が有効になっている(have system restore enabled)ことを確認してください。
上記の手順を使用して問題を解決できない場合は、より抜本的なオプションを検討する必要があります。ハードウェアに障害がある場合は、PCをアップグレードする(consider upgrading your PC)か、完全に交換することを検討する必要があります。それ以外の場合は、安定性を復元するためにWindowsをワイプしてリセット(wipe and reset Windows)する必要がありますが、後でバックアップからファイルを復元する必要があります。(restore your files)
How to Fix a Reference By Pointer BSOD on Windows
The adage that “nothing is perfect” is certainly true for software dеveloрment, where bugs can and will derail the user experience. Unfortunately, if your PC crashes with a Blue Screen of Death (BSOD) error, a serious PC fault is occurring, and it’s usually (although not always) caused by bugs in some code.
One of the most unusual BSOD errors to appear is the “reference by pointer” BSOD (reference_by_pointer). Trying to track down the cause of this BSOD is tricky, but it usually points to problems that you can easily fix. So, if you’re trying to troubleshoot a reference_by_pointer BSOD error, this guide should help you.
What Causes a Reference By Pointer BSOD Error in Windows 10?
A reference by pointer BSOD error (also known as a reference_by_pointer or 0x00000018 error) usually points to an issue with your system files or device drivers.
To help prioritize system resources, Windows internally refers to running elements (such as an open window) as “objects” with numbers that identify how many times the elements are referenced (or used) elsewhere.
This value decreases until the object is removed, freeing up your system memory for other running services.
When a reference_by_pointer message appears, Windows is seeing an incorrect reference count for a running object. As this could be a serious security issue, Windows will stop and display a BSOD, forcing your system to restart and clearing all active memory in the process.
In almost every case, however, this is usually caused by a buggy piece of software. Hardware drivers are the most common cause, with graphics cards and other components like network devices often causing the message. However, it can also be caused by other issues, such as corrupt system files or even failing hardware.
Before you try anything else, you should check your BSOD memory dump files for more information. You will find vital clues behind the cause of a reference by pointer BSOD, such as a driver file (with a .sys file extension) or a system process (such as ntosknrl.exe).
Once you’ve located a possible cause (such as a malfunctioning driver), you can follow the steps below to resolve the issue.
Switch to Safe Mode for Troubleshooting
Following a BSOD, your PC is forced to reboot. If stuck in a reference_by_pointer BSOD loop (with each reboot causing another BSOD message), you’ll need to boot into Safe Mode to begin the troubleshooting process.
Safe Mode runs Windows with the most basic set of drivers and system processes required to function properly, allowing you to troubleshoot driver issues without risking another BSOD.
You can also use Safe Mode to analyze your BSOD dump files before you begin any other attempts to fix the problem.
- To boot into Safe Mode, you’ll need to interrupt the Windows boot-up sequence at least three times. To do this, power up your PC and wait until the Windows logo appears. Press your PC’s reset button (or press and hold your PC’s power button) to force a reboot, then repeat this at least two more times.
- Windows will boot into Automatic Repair mode to try and resolve a boot loop after three failed attempts to boot up. Once you reach the Automatic Repair menu, select Advanced Options > Troubleshoot > Advanced options > Startup Settings > Restart to access your boot-up options.
- After a few moments (and a quick reboot), select your preferred Safe Mode boot-up option using your keyboard number keys. For example, select 4 for standard Safe Mode, 5 for Safe Mode with networking features enabled, or 6 for Safe Mode with only a command prompt terminal visible.
Windows will proceed to boot up using your chosen Safe Mode option, where you can then continue with the troubleshooting steps outlined below.
Update System Files and Device Drivers
A bug in Windows or a device driver can cause a reference_by_pointer BSOD. To overcome this issue, you’ll need to make sure your system files and drivers are up-to-date using the Windows Update system.
- To begin, right-click the Start menu and select Settings to open Windows Settings.
- In the Settings menu, select Update & Security > Windows Update. Windows should check for updates automatically but, if it doesn’t, select Check for Updates. Select Install Updates if any updates are available for you to install manually.
- Allow time for Windows to download and install the new updates for your system. Once this is complete, restart your PC to load the new updates and drivers and complete the process. You can quickly do this by right-clicking the Start menu and selecting Shut down or sign out > Restart.
Roll Back a Recently Installed Driver or System Update
While system updates undergo a rigorous testing process, bugs and issues can still occur.
If you only see a reference_by_pointer BSOD error after you’ve recently updated your system files or device drivers, you may have introduced a bugged set of files. Thankfully, Windows allows you to roll back a driver on Windows and uninstall any recent Windows updates that are causing issues.
How to Roll Back a Device Driver
- To roll back a recently installed device driver, right-click the Start menu and select Device Manager.
- In the Device Manager window, locate the device with the recently updated drivers. Right-click the device and select Properties.
- In the Driver tab of the Properties window, select the Roll Back Driver option. This will remove the recently installed driver and restore the previously used version. After selecting Roll Back Driver, follow any additional on-screen instructions to complete the process.
- Once you’ve rolled back your driver, restart your PC to complete the process by right-clicking the Start menu and selecting Shut down or sign out > Restart.
How to Remove a System Update
- To uninstall a recent system update, right-click the Start menu and select Settings.
- In the Settings menu, select Update & Security > View update history > Uninstall updates.
- An old-style Control Panel menu will appear. To sort updates by date, select the Installed On category title to sort them. Locate the update you wish to remove, then select Uninstall to remove it. If the Uninstall option isn’t available, the system update is considered essential and can’t be removed.
- Follow any additional on-screen instructions to remove the update. Once it’s uninstalled, restart your PC by right-clicking the Start menu and selecting Shut down or sign out > Restart.
Check Your System Files for Errors
Windows files are constantly changing, with settings and files updated regularly. Unfortunately, your Windows installation will face more catastrophic changes from time to time, from malware infections to hard drive sector failures.
If you think that your Windows installation is failing somehow and causing this BSOD error, you can check it for errors using the SFC and DISM tools.
- To run these tools, you’ll need to open a new Windows PowerShell window. Right-click the Start menu and select Windows PowerShell (Admin) to do this.
- In the PowerShell window, type dism.exe /online /cleanup-image /restorehealth and select Enter on your keyboard. This will check your Windows system image (used to reset your installation files) for integrity issues. If there are missing or corrupted files, DISM will replace them.
- Once the DISM tool is complete, type sfc /scannow to use the System File Checker tool to scan your Windows installation for errors. If it detects them, it will attempt to replace them using the fresh DISM-generated system image files, ensuring your installation is working properly.
Restart your PC once the SFC tool finishes a scan of your Windows installation files. If it can’t update or repair your files, you may need to look at more drastic options, such as resetting Windows 10 with a fresh installation.
Test Your Hardware (and Replace If Required)
Corrupt or buggy files don’t only cause system instability. For example, if your hardware is overheating, overworked, or just plain failing, system errors like a reference by pointer BSOD are the next step before a full PC failure.
If heat is an issue, you’ll need to clean out your PC and consider upgrading your cooling to help resolve the issue. Your next step is to test your hardware thoroughly, using CPU stress tests and memory testing tools, as well as checking your hard drive for errors.
If your hardware is the problem, your only answer is to replace it. You can replace individual components (such as your motherboard or CPU), but if the PC is too old to repair, you may need to consider a complete upgrade, replacing your PC entirely with a fresh pre-built PC or building your new PC instead.
Recovering from BSOD Errors on Windows
A reference by pointer BSOD error isn’t usually something to worry about, but without regular system maintenance in place, it could point to a serious problem with your PC. Make sure to keep your important files backed up elsewhere so you don’t lose your files when your PC crashes and ensure you have system restore enabled.
If you can’t fix the problem using the steps above, you might need to consider more drastic options. If your hardware is faulty, you’ll need to consider upgrading your PC or replacing it entirely. Otherwise, it might be time to wipe and reset Windows to restore stability, although you’ll need to restore your files from a backup afterwards.