次の方法で共有


f、fp (メモリのフィル)

f コマンドと fp コマンドは、指定されたメモリ範囲を繰り返しパターンで埋めます。

これらのコマンドを ~F (スレッドのフリーズ) コマンドと混同しないでください。

f Range Pattern 
fp [MemoryType] PhysicalRange Pattern

パラメーター

Range
入力する仮想メモリ内の範囲を指定します。 構文の詳細については、「 アドレスとアドレス範囲の構文」を参照してください。

PhysicalRange
(カーネル モードのみ)入力する物理メモリ内の範囲を指定します。 PhysicalRange の構文は、シンボル名が許可されない点を除き、仮想メモリ範囲の構文と同じです。

MemoryType
(カーネル モードのみ) 物理メモリの種類を指定します。次のいずれかになります。

[c]
キャッシュされたメモリ。

[uc]
キャッシュされていないメモリ。

[wc]
書き込み結合メモリ。

Pattern
メモリを埋める 1 つ以上のバイト値を指定します。

Environment

モード

f: ユーザー モード、カーネル モード fp: カーネル モードのみ

Targets

ライブ、クラッシュ ダンプ

プラットフォーム

すべて

追加情報

メモリ操作の概要とその他のメモリ関連のコマンドの説明については、「メモリの読み取りと書き込み」を参照してください。

解説

このコマンドは、指定されたパターンで、範囲 で指定されたメモリ領域を塗りつぶし、必要な回数繰り返します。

パターン パラメーターは、一連のバイトとして入力する必要があります。 これらは、数値または ASCII 文字として入力できます。

数値は現在の基数 (16、10、または 8) の数値として解釈されます。 デフォルトの基数を変更するには、n (Set Number Base)コマンドを使用する。 既定の基数は、 0x プレフィックス (16 進数)、 0n プレフィックス (10 進数)、 0t プレフィックス (8 進数)、または 0y プレフィックス (2 進数) を指定することで上書きできます。

C++ 式の使用時は既定の基数の動作が異なります。 詳細については、「 式の評価 」トピックを参照してください。

ASCII 文字を使用する場合は、各文字を単一の直線引用符で囲む必要があります。 C スタイルのエスケープ文字 ('\0' や '\n' など) は使用できません。

複数のバイトを指定する場合は、スペースで区切る必要があります。

パターン の値が範囲内のバイト数を超える場合、デバッガーは余分な値を無視します。

いくつか例を挙げます。 現在の基数が 16 であると仮定すると、次のコマンドはメモリ位置 0012FF40 から 0012FF5F にパターン "ABC" を入力し、複数回繰り返します。

0:000> f 0012ff40 L20 'A' 'B' 'C'

次のコマンドは、まったく同じ効果があります。

0:000> f 0012ff40 L20 41 42 43

次の例は、カーネル モードで fp コマンドを使用して物理メモリの種類 (cucwc) を使用する方法を示しています。

kd> fp [c] 0012ff40 L20 'A' 'B' 'C'
kd> fp [uc] 0012ff40 L20 'A' 'B' 'C'
kd> fp [wc] 0012ff40 L20 'A' 'B' 'C'