日本語
英語

文書番号: 885117 - 最終更新日: 2006年10月30日 - リビジョン: 4.2

起動と回復] に「カーネル メモリ ダンプ」が表示されます。 が Windows 2000 または Windows Server 2003 では、完全メモリ ダンプが実行されます。

目次

すべて展開する | すべて折りたたむ

現象

いずれかまたは複数、次のような現象が発生する可能性があります。
  • メモリ ダンプを Microsoft Windows 2000 ベースのコンピューターを表示するときに、メモリ ダンプ ファイルが壊れている、ありファイルを開くことはできません。
  • [ 起動と回復 </a0>] ダイアログ ボックスで、 デバッグ情報の書き込み のリスト設定は カーネル メモリ ダンプ ] に設定されますが、Windows 2000 ベースのコンピューターや、Microsoft Windows Server 2003 ベースのコンピューター上に、完全メモリ ダンプが実行されます。

原因

この問題は、次のすべての条件に該当する場合に発生することがあります:
  • コンピューターに 2 ギガバイト (GB) 以上では、メモリの量が向上します。

    メモ メモリ ダンプ ファイルを 4 GB 以上のメモリを増やす場合、Windows 2000 ベースのコンピューター壊れているがあります。
  • マイクロソフト サポート技術情報の記事 820361 に記載されている修正プログラムをインストールしたがか、セキュリティ修正プログラム MS04-011 に記載されている修正プログラムをインストールします。

    関連情報を参照するには、以下の「サポート技術情報」 (Microsoft Knowledge Base) をクリックしてください:
    835732  (http://support.microsoft.com/kb/835732/ ) Microsoft Windows のセキュリティ更新プログラム MS04-011: セキュリティ更新プログラム
  • レジストリの CrashDumpEnabled エントリの値は 0x1 に設定されています。
メモリが Windows 2000 または Windows Server 2003 を実行しているコンピューターを追加すると、CrashDumpEnabled レジストリ エントリの値はメモリ量の増加を反映する変更されません。 完全メモリ ダンプは Windows によって完了されるときに値"0x1"が、CrashDumpEnabled レジストリ エントリに割り当てられます。 カーネル メモリ ダンプは、Windows によって完了する場合、値 0x2 が CrashDumpEnabled レジストリ エントリに割り当てられます。 2 GB 以上に Windows を実行するコンピューターのメモリの量を大きくと、完全メモリ ダンプ設定が、カーネル メモリ ダンプの設定、CrashDumpEnabled レジストリ エントリおよび 起動と回復 ] ダイアログ ボックスで設定、 デバッグ情報の書き込み リストの両方に変更されることが予想します。

たとえば、2 GB のメモリが搭載されたコンピューターに Windows をインストールすると デバッグ情報の書き込み ] ボックスの一覧の設定 システムのプロパティ の [ 起動と回復 ] ダイアログ ボックスが [完全メモリ ダンプ します。 対応する CrashDumpEnabled レジストリ エントリが"0x1"の値に設定します。

メモリの合計が 2 GB 以上になるように Windows 実行しているコンピューターにメモリを追加する デバッグ情報の書き込み リストの設定は [カーネル メモリ ダンプ に変更されます。 ただし、CrashDumpEnabled レジストリ エントリの値"0x1"のまま表示されます。

コンピューターが予期せず停止した場合と、メモリ ダンプが発生した、 IopReadDumpRegistry() 関数は、レジストリから CrashDumpEnabled エントリの値を読み取る。 ただし、 IopReadDumpRegistry() 関数は、ハードコードの制限"0x1"のレジストリ値をオーバーライドすると、関数は、検出がサーバーに 2 GB 以上のメモリがある場合は、カーネル メモリ ダンプを実行します。 したがって、サーバーを停止、カーネル メモリ ダンプが、完全メモリ ダンプではなく実行されます。

820361 の修正プログラムまたはセキュリティ修正プログラム MS04-011 を Windows 2000 ベースのコンピューターをインストールすると、 IopReadDumpRegistry() 関数から 2 GB のメモリのハードコーディング制限が削除されます。 したがって、2 GB 以上に、コンピューターには、メモリを増やして、Windows 2000 は、コンピューターが予期せず停止した場合、カーネル メモリ ダンプではなく完全メモリ ダンプを作成を試みます。

4 GB 以上の Windows 2000 ベースのコンピューターにメモリを増加した場合は Windows 2000 は、完全メモリ ダンプを実行できませんし、メモリ ダンプ ファイルが破損しています。

メモ Windows Server 2003 には、完全メモリ ダンプは、コンピューターにインストールされているメモリの容量にかかわらず実行できます。 たとえば、 起動と回復 の設定と、CrashDumpEnabled レジストリ エントリが、カーネル メモリ ダンプや完全メモリ ダンプをそれぞれ実行に設定されます。 大規模な場合、完全メモリ ダンプに発生するコンピューターに 4 GB のメモリがある場合、システム パーティション上の十分なページファイル。 ページング ファイルには、サイズの物理メモリと 1 メガバイト (MB) をなければなりません。

CrashDumpEnabled レジストリ エントリは、次のレジストリ サブキーにあります。
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl

回避策

Windows 2000 の デバッグ情報の書き込み ] ボックスの一覧表示を修正する修正プログラム

誤ったを回避する「サポート技術情報」(Knowledge Base) 資料 837297 に記載されている修正プログラムを、Windows 2000 ベースのコンピューター上のリスト表示問題の デバッグ情報の書き込み が適用します。 この修正プログラムの適用後の設定は、 デバッグ情報の書き込み リスト内のレジストリ値を持つ同期します。 コンピューターが 2 GB 以上のメモリを CrashDumpEnabled レジストリ エントリには、値"0x1"が割り当てられます 完全メモリ ダンプ オンに デバッグ情報の書き込み ]。 CrashDumpEnabled レジストリ エントリは、値"0x1"割り当てられていない場合、 [完全メモリ ダンプ ] オプションは デバッグ情報の書き込み ] 表示されません。

この修正プログラムの詳細についてはをクリックして以下「サポート技術情報」(Microsoft Knowledge Base) 資料を参照。
837297  (http://support.microsoft.com/kb/837297/ ) 作成されたクラッシュ メモリ ダンプ ファイルが Windows 2000 の起動と回復] 設定で選択した種類の異なる

Windows Server 2003 で デバッグ情報の書き込み ] ボックスの一覧表示を修正する修正プログラム

Windows Server 2003 バージョンの 837297 の「サポート技術情報」(Knowledge Base) 資料に記載されている修正プログラムは、Windows Server 2003 Service Pack 1 に含まれる予定です。

Windows 2000 のカーネル メモリ ダンプを書き込む 4 GB のメモリを強制する Microsoft Visual Basic スクリプト

4 GB 以上のメモリ、カーネル メモリ ダンプだけを記述する、Windows 2000 ベースのコンピューターを強制的するには、次の Visual Basic スクリプトを使用できます。

マイクロソフトは提供プログラミング言語の使用方法の一例としてのみ、姿表現または暗黙に提供します。 これはに含まれますに、黙示または商品性および特定目的に対する適合性の黙示保証は一切制限はありません。 この資料ではであると見なすは、例示されているプログラミング言語を作成したりプロシージャをデバッグするためのツールと使い慣れた。 マイクロソフト サポート エンジニアに、特定のプロシージャの機能について説明する役立ちますが追加機能を提供する構築手順、特定の要件を次の例は変更されません。
########## Start of VBS script ########## 
 
On Error Resume Next
 
Const ForAppending=8
 
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objLogFile = objFSO.OpenTextFile("c:\memoryCheck.txt", ForAppending, True)
 
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
    & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
    
Set colOperatingSystems = objWMIService.ExecQuery _
    ("Select * from Win32_OperatingSystem")
    
For Each objOperatingSystem in colOperatingSystems
    OSNum="5.0.2195"
     csName=objOperatingSystem.CSName
 
    objLogFile.Write csName
    objLogFile.Writeline
                 
    objLogFile.Write objOperatingSystem.Caption & " " & objOperatingSystem.Version
    objLogFile.Writeline
    
    objMemory = objOperatingSystem.TotalVisibleMemorySize
    objLogFile.Write "Memory Size:" & objMemory& "KB"
    objLogFile.Writeline
 
    Set wshell = CreateObject("WScript.Shell")
    crashControl = Wshell.RegRead("HKLM\System\CurrentControlSet\Control\CrashControl\CrashDumpEnabled")
    objLogFile.Write "CrashDumpEnabled:" & crashControl 
    objLogFile.Writeline
 
    'verify whether os is 2000 server
    If (InStr(1,objOperatingSystem.Version,OSNUm)>1) and (objOperatingSystem.ProductType >1) Then 
                 objMemory = objOperatingSystem.TotalVisibleMemorySize
                     'verify whether menory is >4G
                      If objMemory >= 4194304 Then
                          'modify registry "CrashDumpEnabled" value to 2 and get the CSName if value is 1
                          If crashControl=1 Then
                               Const HKEY_LOCAL_MACHINE = &H80000002
                               Set oReg=GetObject("winmgmts:{impersonationLevel=impersonate}!\\" &_ 
                               strComputer & "\root\default:StdRegProv")
                               strKeyPath = "System\CurrentControlSet\Control\CrashControl"
                               strValueName = "CrashDumpEnabled"
                               dwValue = 2
                               oReg.SetDWORDValue HKEY_LOCAL_MACHINE,strKeyPath,strValueName,dwValue
                               objLogFile.Write "CrashDumpEnabled has been modified from 1 to 2"
                               objLogFile.Writeline
          Wscript.Echo "CrashDumpEnabled has been modified from 1 to 2"
                         End  If 
                       End If                                      
    End If  
Next
objLogFile.Close
 
########## End of VBS script ##########

詳細

次の表は種類に発生するクラッシュ ダンプおよびどのような デバッグ情報の書き込み 設定を [起動と回復 ] ダイアログ ボックスに表示を示しています。 これらのアイテムに CrashDumpEnabled レジストリ エントリと、コンピューターにインストールされているメモリの割り当てられている値によって異なります。

820361 の修正プログラムがインストールされている、セキュリティ更新プログラム MS04-011 のインストール更新前にまたは更新する前に 891861 がインストールされて前に、Windows 2000

レジストリ値"0x1"

元に戻す全体を表示する
メモリの量2 GB 以内2 GB から 4 GB4 GB 以上
実行の種類のダンプ 完了しましたKernel Kernel
ユーザー インターフェイスの表示 完了しましたKernelKernel

レジストリ値 0x2

元に戻す全体を表示する
メモリの量2 GB 以内2 GB から 4 GB4 GB 以上
実行の種類のダンプ KernelKernelKernel
ユーザー インターフェイスの表示 KernelKernelKernel

Windows 2000 は、修正プログラム MS04-011 のインストール後、修正プログラム 820361 をインストール後または更新プログラム 891861 後のインストールします。

レジストリ値"0x1"

元に戻す全体を表示する
メモリの量2 GB 以内2 GB から 4 GB4 GB 以上
実行の種類のダンプ 完了しました完了しました破損の完了
ユーザー インターフェイスの表示 完了しましたKernelKernel

レジストリ値 0x2

元に戻す全体を表示する
メモリの量2 GB 以内2 GB から 4 GB4 GB 以上
実行の種類のダンプ KernelKernelKernel
ユーザー インターフェイスの表示 KernelKernelKernel

Windows Server 2003 Service Pack 1 がインストールされている前に、または更新プログラム MS04-011 をインストールする前に、820361 の修正プログラムはインストール前に

レジストリ値"0x1"

元に戻す全体を表示する
メモリの量2 GB 以内2 GB から 4 GB4 GB 以上
実行の種類のダンプ 完了しました完了しました 完了しました
ユーザー インターフェイスの表示 完了しましたKernelKernel

レジストリ値 0x2

元に戻す全体を表示する
メモリの量2 GB 以内2 GB から 4 GB4 GB 以上
実行の種類のダンプ KernelKernelKernel
ユーザー インターフェイスの表示 KernelKernelKernel

Windows Server 2003 修正プログラム 820361 インストール後は、修正プログラム MS04-011 のインストール後、または Service Pack 1 がインストールされている後

レジストリ値"0x1"

元に戻す全体を表示する
メモリの量2 GB 以内2 GB から 4 GB4 GB 以上
実行の種類のダンプ 完了しました完了しました完了しました
ユーザー インターフェイスの表示 完了しましたKernelKernel

レジストリ値 0x2

元に戻す全体を表示する
メモリの量2 GB 以内2 GB から 4 GB4 GB 以上
実行の種類のダンプ KernelKernelKernel
ユーザー インターフェイスの表示 KernelKernelKernel

この資料は以下の製品について記述したものです。
  • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
  • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
  • Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Advanced Server
キーワード: 
kbmt kbtshoot kbprb KB885117 KbMtja
機械翻訳機械翻訳
重要: このサポート技術情報 (以下「KB」) は、翻訳者による翻訳の代わりに、マイクロソフト機械翻訳システムによって翻訳されたものです。マイクロソフトは、お客様に、マイクロソフトが提供している全ての KB を日本語でご利用いただけるように、翻訳者による翻訳 KB に加え機械翻訳 KB も提供しています。しかしながら、機械翻訳の品質は翻訳者による翻訳ほど十分ではありません。誤訳や、文法、言葉使い、その他、たとえば日本語を母国語としない方が日本語を話すときに間違えるようなミスを含んでいる可能性があります。マイクロソフトは、機械翻訳の品質、及び KB の内容の誤訳やお客様が KB を利用されたことによって生じた直接または間接的な問題や損害については、いかなる責任も負わないものとします。マイクロソフトは、機械翻訳システムの改善を継続的に行っています。
英語版 KB:885117  (http://support.microsoft.com/kb/885117/en-us/ )
"Microsoft Knowledge Baseに含まれている情報は、いかなる保証もない現状ベースで提供されるものです。Microsoft Corporation及びその関連会社は、市場性および特定の目的への適合性を含めて、明示的にも黙示的にも、一切の保証をいたしません。さらに、Microsoft Corporation及びその関連会社は、本文書に含まれている情報の使用及び使用結果につき、正確性、真実性等、いかなる表明・保証も行ないません。Microsoft Corporation、その関連会社及びこれらの権限ある代理人による口頭または書面による一切の情報提供またはアドバイスは、保証を意味するものではなく、かつ上記免責条項の範囲を狭めるものではありません。Microsoft Corporation、その関連会社 及びこれらの者の供給者は、直接的、間接的、偶発的、結果的損害、逸失利益、懲罰的損害、または特別損害を含む全ての損害に対して、状況のいかんを問わず一切責任を負いません。(Microsoft Corporation、その関連会社 またはこれらの者の供給者がかかる損害の発生可能性を了知している場合を含みます。) 結果的損害または偶発的損害に対する責任の免除または制限を認めていない地域においては、上記制限が適用されない場合があります。なお、本文書においては、文書の体裁上の都合により製品名の表記において商標登録表示、その他の商標表示を省略している場合がありますので、予めご了解ください。"
 

サポート技術情報の翻訳

 

製品別 サポート ページ